Vizitator yuliano_02 Postat Mai 11, 2009 Partajează Postat Mai 11, 2009 Quartzul 3.072Mhz corespunde frecventei de 50Hz din cate am citit pe internet. As dori sa ma ajutati sa calculez cat ai corespunde o secunda. ( Raportat la exemplul pentru Quartz de 3.6864Mhz ce corespunde frecventei de 60Hz movlw b'10000110' ;setare prag declan?are timer la 240Hz. 7200Hz in = ;ceas intern divisor cu 128 bsf STATUS,RP0 ;selectare Page 1 movwf OPTION_REG bcf STATUS,RP0 ;selectare Page 0 clrwdt movlw .226 ;ini?ializare temporizator TMR0 -----> Aici nu inteleg de ce trebuie 226????? movwf TMR0 bsf PORTA,BEEP ;Semnal acustic pentru o secund? movlw .240 ;o secund? temporizare la pornire ----->Aici nu inteleg de ce trebuie 240????? movwf Timer Sau aici mai jos de ce s-a folosit 226?si DIVIZAREA cu 30? setare divisor cu 30 movlw .226 movwf TMR0 return Link spre comentariu
sofian Postat Mai 11, 2009 Partajează Postat Mai 11, 2009 3.6864Mhz se imparte la 4 si se afla clk intern al PIC-ului (=921600Hz) clk-ul asta intra in timer se divide cu 128 cind setezi OPTION deci 921600/128=7200Hz deci timerul incrementeaza cu 7200Hz semnalizarea (intreruperea) apare cind timerul are 256(0) deci 256-226=30 7200Hz/30=240Hz, deci apar intreruperi de 240/secunda Link spre comentariu
Vizitator yuliano_02 Postat Mai 13, 2009 Partajează Postat Mai 13, 2009 multumesc mult de raspuns ai explicat foarte bine Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum