Preruseni v PIC

Sula Milos milos.sula@musumperk.cz
Pondělí Říjen 10 14:42:42 CEST 2005


Potrebuji generovat u PIC16f628 kvuli internimu udrzovani casu preruseni
kazdych 0.1s. Muzete mi poradit jestli to je ten spravny postup ?


16bit Timer1 - 65536 kroku
preddelicka - 4
oscilator 4MHz(/4) ( 1us/instrukci ) 
Timer1 - pri deleni 4 to je 4us/1krok
jelikoz potrebuju rychlost preruseni 1x za 100 000 us musim prednastavit
25 000 kroku pred vyprsenim v Timer1


preruseni od RS232
-zpracuju data
-vratim se z preruseni

preruseni od Timer1
-prednastavim Timer1 na 0.1s tj.na 65536 - 25 000
-udelam co chci
-vratim se z preruseni

inicializace
-prednastavim Timer1 na 0.1s tj. 65536 - 25 000
-povolim preruseni od Timer1 a RS232
smycka
-delam si co chci dokola



A ted druha otazka:
Jak zajistit aby to bylo presne i po dobu komunikace s RS232 ? Kdyz
nastane preruseni od Timer1 a to preruseni bude preruseno prerusenim od
RS232 tak se mi prednastavi Timer1 o neco pozdeji ( po zpracovani
obsluzne rutiny ).Sice muzu zakazat preruseni od RS232 po dobu nez
prednastavim casovac, ale pak mi zase muze "utyct" preruseni od rs232
nebo se pletu ?

Milos



Další informace o konferenci Hw-list