Stranica 1 od 1

Brojanje na dole na 4x7-segmentnom displeju

PostPoslato: Pet Sep 22, 2006 2:50 pm
od misha
:?:
Hardver: 16F84, optokaplerisani ulaz za brojac-sa enkodera, 4 7-segmentne cifre, optokaplerisani ulaz sa induktivnim senzorom za smer brojanja
Napravio sam brojac gore-dole sa 4 cifre.
Na RA4 setujem smer brojanja, RA0-RA3 su za multipleksiranje cifara, RB1-RB7 su za segmente...
Sve radi sto se tice brojanja na gore, izbora smera, ali ne mogu da kontrolishem brojanje na dole. Odnosno softver mi je problem.
Imam Lsd i Msd, odn. 2 po dva nibla za 4 cifre.
Molim za neki primer ili ideju. Prebacivanje sa 0 na 9 mi pravi problem.
Da li ima negde na netu nesto slicno, da ne lutam. Ili mozda mi neko moze dati savet?

PostPoslato: Ned Sep 24, 2006 8:53 pm
od npejcic
Hm, dva bajta sa po dva nibla u kojima cuvas cetiri cifre su pretpostavljam iz razloga optimizacije koda?
Ako imas jos malo prostora preporucio bih ti da stvar organizujes na nacin koji ce ti (bar po meni) biti logicniji. Kreiras look-up tabelu za svaku cifru displeja i zatim sva brojanja radis upotrebom dvobajtnih promenljivih kao sto je covek navikao 0, 1, 2, ..... 65535, odnosno kod tebe 9999. Unazad samo oduzimaj 9999, 9998, 9997....0. itd. U rutini za prikaz na displej, potrebno je da dekadni broj rasclanis na hiljade, stotine, desetice i jedinice, i da iz look-up tabele jednostavno pozivas cifre od 0...9. Eto to je ukratko. Mislim da ce ti ovako biti zgodnije....?!