Liczniki

Liczniki 

Mikrokomputer 8051 zawiera w sobie 2 szesnastobitowe liczniki do pomiaru interwałów czasowych, szerokości impulsu, zliczania zdarzeń, generowania cyklicznych przerwań itp. Każdy z nich może być programowany niezależnie  i pracować w kilku tubach. W trybie 0 wykorzystuje się trzynastobitowy licznik. Trzy najbardziej znaczące bity TL0 lub TL1 są ignorowane, TH0 i TH1 tworzą liczniki ośmiobitowe. Tak więc w trybie 0 układ pracuje z preskalerem dzielącym zliczane impulsy przez 32. Tryb 1 to szesnastobitowy układ odmierzania czasu lub licznik impulsów, natomiast w trybie 2 układ zachowuje się jak ośmiobitowy timer/licznik z automatycznym przeładowaniem po wystąpieniu przepełnienia.
 Dodatkowo licznik 0 może (w trybie 3) pełnić funkcję ośmiobitowego timera/licznika i ośmiobitowego timera zliczającego interwały czasu. Jeśli licznik 0 pracuje w trybie 3, licznik 1 może być zaprogramowany w jeden z trzech wymienionych wyżej trybów, chociaż nie może wtedy ustawiać flagi żądania przerwania lub generować przerwań. Tryb ten może być jednak użyteczny ponieważ przepełnienie licznika 1 może być wykorzystane do generowania impulsu zegarowego dla portu szeregowego.
Taka liczba trybów pracy i szesnastobitowa precyzja czyni układ timerów/liczników wbudowanych w 8051 bardzo przydatnymi. Mogą być wykorzystywane do pracy z wysokimi częstotliwościami. Zakres pracy może zawierać się od 0.1 do 1MHz (dla kwarcu 1.2:12MHz), kiedy zlicza się impulsy wewnętrznego oscylatora, które są dzielone przez 12, i od 0 do 500kHz dla tego samego kwarcu, kiedy zliczane są impulsy zewnętrzne. Obydwa zewnętrzne i wewnętrzne wejścia mogą być bramkowane przez inne zewnętrzne źródło dla pomiaru szerokości impulsu.
 Liczniki są startowane i stopowane przez program. Każdy licznik ustawia flagę żądania przerwania w momencie wystąpienia przepełnienia tzn. w chwili przejścia ze stanu 11...11 do stanu 00...00. 

Komentarze



link W układzie Intel 8051 jest zaimplementowany system wieloźródłowy przerwań o dwóch priorytetach z możliwością zagnieżdżania. Czas reakcji po wystąpieniu żądania obsługi zawiera się między 3 a 7 s przy zegarze 12MHz.



link Prezentujemy listę instrukcji - mikroprocesor 8051 ( Intel 8051 ): ACALL addr11 Dzialanie: (PC)  (PC) + 2 (SP)  (SP) + 1 ((SP))  (PC7-0) (SP)  (SP) + 1 ((SP))  (PC15-8) (PC10-0)  addr11