Compare output mode and waveform generation, Modes of operation, Normal mode – Rainbow Electronics ATmega64L User Manual
Page 115: Atmega16(l)

115
ATmega16(L)
2466B–09/01
Figure 56. Compare Match Output Unit, Schematic
The general I/O port function is overridden by the output compare (OC2) from the wave-
form generator if either of the COM21:0 bits are set. However, the OC2 pin direction
(input or output) is still controlled by the data direction register (DDR) for the port pin.
The data direction register bit for the OC2 pin (DDR_OC2) must be set as output before
the OC2 value is visible on the pin. The port override function is independent of the
waveform generation mode.
The design of the output compare pin logic allows initialization of the OC2 state before
the output is enabled. Note that some COM21:0 bit settings are reserved for certain
modes of operation. See “8-bit Timer/Counter Register Description” on page 121.
Compare Output Mode and
Waveform Generation
The waveform generator uses the COM21:0 bits differently in normal, CTC, and PWM
modes. For all modes, setting the COM21:0 = 0 tells the waveform generator that no
action on the OC2 register is to be performed on the next compare match. For compare
output actions in the non-PWM modes refer to Table 51 on page 122. For fast PWM
mode, refer to Table 52 on page 122, and for phase correct PWM refer to Table 53 on
page 123.
A change of the COM21:0 bits state will have effect at the first compare match after the
bits are written. For non-PWM modes, the action can be forced to have immediate effect
by using the FOC2 strobe bits.
Modes of Operation
The mode of operation, i.e., the behavior of the Timer/Counter and the output compare
pins, is defined by the combination of the waveform generation mode (WGM21:0) and
compare output mode (COM21:0) bits. The compare output mode bits do not affect the
counting sequence, while the waveform generation mode bits do. The COM21:0 bits
control whether the PWM output generated should be inverted or not (inverted or non-
inverted PWM). For non-PWM modes the COM21:0 bits control whether the output
should be set, cleared, or toggled at a compare match (See “Compare Match Output
Unit” on page 114.).
For detailed timing information refer to “Timer/Counter Timing Diagrams” on page 119.
Normal Mode
The simplest mode of operation is the normal mode (WGM21:0 = 0). In this mode the
counting direction is always up (incrementing), and no counter clear is performed. The
counter simply overruns when it passes its maximum 8-bit value (TOP = 0xFF) and then
PORT
DDR
D
Q
D
Q
OCn
Pin
OCn
D
Q
Waveform
Generator
COMn1
COMn0
0
1
D
ATA
B
U
S
FOCn
clk
I/O