Figure 49. 16-bit Timer/Counter Block Diagram(1)
Count
TOVn
(Int.Req.)
Clear
Control Logic
Clock Select
Direction
TCLK
Edge
Detector
Tn
TOP BOTTOM
( From Prescaler )
Timer/Counter
TCNTn
=
= 0
OCFnA
(Int.Req.)
Waveform
Generation
OCnA
OCnB
OCnC
=
OCRnA
OCFnB
Fixed
TOP
Values
(Int.Req.)
Waveform
Generation
=
OCRnB
OCFnC
(Int.Req.)
Waveform
Generation
=
OCRnC
( From Analog
Comparator Ouput )
ICFn (Int.Req.)
Edge
Detector
Noise
Canceler
ICRn
ICPn
TCCRnA
TCCRnB
TCCRnC
Note:
1. Refer to Figure 1 on page 2, Table 38 on page 89, and Table 44 on page 93 for
Timer/Counter1 and 3 and 3 pin placement and description.
Registers
The Timer/Counter (TCNTn), Output Compare Registers (OCRnA/B/C), and Input Cap-
ture Register (ICRn) are all 16-bit registers. Special procedures must be followed when
accessing the 16-bit registers. These procedures are described in the section “Access-
ing 16-bit Registers” on page 137. The Timer/Counter Control Registers (TCCRnA/B/C)
are 8-bit registers and have no CPU access restrictions. Interrupt requests (shorten as
Int.Req.) signals are all visible in the Timer Interrupt Flag Register (TIFRn). All interrupts
are individually masked with the Timer Interrupt Mask Register (TIMSKn). TIFRn and
TIMSKn are not shown in the figure since these registers are shared by other timer
units.
The Timer/Counter can be clocked internally, via the prescaler, or by an external clock
source on the Tn pin. The Clock Select logic block controls which clock source and edge
the Timer/Counter uses to increment (or decrement) its value. The Timer/Counter is
inactive when no clock source is selected. The output from the clock select logic is
referred to as the timer clock (clk ).
n
T
The double buffered Output Compare Registers (OCRnA/B/C) are compared with the
Timer/Counter value at all time. The result of the compare can be used by the Waveform
Generator to generate a PWM or variable frequency output on the Output Compare pin
(OCnA/B/C). See “Output Compare Units” on page 144.. The compare match event will
136
ATmega640/1280/1281/2560/2561
2549A–AVR–03/05