ATmega64(L)
8-bit Timer/Counter0
with PWM and
Asynchronous
Operation
Timer/Counter0 is a general purpose, single-channel, 8-bit Timer/Counter module. The
main features are:
• Single Channel Counter
• Clear Timer on Compare Match (Auto Reload)
• Glitch-free, Phase Correct Pulse Width Modulator (PWM)
• Frequency Generator
• 10-bit Clock Prescaler
• Overflow and Compare Match Interrupt Sources (TOV0 and OCF0)
• Allows Clocking from External 32 kHz Watch Crystal Independent of the I/O Clock
Overview
A simplified block diagram of the 8-bit Timer/Counter is shown in Figure 34. For the
actual placement of I/O pins, refer to “Pin Configuration†on page 2. CPU accessible I/O
Registers, including I/O bits and I/O pins, are shown in bold. The device-specific I/O
Register and bit locations are listed in the “8-bit Timer/Counter Register Description†on
page 102.
Figure 34. 8-bit Timer/Counter Block Diagram
TCCRn
count
clear
direction
Control Logic
BOTTOM
TOP
Timer/Counter
TCNTn
= 0 = 0xFF
=
clkTn
Prescaler
OCn
(Int. Req.)
Waveform
Generation
TOVn
(Int. Req.)
T/C
Oscillator
TOSC1
TOSC2
clkI/O
OCn
OCRn
Registers
2490G–AVR–03/04
Status Flags
Synchronized Status Flags
Synchronization Unit
ASSRn
Asynchronous Mode
Select (ASn)
clkI/O
clkASY
The Timer/Counter (TCNT0) and Output Compare Register (OCR0) are 8-bit registers.
Interrupt request (shorten as Int.Req.) signals are all visible in the Timer Interrupt Flag
Register (TIFR). All interrupts are individually masked with the Timer Interrupt Mask
Register (TIMSK). TIFR and 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 asynchronously
clocked from the TOSC1/2 pins, as detailed later in this section. The asynchronous
91