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