<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-2">
<META content="MSHTML 6.00.2900.5764" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Vzhledem k soucasnym cenam se nekdy vyplati druhy 
procesor.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Co je to presne? Kolik taktu procesoru si muze 
dovolit odchylku? Podle odchylky bych spocital krystal. Da se to udelat v 
preruseni -&nbsp;program zhruba sezere 10 - 20 cyklu bezneho procesoru, 
vynasobit 16 vyvody a mame 160 - 320cyklu. Je to hodne nebo malo?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Shrnu:</FONT></DIV>
<DIV><FONT face=Arial size=2>1) &nbsp;1x Casovac 10mS</FONT></DIV>
<DIV><FONT face=Arial size=2>2) 16x casovac&nbsp; 10mS/31 = 320uS</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Takze potrebujete preruseni co 320uS a rozdelit to 
na jednotlive ulohy, Mam nejak podobne udelan SW UART:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>switch(Uloha_Casovani)</FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; case 0:</FONT></DIV>
<DIV><FONT face=Arial 
size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Inicialize 
casovace 1-16</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; case 31:</FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
Uloha_Casovani = 0;</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; default:</FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ++ 
Uloha_Casovani;</FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Odecti 
casovac n</FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Casovac n = 
0?</FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
&nbsp;&nbsp;&nbsp; Spust impuls vyvodu&nbsp; n</FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; </FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; </FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Michal Gregor</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<BLOCKQUOTE 
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B> 
  <A title=k.novo@seznam.cz href="mailto:k.novo@seznam.cz">k.novo</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A title=hw-list@list.hw.cz 
  href="mailto:hw-list@list.hw.cz">hw-list@list.hw.cz</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Monday, August 10, 2009 3:03 
  PM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> Strategie rizeni vice casove 
  kritickych operaci s jednim timerem v MCU?</DIV>
  <DIV><FONT face=Arial size=2></FONT><FONT face=Arial size=2></FONT><FONT 
  face=Arial size=2></FONT><FONT face=Arial size=2></FONT><FONT face=Arial 
  size=2></FONT><FONT face=Arial size=2></FONT><FONT face=Arial 
  size=2></FONT><FONT face=Arial size=2></FONT><FONT face=Arial 
  size=2></FONT><FONT face=Arial size=2></FONT><FONT face=Arial 
  size=2></FONT><FONT face=Arial size=2></FONT><FONT face=Arial 
  size=2></FONT><FONT face=Arial size=2></FONT><BR></DIV>Ceka me 
  nasledujici,<BR>16pinu na MCU a jim odpovidajicich 16 promenych + jedna noha 
  pro synchonizaci.<BR>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&nbsp; 
  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.<BR><BR>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.<BR><BR>Otazkou je jaka strategie rizeni 
  casovace je nejefektivnejsi nebo spise nejvhodnejsi.Napada me <BR>- casovac 
  odpalovat kazdych 1/32 z tech 10ms a v preruseni kontrolovat zda nektera 
  promena neodpovida danemu "casu"<BR>- promene na danou periodu zafixovat a 
  seradit a casovac nastavit vzdy na nejblizsi udalost a nasledne dalsi v 
  poradi.<BR>-&nbsp; ....<BR><BR>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.<BR><BR>Resili jste neco 
  podobneho?<BR><BR><BR>KN<BR>_______________________________________________<BR>HW-list 
  mailing list&nbsp; -&nbsp; sponsored by <A 
  href="http://www.HW.cz">www.HW.cz</A><BR><A 
  href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</A><BR><A 
  href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</A><BR></BLOCKQUOTE></BODY></HTML>