4X7-segment LED

Nu har jeg endelig fået min tæller til at virke !

Nu er der blot af og til skønhedsfejl i form af svagt lys i nogle segmenter, som burde være slukket.

F.eks. er der ved et vedvarende tryk på NULSTILLINGs-knappen af og til svagt lys i g-segmentet (det miderste) - ikke i et fast mønster, men blot "af og til".

Er det det fænomen, som nogen af jer kalder "skygger" ?

Kan der siges noget generelt om, hvordan sådan noget fjernes.

Mvh KS

Reply to
KS
Loading thread data ...

Skygger kommer af at driveren ikke kan følge med MPU'en, dvs. cifret før bliver vist svagt.

Sørger for at holde en pause med alle cifre slukket, hver gang der skiftes til næste ciffer. Længden af pausen bestemmes af hvor hurtig driveren er om at slukke og hvor meget skygge der tillades.

Reply to
HKJ

----- Original Message ----- From: "HKJ"

om

Jeg bruger PORTA. som sink til de 4 cifre og PORTA.5 som en input.

Når jeg vil slukke display bruger jeg:

clrf PORTA

Er det tilladt og/eller har det indflydelse, når PORTA.5 er en inputport ?

Mvh KS

Reply to
KS

Tillykke...

Nedblænder du tallet, inden at du skifter til næste segment? Hvis ikke, så vil der opstå "efterslæb".

Proceduren kan gøres således: ... ... vælg næste display udskriv resultat direkte vent blænd ned ... ...

Sikre sig, at et tryk på reset-knappen /kun/ aktiveres, hvis knappen nedtrykkes OG der er behov for reset. Dvs. at rydde op, gør hvad der skal gøres og herefter glemme alt om et aktivt resetben, indtil at du atter trykker på knappen. Den giver kun et lille (meget utydeligt) blink i displayet som ikke vil ses med det menneskelige øje.

Tilfældigheden kan opstå pga. et brud på din multiplexing, hvor du ikke får lukket ordenlig ned for alle dine portben.

Hmm... godt spørgsmål, generelt så skal man jo ikke forsøge at cleare ens inputben. Ellers er du jo kun ganske få instruktioner fra, at kunne gøre det "ordenligt", f.eks. ved at AND'e: med 10000b til din PORTA.

Hilsen Lars

Reply to
Lars T. Thomsen

"Lars T. Thomsen" skrev i en meddelelse news:41f43b01$0$48328$ snipped-for-privacy@news.sunsite.dk...

Ja, stort set - hvis "blænd ned" = clrf PORTA

får

Nu er det ikke MCLR (ben 4) jeg mener, men en "hjemmelavet" reset, som blot nulstiller de variable, som vises i displayet, og det som undrer mig er at netop g-segmentet lyser - det bruges jo slet ikke i et nul ! Men det er måske bedre at anvende MCLR - det ville da i hverfald spare noget kode og noget omdefinering af nogle porte undervejs !

det

Det vil jeg da bare ændre for en sikkerheds skyld.

Men iøvrig er programmet ændret totalt i forhold til den tidligere kode, idet der var rod i hvilke banks jeg kom tilbage til efter interruptet, men det er rettet nu.

Jeg vil også ændre således at mine indkommende pulser til tælling kommer på RB0 og interrupter her - der er noget syncroniseringsrod med clocken, hvis de kommer ind via TMR0. TMR0 skal jeg også beuge når RPM skal implementeres.

Mvh KS

Reply to
KS

Jeg har ikke adgang til de binære nyhedsgrupper, så dette kodespecifikke spørgsmål kan jeg ikke svare på....

Hehe. Jeg mente nu ikke MCLR :-) Problemet er bare, at du ikke skal blive véd med, at køre din reset, så lad hellere hovedløkken drøne derudaf, så displayet kan opdateres. Hvis reset er nedtrykket, så udfør dét reset-routinen skal. Det tager jo blot et kort øjeblik og skal kún gøres: Eén- og den eneste gang. Herefter skal der blot ses bort fra, at brugeren ikke når, at slippe fingeren fra kontakten i tide. Først når knappen er sluppet, så kan man atter polle på, om brugeren atter nedtrykker reset. Derved undgår du dette problem ved vedvarende tryk på reset. Lyder underligt mht. g-segmentet... Hvis den kan udskrive nuller (på normal vis), så kunne det måske være, at du ikke får indlæst de rigtige registre, når du tager fat på konverteringen af 7-segmenterne under reset?

Hilsen Lars

Reply to
Lars T. Thomsen

"Lars T. Thomsen" skrev i en meddelelse news:41f4543f$0$48318$ snipped-for-privacy@news.sunsite.dk...

lad

underligt

fat

På den anden side SKER der vel ikke noget ved at bruge MCLR ? - bortset fra at displayet er slukket i den tid brugeren trykker på knappen.

Mvh KS

Reply to
KS

Jeps, det er da en brugbar løsning. Sæt evt. en diode (f.eks. 1N4148) modsat strømretningen over din pull-up modstand og aflad kondensatoren med reset kontakten via. en 100 ohms seriemodstand. Dét vil din uP (på længere sigt) være dig evig taknemmelig for!

Hilsen Lars

Reply to
Lars T. Thomsen

"Lars T. Thomsen" skrev i en meddelelse news:41f4da26$0$48322$ snipped-for-privacy@news.sunsite.dk...

modsat

Hvilken kondensator ?

Mvh KS

Reply to
KS

reset

Har du ikke en kondensator mellem /MCLR og til stel, der tager sig af POR (Power On Reset)? Ideen er, at /MCLR holder PIC'en nulstillet i et stykke tid, indtil at man er nogenlunde sikker på, at PIC'en får en stabil strømforsyning.

Hilsen Lars

Reply to
Lars T. Thomsen

"Lars T. Thomsen" skrev i en meddelelse news:41f5054b$0$48326$ snipped-for-privacy@news.sunsite.dk...

OK - svarende til figure 8-9 side 44 i dokumentationen !

Det prøver jeg lige også, men er der en forklaring på, hvorfor displayet slukker ved en frekvens 150-200 Hz ?

Mvh KS

Reply to
KS

POR

man

Fyyyh! - Læser du ikke dokumentationen ordenligt igennem!? ;-)

Hvad gjorde du før med din /MCLR?

Hilsen Lars

Reply to
Lars T. Thomsen

"Lars T. Thomsen" skrev i en meddelelse news:41f534d4$0$48323$ snipped-for-privacy@news.sunsite.dk...

Jow da ... meeeen jeg nøjedes med at have en R10K og så en pushbutton til stel - men jeg sætter resten på også .... jæ ska' nok,

meeeen det forklarer vel ikke det med det slukkede display nede omkring 100-200 Hz

Mvh KS

Reply to
KS

;-)

Nææh, dét tror jeg bestemt ikke! - Kan det mon være et genereret overflow, der ikke kan udskrives i 7-segmenter (rammer udenfor i tabelopslaget)?

Hilsen Lars

Reply to
Lars T. Thomsen

"Lars T. Thomsen" skrev i en meddelelse news:41f56fc9$0$48316$ snipped-for-privacy@news.sunsite.dk...

Det er der taget højde for ved at jeg har AND'ed "00001111" på W lige før opslaget, og der er netop 16 return-værdier.

Mvh KS

Reply to
KS

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.