Kā ielādēt konstantu vērtību TMR1

S

scdoro

Guest
Hi,
Es vēlētos Timer1 (16bit) darboties kā letes PIC un wld, piemēram, to, lai sāktu skaitīšanu 50000-65536.Vai es varu zināt, kā es varu ielādēt šo vērtību, lai cīnītos, lai saņemtu 10ms pārtraukt, ja pārpildes, izmantojot montāžas valodā ..
paldies

 
Hi!

Just izmantot šos montāžas instrukcijas:

MOVLW C3h; augstu baits 50000 decimālo (C350h)
MOVWF TMR1H
MOVLW 50H, zemu baits 50000 decimālo
MOVWF TMR1L

Tā kā tas skaits 65535-50000 = 15535 stadijās 4MHZ galveno pulksteni un prescaler iestatīts uz 1, tas nav gatavojas sniegt jums 10ms, bet 15,535 ms, ja vien jūs izmantojat 6.2MHz xtal.
Tā vietā, slodze TMR1 ar 55.535 (D8EFh) un TMR1 tiks pārplūdes pēc 10000 stepsor skaitu.

Atcerieties arī, jums ir dažas pieskaitāmās norādījumus pēc pārtraukt gadījumā, tāpēc varbūt jums samazināt vērtību ielādes TMR1L.

 

Welcome to EDABoard.com

Sponsor

Back
Top