110 likes | 271 Views
Čítače / časovače uP 8051. Čo spracovávajú čítače. 8051 má dva 16-bitové čítače T0, T1 Obsah čítačov prístupný cez 8-bit. registre TH0, TL0 ( čítač T0 ) TH1, TL1 ( čítač T1 ) kde THx – Timer High ( horná slabika )
E N D
Čo spracovávajú čítače • 8051 má dva 16-bitové čítače T0, T1 • Obsah čítačov prístupný cez 8-bit. registre TH0, TL0 ( čítač T0 ) TH1, TL1 ( čítač T1 ) kde THx – Timer High ( horná slabika ) TLx – Timer Low ( dolná slabika ) • registre TH0, TL0, TH1, TL1 sú v oblasti špeciálnych funkčných registrov • čítače môžu počítať iba impulzy prichádzajúce zvonku cez vstupy T0 ( P3.4 ), T1 ( P3.5 ) • Časovače môžu počítať pravidelne prichádzajúce impulzy na vstupy T0, T1 alebo počítať impulzy vnútorného generátora hodín, čím vytvárajú časové intervaly
T T0 časovač T0 čítač Rozdiel medzi časovačom a čítačom • Časovač slúži na počítanie pravidelne prichádzajúcich impulzov, s definovanou periódou • Využitie pri tvorbe časových intervalov • Čítač slúži na počítanie udalostí, ktoré sú reprezentované výskytom náhodne sa objavujúcich impulzov na vstupe čítača pravidelne prichádzajúce impulzy náhodne, nepravidelne prichádzajúce impulzy
Konfigurácia – nastavenie čítačov Register TMOD ( Timer modus ) ( adresa 89h ) • slúži na nastavenie režimu ( módu činnosti čítačov ) • každý čítač môže pracovať v jednom zo 4 režimov : • Mod 0 – ako 13-bitový čítač • Mod 1 – ako 16-bitový čítač • Mod 2 - ako 8-bitový čítač s prednastavením • Mod 3 – nesymetrický mód • Čítač pracuje vždy vzostupne, t.j. jeho obsah sa zvýši o jedna príchodom impulzu
Konfigurácia – nastavenie čítačov Register TMOD ( Timer modus ) ( adresa 89h ) • GATE – určuje riadenie činnosti čítača ak GATE = 0 programove riadený bitmi TR0, TR1 v registri TCON ak GATE = 1 hardverove riadený cez vstupy INT0, INT1 • C / T - určuje funkciu ako čítač ( C / T = 1 ), ako časovač ( C / T = 0 ) C – counter ( čítač ) T – Timer ( časovač ) Čítač / časovač T1 Čítač / časovač T0
Ovládanie čítačov / časovačov Register TCON (Timer Control ) ( adresa 88h ) • TR0, TR1 – štartovací bit pre čítače ( 1 – štart, 0 – stop ) • TF0, TF1 – príznaky pretečenia čítača T0, T1 pri pretečení čítača sa nastaví príznak TF0, TF1 ( TF=1 ) Pretečenie čítača je okamih, kedy sa stav čítača mení zo samých jednotiek na samé nuly
čítač Logika spínania čítačov • Čítač bude počítať vstupné impulzy, ak výstup hradla AND = 1 • spustenie programové Musí byť TRn = 1, Gate = 0 • spustenie hardverové Musí byť TRn = 1, Gate = 1 spustenie signálom žiadosti o externé prerušenie INTn pri prechode signálu z 0 – 1 ( nábežná hrana )
Mod 0, 1 časovača / čítača MOD 0 – čítač pracuje ako 13-bitový • Pri pretečení sa nastaví príznakový bit TFn • Ak pracuje ako čítač, počíta impulzy na vstupe Tn • Ak pracuje ako časovač, počíta impulzy z vnútorného generátora MOD 1 – čítač pracuje ako 16-bitový, ináč je to isté
8 bit Mod 2 časovača / čítača • Čítač TLn pracuje ako 8-bitový s prednastavením hodnoty • Po pretečení je čítač TLn automaticky naplnený hodnotou uloženou v čítači THn • Programové nastavovanie hodnoty v čítači THn neovplyvňuje aktuálny stav čítača TLn
Mod 3 časovača / čítača • Nesymetrický mód činnosti, obidva čítače nemôžu byť v rovnakom móde • Čítač T0 je rozdelený na dva samostatné 8-bitové čítače TL0, TH0 • Čítač TL0 môže pracovať ako čítač, aj ako časovač • Čítač TH0 môže pracovať iba ako časovač ( ovládaný cez bit TR1 ) • Čítač T1 vtedy môže iba generovať signál prenosovej rýchlosti pre sériový kanál mikropočítača