Strategie rizeni vice casove kritickych operaci s jednim timerem v MCU?
Michal HW
michalgregor@centrum.cz
Pondělí Srpen 10 15:25:02 CEST 2009
Vzhledem k soucasnym cenam se nekdy vyplati druhy procesor.
Co je to presne? Kolik taktu procesoru si muze dovolit odchylku? Podle odchylky bych spocital krystal. Da se to udelat v preruseni - program zhruba sezere 10 - 20 cyklu bezneho procesoru, vynasobit 16 vyvody a mame 160 - 320cyklu. Je to hodne nebo malo?
Shrnu:
1) 1x Casovac 10mS
2) 16x casovac 10mS/31 = 320uS
Takze potrebujete preruseni co 320uS a rozdelit to na jednotlive ulohy, Mam nejak podobne udelan SW UART:
switch(Uloha_Casovani)
case 0:
Inicialize casovace 1-16
case 31:
Uloha_Casovani = 0;
default:
++ Uloha_Casovani;
Odecti casovac n
Casovac n = 0?
Spust impuls vyvodu n
Michal Gregor
----- Original Message -----
From: k.novo
To: hw-list@list.hw.cz
Sent: Monday, August 10, 2009 3:03 PM
Subject: Strategie rizeni vice casove kritickych operaci s jednim timerem v MCU?
Ceka me nasledujici,
16pinu na MCU a jim odpovidajicich 16 promenych + jedna noha pro synchonizaci.
Nabezna hrana na synchro pulsu znamena zacatek 10ms periody v ktere se nestane nic pokud je vsech 16 promenych 0 nebo se musi v case odpovidajicim prislusne promene na ji odpovidajicim pinu objevit impuls v delce trvani rekneme 5 taktu procesoru pricemz promena bude mit hodnotu 1-31 tj. napriklad pri hodnote 10, 3,125ms od zacatku periody) respektive pokud bude promena 32 tak se noha prepne na 1 v ktere setva do konce periody. Po 10ms by mel prijit novy sysncho puls, ktery to cele odstartuje znova.
Pricemz, toto vsechno je relativne casove kriticke a melo by se provadel presne (presne vuci hodinam MCU , a zacatkuy periody), mimo to bude MCU delat i spoustu jine prace.
Otazkou je jaka strategie rizeni casovace je nejefektivnejsi nebo spise nejvhodnejsi.Napada me
- casovac odpalovat kazdych 1/32 z tech 10ms a v preruseni kontrolovat zda nektera promena neodpovida danemu "casu"
- promene na danou periodu zafixovat a seradit a casovac nastavit vzdy na nejblizsi udalost a nasledne dalsi v poradi.
- ....
Nevim jaka bude cetnosot, ale teoreticky predpokladam, ze nejbeznejsi stav bude 16x0 , pocet zmen bude max desitky za hodinu a pokud dojde k nejake zmene tak tato vydrzi nekolik tisic period.
Resili jste neco podobneho?
KN
_______________________________________________
HW-list mailing list - sponsored by www.HW.cz
Hw-list@list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list
------------- další část ---------------
HTML příloha byla odstraněna...
URL: http://list.hw.cz/pipermail/hw-list/attachments/20090810/938625f7/attachment-0002.htm
Další informace o konferenci Hw-list