Datasheet

ATmega164A/PA/324A/PA/644A/PA/1284/P
2018 Microchip Technology Inc. Data Sheet Complete DS40002070A-page 136
16.12 Register description
16.12.1 TCCRnA – Timer/Counter n Control Register A
Bit 7:6 – COMnA1:0: Compare Output Mode for Channel A
Bit 5:4 – COMnB1:0: Compare Output Mode for Channel B
The COMnA1:0 and COMnB1:0 control the Output Compare pins (OCnA and OCnB respectively) behavior. If
one or both of the COMnA1:0 bits are written to one, the OCnA output overrides the normal port functionality of
the I/O pin it is connected to. If one or both of the COMnB1:0 bit are written to one, the OCnB 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 OCnA or OCnB pin must be set in order to enable the output driver.
When the OCnA or OCnB is connected to the pin, the function of the COMnx1:0 bits is dependent of the
WGMn3:0 bits setting. Table 16-2 on page 136 shows the COMnx1:0 bit functionality when the WGMn3:0 bits
are set to a Normal or a CTC mode (non-PWM).
Table 16-3 on page 136 shows the COMnx1:0 bit functionality when the WGMn3:0 bits are set to the fast PWM
mode.
Note: 1. A special case occurs when OCRnA/OCRnB equals TOP and COMnA1/COMnB1 is set. In this case the
compare match is ignored, but the set or clear is done at BOTTOM. See Section “16.10.3” on page 128 for
more details.
Bit 7 6 5 4 3210
(0x80)
COMnA1 COMnA0 COMnB1 COMnB0
WGMn1 WGMn0 TCCRnA
Read/Write R/W R/W R/W R/W R R R/W R/W
Initial Value0 0 0 0 0000
Table 16-2. Compare Output mode, non-PWM
COMnA1/COMnB1 COMnA0/COMnB0 Description
0 0 Normal port operation, OCnA/OCnB disconnected.
0 1 Toggle OCnA/OCnB on Compare Match.
1 0
Clear OCnA/OCnB on Compare Match (Set output to
low level).
1 1
Set OCnA/OCnB on Compare Match (Set output to
high level).
Table 16-3. Compare Output mode, fast PWM
(1)
COMnA1/COMnB1 COMnA0/COMnB0 Description
0 0 Normal port operation, OCnA/OCnB disconnected.
0 1
WGMn3:0 = 14 or 15: Toggle OC1A on Compare
Match, OC1B disconnected (normal port operation).
For all other WGM1 settings, normal port operation,
OC1A/OC1B disconnected.
1 0
Clear OCnA/OCnB on Compare Match, set
OCnA/OCnB at BOTTOM (non-inverting mode)
1 1
Set OCnA/OCnB on Compare Match, clear
OCnA/OCnB at BOTTOM (inverting mode)