
107
ATmega64A [DATASHEET]
8160D–AVR–02/2013
Figure 16-1. 16-bit Timer/Counter Block Diagra
m Note:
placement and description.
16.2.1
Registers
The Timer/Counter (TCNTn), Output Compare Registers (OCRnA/B/C), and Input Capture Register (ICRn) are all
16-bit registers. Special procedures must be followed when accessing the 16-bit registers. These procedures are
(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 (TIFR) and Extended Timer Interrupt Flag Register
(ETIFR). All interrupts are individually masked with the Timer Interrupt Mask Register (TIMSK) and Extended
Timer Interrupt Mask Register (ETIMSK). (E)TIFR and (E)TIMSK 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
Tn).
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
ICFx (Int.Req.)
TOVx
(Int.Req.)
Clock Select
Timer/Counter
DATA
BUS
OCRxA
OCRxB
OCRxC
ICRx
=
TCNTx
Waveform
Generation
Waveform
Generation
Waveform
Generation
OCxA
OCxB
OCxC
Noise
Canceler
ICPx
=
Fixed
TOP
Values
Edge
Detector
Control Logic
= 0
TOP
BOTTOM
Count
Clear
Direction
OCFxA
(Int.Req.)
OCFxB
(Int.Req.)
OCFxC
(Int.Req.)
TCCRxA
TCCRxB
TCCRxC
( From Analog
Comparator Ouput )
Tx
Edge
Detector
( From Prescaler )
TCLK