101
2545T–AVR–05/11
ATmega48/88/168
15.9
Register description
15.9.1
TCCR0A – Timer/counter control register A
Bits 7:6 – COM0A1:0: Compare match output A mode
These bits control the Output Compare pin (OC0A) behavior. If one or both of the COM0A1:0
bits are set, the OC0A output overrides the normal port functionality of the I/O pin it is connected
to. However, note that the Data Direction Register (DDR) bit corresponding to the OC0A pin
must be set in order to enable the output driver.
When OC0A is connected to the pin, the function of the COM0A1:0 bits depends on the
WGM02:0 bit setting.
Table 15-2 shows the COM0A1:0 bit functionality when the WGM02:0 bits
are set to a normal or CTC mode (non-PWM).
Table 15-3 shows the COM0A1:0 bit functionality when the WGM01:0 bits are set to fast PWM
mode.
Note:
1. A special case occurs when OCR0A equals TOP and COM0A1 is set. In this case, the Com-
Bit
7
6
5
4
3
2
1
0
COM0A1
COM0A0
COM0B1
COM0B0
–
WGM01
WGM00
TCCR0A
Read/write
R/W
R
R/W
Initial value
0
Table 15-2.
Compare output mode, non-PWM mode.
COM0A1
COM0A0
Description
0
Normal port operation, OC0A disconnected
0
1
Toggle OC0A on compare match
1
0
Clear OC0A on compare match
1
Set OC0A on compare match
Table 15-3.
Compare output mode, fast PWM mode
COM0A1
COM0A0
Description
0
Normal port operation, OC0A disconnected
01
WGM02 = 0: Normal port operation, OC0A disconnected
WGM02 = 1: Toggle OC0A on compare match
10
Clear OC0A on compare match, set OC0A at BOTTOM,
(non-inverting mode)
11
Set OC0A on compare match, clear OC0A at BOTTOM,
(inverting mode)