84
9. Licznikia 9 Liczniki
85
i
liczby podziałowej. Ponadto, po uruchomieniu dzielnik może zawiera przypadkową wartość początkową, lub 0 po włączeniu zasilania lub zerowaniu procesora. Dlatego przed uruchomieniem dzielnika do reje stru TL należy wpisać taką samą wartość jaka jest wpisywana do reje stru TH. Licznik Tl pracujący w trybie 2 jest często stosowany do tak towania portu szeregowego mikrokontrolera.
CYKL MASZYNOWY
n |
-1 |
n |
n+1 | |||||||||||
SI |
S2 |
S3 |
$4 |
S5 |
S6 |
SI |
S2 |
S3 |
S4 |
S5 |
S6 |
SI |
S2 |
S3 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
PI P2 |
OSC
Trvb 3
Ml = 1,M0 = 1
Tryb 3 występuje tylko dla licznika TO. W tym trybie rejestry TLO i THO pracują jako dwa niezależne 8-bitowe liczniki/dzielniki, rysunek 9-3.
—Ą TFO |
TO (P3.4) O'
03
TF1
T
test poziomu
test poziomu inkrementacja licznika 1 i
Rys. 9-4 Testowanie poziomów sygnałów wejściowych liczników.
Jeżeli test wykaże stan wysoki wejścia w jednym cyklu maszynowym oraz stan niski w następnym cyklu maszynowym, to w kolejnym cyklu maszynowym nastąpi inkrementacja licznika. Dlatego maksymalna częstotliwość impulsów zewmętrznych zliczanych przez liczniki TO i Tl musi być mniejsza od 1/24 częstotliwości oscylatora. Natomiast częstotliwość minimalna nie jest niczym ograniczona.
INTO (P3.2) Rys. 9-3.
Układ połączeń licznika TO pracującego w trybie 3.
Poniższy program pokazuje jak wykorzystać licznik TO do pomiaru czasu. Mierzony sygnał jest doprowadzony do wejścia INTO (P3.2). Zbocze narastające tego sygnału otwiera bramkę, a zbocze opadające zamyka bramkę dla impulsów wewnętrznych zliczanych w liczniku. Przy częstotliwości oscylatora wynoszącej 12 MHz jeden impuls zliczony w liczniku odpowiada czasowi 1 ps. Występujące przepełnienia licznika, wywołujące przerwania, są zliczane w rejestrze B. W ten sposób otrzymuje się licznik 24 bitowy. Uruchomienie procedury pomiaru odbywa się przez ustawienie stanu 0 na wfejściu INT1 (P3.3).
Rejestr TLO pracuje w strukturze licznika TO (znaczniki TRO, GATE
C/T oraz przerzutnik TFO). Może więc być sterowany i testowany licznik TO w trybie 0 i 1. Natomiast rejestr THO jest połączony na stałe 1 wyjściem zegara wewnętrznego poprzez dzielnik .12 i jest bramkow'3-l ny znacznikiem TRI. Wyjście tego rejestru jest połączone z prze rzutnikiem TF1. Dlatego gdy licznik TO pracuje w trybie 3, to licznik H może pracować w pozostałych trybach ale bez możliwości bramkowania jego wejścia i testowania przepełnienia. W tej sytuacji licznik Ti nadaje się praktycznie tylko do taktowania portu szeregowe-^ Wprowadzenie trybu 3 dla licznika Tl powoduje jego zatrzymanie.
; Program pomiaru czasu ; Wykorzystane rejestry;
; B, licznik TO
Przy zliczaniu impulsów wewnętrznych (C/l — 0) rejestr licznika jest llfl
przy zliczaniu impuisow wewi^u^ayui 1 — vj **«.*.....—
krementowany co jeden cykl maszynowy. Odpowiada to 1/12 częstotliwość
oscylatora. Natomiast przy zliczaniu impulsów zewnętrznych (C/T = 1) odpowiedniego wejścia licznika jest taktowany podczas każdego cyklu mas nowrego, rysunek 9-4.
ta**
i
NAMF Pomiar czasu ORG o
LJMP PROG_CZAS ;ominięcie obszaru obsługi przerwań
^ OBh ;podprogram obsługi przerwania od licznika TO
INC B ;zwiększenie zawartości rejestru B o jeden
RETI ;powrót z podprogramu
pROG_CZAS:
ORL TMOD,#9 ;licznik TO - tryb 1, bramkowanie zewnętrzne
;taktowanie wewnętrzne
ORL IE,#82h ;odb!okowanie przerwania od licznika TO
1*