8051 - Čítače
Pár slov úvodem
Pro správné pochopení tohoto dílu je nanejvýš nutné, správné pochopení kapitol předchozích. První kapitola se věnovala úvodu do problematiky procesorů 8051, znalost této kapitoly není až tolik zásadní. Druhý díl nám dává jakýsi přehled o příkazech assembleru, které spolu s nabytými znalostmi využijeme pro tvorbu jednoduchého programu.
Čítače/časovače
Mikroprocesor 8051 obsahuje dva 16bitové čítače/časovače T0, T1, pracující ve čtyřech režimech a na jejichž vstupy je možné přivést jak signál z oscilátoru, tak i vnější impulzy (vývody T0, T1). Registry (z minulého dílu víme, že jsou to 8bitová paměťová místa), do kterých se ukládají načítané hodnoty mají označení TH0, TL0 a TH1, TL1.
Předem si musíme říci, že jestliže funguje obvod ve funkci časovače, pak je jeho zdrojem hodinových impulzů oscilátor procesoru (s frekvencí vydělenou 12) – to je také doba nazývaná strojový cyklus – od této doby se odvozují trvání jednotlivých instrukcí – později.
Naopak funguje-li obvod jako čítač, pak jsou zdrojem impulzy přicházející na vstupy T0 (resp. T1)
Konfiguraci čítače/časovače zajišťujeme zapsáním do registru TMOD
GATE
Řídí hradlování. Je-li nastaven (v log. 1), pak potom obvod čítá, jestliže je na externím vstupu INTn log. 1 a bit TRn v registru TCON je nastaven. Je-li naopak GATE nulován, pak je jeho činnost ovlivněna pouze bitem TRn
C/T
Rozhoduje o zdroji hodinových impulzů pro čítač/časovač. Je-li nulován, pak obvod pracuje ve funkci časovače a hodinový signál tvoří signál oscilátoru/12. Je-li bit nastaven (1) pak bude jako zdroj hodinových impulzů použit vstup Tn (n=0,1)
M0, M1
Těmito bity je volen jeden ze čtyř možných režimů

Mód 0

Mód 1

Mód 2

Mód 3
Mód 0:
Pracuje jako osmibitový čítač (THn), jehož vstup je předělen (nastaveni spodními bity TLn), pětibitovým čítačem. Při přetečení nastavují příznakový bit v registru TCON
Mód 1:
Jako mód 0, ovšem s tím rozdílem, že oba čítače jsou 16bitové
Mód 2:
Mód dva, umožňuje využívat tzv. hardwarové přednastavení čítače. To znamená, že když si například uložíme do registru THn hodnotu 7F, pak pak po přetečení hodnoty v registru TLn, se tento registr nastaví také na 7F (tedy hodnotu THn)
Mód 3:
Tento režim nebudeme popisovat, protože se na tomto webu nevyužívá. Pro zájemce:
http://www.volny.cz/fuksam/povidani/citace.htm
Jestliže se registrem TMOD nastavuje konfigurace čítače/časovače, pak je také nutné ho něčím řídit. Pro řízení se využívá registr TCON:
TF0, TF1
Nastaveny při přetečení čítače/časovače, bit je automaticky nulován při přechodu do přerušení
Komentovat článek
Komentáře k článku
Ben - 19.6.2011 20:40
Dobrý obrázky, akorát trochu více rozepsat princip jak to funguje podle schématu.