ATmega169P
13. 8-bit Timer/Counter0 with PWM
Timer/Counter0 is a general purpose, single compare unit, 8-bit Timer/Counter module. The
main features are:
• Single Compare Unit Counter
• Clear Timer on Compare Match (Auto Reload)
• Glitch-free, Phase Correct Pulse Width Modulator (PWM)
• Frequency Generator
• External Event Counter
• 10-bit Clock Prescaler
• Overflow and Compare Match Interrupt Sources (TOV0 and OCF0A)
13.1 Overview
A simplified block diagram of the 8-bit Timer/Counter is shown in Figure 13-1. For the actual
placement of I/O pins, refer to ”Pinout ATmega169P” 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 loca-
tions are listed in the ”8-bit Timer/Counter Register Description” on page 102.
Figure 13-1. 8-bit Timer/Counter Block Diagram
TCCRn
count
TOVn
(Int.Req.)
clear
Control Logic
TOP
Clock Select
direction
clk
Tn
Edge
Detector
Tn
BOTTOM
( From Prescaler )
Timer/Counter
TCNTn
= 0
= 0xFF
OCn
(Int.Req.)
Waveform
Generation
OCn
=
OCRn
13.1.1
Registers
The Timer/Counter (TCNT0) and Output Compare Register (OCR0A) are 8-bit registers. Inter-
rupt request (abbreviated to Int.Req. in the figure) signals are all visible in the Timer Interrupt
Flag Register (TIFR0). All interrupts are individually masked with the Timer Interrupt Mask Reg-
ister (TIMSK0). TIFR0 and TIMSK0 are not shown in the figure.
The Timer/Counter can be clocked internally, via the prescaler, or by an external clock source on
the T0 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 (clkT0).
91
8018A–AVR–03/06