Cap8
TEMPORIZADORES / CONTADORES
CAPÍTULO VIII
TEMPORIZADORES / CONTADORES
8.1. INTRODUÇÃO
O 8051 tem dois registros contadores de 16 bits, denominados TIMER 0 e TIMER 1, dedicados às funções de contagem e temporização (counter/timer-contador/temporizador). Há uma importante distinção entre os conceitos de contador e temporizador.
Quando opera como temporizador, o registro é incrementado a cada ciclo de máquina
(usa como base o cristal da CPU). O sinal de contagem aparece com 1/12 da freqüência do clock.
Quando opera como contador, o registro é incrementado de acordo com o sinal que se coloca nas entradas T1 e T0, ou seja, o contador opera a cada transição de 1 para 0 (borda de descida ↓) na entrada T0 ou T1.
Deve-se ter um cuidado quando em operações em modo contador: já se sabe que as entradas são amostradas durante S5P2 de cada ciclo de máquina (figura 3.5). Quando em um ciclo de máquina a entrada é detectada em 1 e depois em 0, no próximo ciclo o contador é incrementado.
O incremento acontece em S3P1 do ciclo seguinte ao que foi detectada a transição. Para garantir que o nível correto tenha sido amostrado, é necessário que o sinal de entrada (o sinal que vai acionar os contadores) permaneça pelo menos um ciclo de máquina em nível alto e pelo menos outro ciclo de máquina em nível baixo, quer dizer, a máxima freqüência que responderá o contador é de 1/24 da freqüência de clock. O sinal de entrada pode ter qualquer "duty cycle", desde que se respeite a restrição antes mencionada.
8.2. REGISTROS ENVOLVIDOS
Dois registros SFR são utilizados para controlar as funções e operações do temporizador/contador: em TMOD especifica-se o modo de operação e em TCON controla-se a operação. A figura 8.1 ilustra o registro TMOD e a figura 8.2 ilustra o registro TCON.
MICROCONTROLADORES (MCS-51)
8 - 1
CAPÍTULO VIII
TEMPORIZADORES / CONTADORES
TIMER 1
7
TMOD
6
5
GATE C/*T M1
TIMER 0
4
M0
3
2
1
GATE C/*T M1
0
M0
BIT0 PARA DEFINIR MODO
BIT1 PARA DEFINIR