English
Language : 

ATMEGA6490V_14 Datasheet, PDF (93/392 Pages) ATMEL Corporation – High Endurance Non-volatile Memory Segments
ATmega329/3290/649/6490
14.4
Counter Unit
The main part of the 8-bit Timer/Counter is the programmable bi-directional counter unit. Figure
14-2 shows a block diagram of the counter and its surroundings.
Figure 14-2. Counter Unit Block Diagram
DATA BUS
TOVn
(Int.Req.)
TCNTn
count
clear
direction
Control Logic
clkTn
bottom
top
Clock Select
Edge
Detector
Tn
( From Prescaler )
Signal description (internal signals):
count
Increment or decrement TCNT0 by 1.
direction
Select between increment and decrement.
clear
Clear TCNT0 (set all bits to zero).
clkTn
top
Timer/Counter clock, referred to as clkT0 in the following.
Signalize that TCNT0 has reached maximum value.
bottom
Signalize that TCNT0 has reached minimum value (zero).
Depending of the mode of operation used, the counter is cleared, incremented, or decremented
at each timer clock (clkT0). clkT0 can be generated from an external or internal clock source,
selected by the Clock Select bits (CS02:0). When no clock source is selected (CS02:0 = 0) the
timer is stopped. However, the TCNT0 value can be accessed by the CPU, regardless of
whether clkT0 is present or not. A CPU write overrides (has priority over) all counter clear or
count operations.
The counting sequence is determined by the setting of the WGM01 and WGM00 bits located in
the Timer/Counter Control Register (TCCR0A). There are close connections between how the
counter behaves (counts) and how waveforms are generated on the Output Compare output
OC0A. For more details about advanced counting sequences and waveform generation, see
“Modes of Operation” on page 97.
The Timer/Counter Overflow Flag (TOV0) is set according to the mode of operation selected by
the WGM01:0 bits. TOV0 can be used for generating a CPU interrupt.
14.5
Output Compare Unit
The 8-bit comparator continuously compares TCNT0 with the Output Compare Register
(OCR0A). Whenever TCNT0 equals OCR0A, the comparator signals a match. A match will set
the Output Compare Flag (OCF0A) at the next timer clock cycle. If enabled (OCIE0A = 1 and
Global Interrupt Flag in SREG is set), the Output Compare Flag generates an Output Compare
interrupt. The OCF0A Flag is automatically cleared when the interrupt is executed. Alternatively,
the OCF0A Flag can be cleared by software by writing a logical one to its I/O bit location. The
93
2552K–AVR–04/11