Compare output mode and waveform generation, Modes of operation, Atmega32(l) – Rainbow Electronics ATmega32L User Manual

Page 95

Advertising
background image

95

ATmega32(L)

2503C–AVR–10/02

Figure 44. Compare Match Output Unit, Schematic

The general I/O port function is overridden by the Output Compare (OC1x) from the
Waveform Generator if either of the COM1x1:0 bits are set. However, the OC1x 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 OC1x pin (DDR_OC1x) must be set as
output before the OC1x value is visible on the pin. The port override function is generally
independent of the Waveform Generation mode, but there are some exceptions. Refer
to Table 44, Table 45 and Table 46 for details.

The design of the output compare pin logic allows initialization of the OC1x state before
the output is enabled. Note that some COM1x1:0 bit settings are reserved for certain
modes of operation. See “16-bit Timer/Counter Register Description” on page 105.

The COM1x1:0 bits have no effect on the input capture unit.

Compare Output Mode and
Waveform Generation

The Waveform Generator uses the COM1x1:0 bits differently in normal, CTC, and PWM
modes. For all modes, setting the COM1x1:0 = 0 tells the Waveform Generator that no
action on the OC1x Register is to be performed on the next compare match. For com-
pare output actions in the non-PWM modes refer to Table 44 on page 105. For fast
PWM mode refer to Table 45 on page 106, and for phase correct and phase and fre-
quency correct PWM refer to Table 46 on page 106.

A change of the COM1x1: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 FOC1x 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 (WGM13:0) and
Compare Output mode (COM1x1:0) bits. The Compare Output mode bits do not affect
the counting sequence, while the Waveform Generation mode bits do. The COM1x1:0
bits control whether the PWM output generated should be inverted or not (inverted or
non-inverted PWM). For non-PWM modes the COM1x1:0 bits control whether the out-
put should be set, cleared or toggle at a compare match (See “Compare Match Output
Unit” on page 94.)

For detailed timing information refer to “Timer/Counter Timing Diagrams” on page 103.

PORT

DDR

D

Q

D

Q

OCnx

Pin

OCnx

D

Q

Waveform

Generator

COMnx1

COMnx0

0

1

D

ATA

B

U

S

FOCnx

clk

I/O

Advertising