Čí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.
Download ReportTranscript Čí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.
Čí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 ) 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 Rozdiel medzi časovačom a čítačom T T0 pravidelne prichádzajúce impulzy časovač • Časovač slúži na počítanie pravidelne prichádzajúcich impulzov, s definovanou periódou • Využitie pri tvorbe časových intervalov čítač • Čítač slúži na počítanie udalostí, ktoré sú reprezentované výskytom náhodne sa objavujúcich impulzov na vstupe čítača T0 náhodne, nepravidelne prichádzajúce impulzy Konfigurácia – nastavenie čítačov Register TMOD ( Timer modus ) Gate C / T M1 M0 ( adresa 89h ) Gate C / T • 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 – Mod 1 – Mod 2 Mod 3 – ako 13-bitový čítač ako 16-bitový čítač ako 8-bitový čítač s prednastavením nesymetrický mód • Čítač pracuje vždy vzostupne, t.j. jeho obsah sa zvýši o jedna príchodom impulzu M1 M0 Mód M1 M0 0 0 0 1 0 1 2 1 0 3 1 1 Konfigurácia – nastavenie čítačov Register TMOD ( Timer modus ) Gate C / T M1 Čítač / časovač T1 M0 ( adresa 89h ) Gate C / T M1 M0 Čítač / časovač T0 • 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č ) Ovládanie čítačov / časovačov Register TCON (Timer Control ) TF1 TR1 TF0 TR0 Pretečenie čítača je okamih, kedy sa stav čítača mení zo samých jednotiek na samé nuly ( adresa 88h ) IE1 IT1 IE0 IT0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 • 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 ) Logika spínania čítačov čítač • Čí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é Mod 2 časovača / čítača 8 bit • Čí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