^ Ovo je samo za selekt linije od pojedinacnih digita, isto tu treba dodati i postavljanje pojedinacnih segmenata dp, a, b, c ...
Pored toga vam treba tablica za dekodiranje karaktera, u mom primeru ima uradjeno sa switch/case + macro za vecinu karaktera (lako se dodaju ostali koji fale) i to sve da bude u interapt rutini koja kopira sadrzaj jednog 3-clanog niza/array (ili 4,5 koliko cifara ima) na displej prema switch/case pravilima. U main() se taj niz/array popunjava sa potrebnim vrednostima.
Ako se napisu macro-i sa low-level funcijama onda je tako kompajlirana ISR rutina izuzetno brza, zauzima malo vise programske memorije ali radi vrlo brzo, takav ISR vrlo malo zauzima procesorskog vremena. Posto smo to osvezavanje "resili" i ne zauzima bitno vremena, slobodno u isti ISR moze da se doda jos 4,8,16 komada (8/16/32/64bit po potrebi) software tajmera koji mogu da se koriste u programu za razne potrebe. Baza 1ms (1kHz), sve se lepo slozi ...
Pored toga vam treba tablica za dekodiranje karaktera, u mom primeru ima uradjeno sa switch/case + macro za vecinu karaktera (lako se dodaju ostali koji fale) i to sve da bude u interapt rutini koja kopira sadrzaj jednog 3-clanog niza/array (ili 4,5 koliko cifara ima) na displej prema switch/case pravilima. U main() se taj niz/array popunjava sa potrebnim vrednostima.
Ako se napisu macro-i sa low-level funcijama onda je tako kompajlirana ISR rutina izuzetno brza, zauzima malo vise programske memorije ali radi vrlo brzo, takav ISR vrlo malo zauzima procesorskog vremena. Posto smo to osvezavanje "resili" i ne zauzima bitno vremena, slobodno u isti ISR moze da se doda jos 4,8,16 komada (8/16/32/64bit po potrebi) software tajmera koji mogu da se koriste u programu za razne potrebe. Baza 1ms (1kHz), sve se lepo slozi ...