Napisao sam kod za 7segmentne displaye pa me zanima koliko ms mora da bude timer za interrupte?
Ako sam dobro shvatio timer treba da bude 5ms da se pokrece jer imamo tri cifre znaci za sve tri cifre potrebno je 3x5ms=15ms kad to podjelimo sa jednom sekundom dobijam da je vrijeme osvjezavanja 66,667Hz pa ako je to tako onda je to dovoljno jer frekvencija treba da bude veca od 50Hz.
Za timer koji radi interrupt svakih 5ms sam stavio prescaler na 1 posto mi je tako blize brojka interruptu 65536 i on iznosi sa 12MHz kristalom i preskalerom:
T = 1 / 12MHz = 8,333e-8s
N = 0,005s(5ms) / T = 60000
P = 1
n = N / P = 60000
Znaci $Timer1=&hea60
Jeli bolje da se koristi preskaler na 1 ili na npr da ostane 256? Ja sam gledao da bude cim blize interrupt brojki do koje broji a to je 65536.
Sad dali je tako ok?
Ako sam dobro shvatio timer treba da bude 5ms da se pokrece jer imamo tri cifre znaci za sve tri cifre potrebno je 3x5ms=15ms kad to podjelimo sa jednom sekundom dobijam da je vrijeme osvjezavanja 66,667Hz pa ako je to tako onda je to dovoljno jer frekvencija treba da bude veca od 50Hz.
Za timer koji radi interrupt svakih 5ms sam stavio prescaler na 1 posto mi je tako blize brojka interruptu 65536 i on iznosi sa 12MHz kristalom i preskalerom:
T = 1 / 12MHz = 8,333e-8s
N = 0,005s(5ms) / T = 60000
P = 1
n = N / P = 60000
Znaci $Timer1=&hea60
Jeli bolje da se koristi preskaler na 1 ili na npr da ostane 256? Ja sam gledao da bude cim blize interrupt brojki do koje broji a to je 65536.
Sad dali je tako ok?
SAMO-BANOVAN OD 01.11.2024