Timer 0, At8xc51snd1c – Rainbow Electronics AT89C51SND1C User Manual
Page 52

52
AT8xC51SND1C
4109E–8051–06/03
Figure 28. Timer 0 and Timer 1 Clock Controller and Symbols
Timer 0
Timer 0 functions as either a Timer or event Counter in four modes of operation.
Figure 29 through Figure 35 show the logical configuration of each mode.
Timer 0 is controlled by the four lower bits of TMOD register (see Table 61) and bits 0, 1,
4 and 5 of TCON register (see Table 60). TMOD register selects the method of Timer
gating (GATE0), Timer or Counter operation (C/T0#) and mode of operation (M10 and
M00). TCON register provides Timer 0 control functions: overflow flag (TF0), run control
bit (TR0), interrupt flag (IE0) and interrupt type control bit (IT0).
For normal Timer operation (GATE0 = 0), setting TR0 allows TL0 to be incremented by
the selected input. Setting GATE0 and TR0 allows external pin INT0 to control Timer
operation.
Timer 0 overflow (count rolls over from all 1s to all 0s) sets TF0 flag generating an inter-
rupt request.
It is important to stop Timer/Counter before changing mode.
Mode 0 (13-bit Timer)
Mode 0 configures Timer 0 as a 13-bit Timer which is set up as an 8-bit Timer (TH0 reg-
ister) with a modulo 32 prescaler implemented with the lower five bits of TL0 register
(see Figure 29). The upper three bits of TL0 register are indeterminate and should be
ignored. Prescaler overflow increments TH0 register. Figure 30 gives the overflow
period calculation formula.
Figure 29. Timer/Counter x (x = 0 or 1) in Mode 0
Figure 30. Mode 0 Overflow Period Formula
PER
CLOCK
TIM0
CLOCK
OSC
CLOCK
0
1
T0X2
CKCON.1
÷
2
Timer 0 Clock
Timer 0 Clock Symbol
PER
CLOCK
TIM1
CLOCK
OSC
CLOCK
0
1
T1X2
CKCON.2
÷
2
Timer 1 Clock
Timer 1 Clock Symbol
TIMx
CLOCK
TRx
TCON Reg
TFx
TCON reg
0
1
GATEx
TMOD Reg
÷
6
Overflow
Timer x
Interrupt
Request
C/Tx#
TMOD Reg
THx
(8 Bits)
TLx
(5 Bits)
INTx
Tx
6
⋅
(16384 – (THx, TLx))
TFx
PER
=
F
TIMx