Preruseni v PIC

Hynek Sladky econf@centrum.cz
Pondělí Říjen 10 16:07:43 CEST 2005


Pokud je potreba v presny okamzik mit informaci, ze uplynul dany cas, 
tak bych pouzil CCP1 nastaveny na rezim 1011 (smaze TMR1 a nastavi 
CCP1IF -> preruseni zpracuju).

Pokud nepotrebuju presny okamzik, tak si klidne budu pocitat celkovy cas 
  (treba po 1us nebo po 65.636ms) a z neho vim, kolikrat 0.1s uz uplynulo...

Hynek Sladky


Sula Milos wrote:
> 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
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list@list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
> 
> 



Další informace o konferenci Hw-list