138 14. Licznik T2 w 8052 i SAB 80515 535

8052

80515/535

-» zbocze opadające T2EX ustawia znacznik EXF2 i generuje przerwanie o adresie 02Bh,

-» zbocze opadające lub narastające

P1.0/CC0/INT3 ustawia znacznik IEX3 i generuje przerwanie o adresie 53h,

-> zbocza opadające PI.1/CCI/ /INT4 .. P1.3/CC3/INT6 ustawiają znaczniki IEX4 .. IEX6 i generują przerwania o adresach: 5Bh .. 6Bh

• wartość chwilowa licznika zapamiętywana jest programowo jeśli:

-> wykonana zostanie instrukcja wpisu dowolnej wartości do mniej znaczącego rejestru: CRCL, CCL1, CCL2 lub CCL3

• przepełnienie licznika ustawia znacznik przepełnienia TF2 i generuje przerwanie o adresie 02Bh,

• wartość początkowa licznika pi —> automatycznie po przepełń -> z jednego 16-bitowego rejestru RCAP,

*zepisvwana jest: ieniu licznika,

-* z jednego 16-bitowego rejestru CRC,

-> zboczem opadającym PI.5/ /T2EX

-> zbocze opadające P1.5/T2EX u-stawia znacznik EXF2 i generuje przerwanie o adresie 02Bh,

• wartość chwilowa licznika porównywana jest sprzętowo z:

-> czterema rejestrami: CRCL, CCL1, CCL2 lub CCL3

-> stan równości licznika i wybranego rejestru (CRC, CCI, CC2 lub CC3) ustawia skojarzony z rejestrem znacznik (IEX3..IEX6) i ge-

neruje przerwanie (1NT3 ..INT6), -» porównywanie wykonywane jest w dwóch trybach,

-> generowanie 4 sygnałów PWM (Pulse Width Modulation - modulacja szerokości impulsów) z rozdzielczością 16 bitów.

Jak widać z podanej tabeli różnice między obu tak samo nazwanymi licznikami T2 są ogromne. Właściwie to co jest możliwe w mikrokontrolerze SAB 80515/535 nie jest możliwe w mikrokontrolerze 8052. Podobna sytuacja występuje w innych mikrokontrolerach rodziny '51. Tryby pracy licznika T2 określane są często mianem CCR:

•    CCR - Compare, porównanie; tryb dostępny jedynie w SAB 80515/535,

•    CCR - Capture, zapamiętanie wartości chwilowej,

•    CCR Reload, autoładowanie wartości początkowej licznika.

W obu mikrokontrolerach 8052 i SAB 80515/535 16-bitowy licznik T2 tworzą dwa 8-bitowe rejestry specjalne oznaczone symbolami:

•    TL2 jest rejestrem mniej znaczącym o adresie OCCh, rejestrem do odczytu i zapisu (po sprzętowym zerowaniu procesora TL2-0),

•    TH2 jest rejestrem bardziej znaczącym o adresie OCDh, rejestrem do odczytu i zapisu (po sprzętowym zerowaniu procesora TH2=0),

Sposób zliczania zewnętrznych impulsów taktujących jest taki sam jak w j liczniku TO lub Tl.    |

Sygnał zewnętrzny jest testowany przez, mikrokontroler w każdym cyklu maszynowym. Jeżeli w jednym cyklu wykryty został poziom wysoki sygnału, a w następnym poziom niski to zawartość rejestrów TH2, TL2 jest zwiększana o jeden. Inkrementacja licznika T2 dokonywana jest w następnym cyklu maszynowym w stosunku do cyklu, w którym wykryta została zmiana poziomu sygnału.

Ze sposobu testowania przez mikrokontroler poziomu zewnętrznego sygnału wynikają dwa ograniczenia. Po pierwsze czas trwania wysokiego poziomu sygnału musi być dłuższy niż 1 cykl maszynowy mikrokontrolera.

Jest to warunek określający współczynnik wypełnienia impulsów. Po drugie minimalny okres zewnętrznego sygnału musi być dłuższy niż 2 cykle maszynowe.

Jeśli mikrokontroler jest sterowany rezonatorem kwarcowym o częstotliwości 12 MHz to maksymalna częstotliwość zewnętrznego sygnału doprowadzonego do wejścia T2 nie może przekraczać 500 kblz.

Z licznikiem T2 związanych jest:

•    5 dodatkowych rejestrów w mikrokontrolerze 8052: T2CON, RCAP2I, RCAP2H, IEorazIP,

•    15 rejestrów specjalnych w mikrokontrolerze SAB 80515/535: T2CON, CCEM, CRCL, CRCH, CCL1, CCH1, CCL2, CCH2, CCL3, CCH3,1RCON, 1EN0, IEN1, IP0 oraz IP1.