35.6.2.5.9 Output Polarity

The polarity (WAVE.POLx) is available in all waveform output generation. In single-slope and dual-slope PWM operation, it is possible to invert the pulse edge alignment individually on start or end of a PWM cycle for each compare channels. The table below shows the waveform output set/clear conditions, depending on the settings of timer/counter, direction, and polarity.

Table 35-4. Waveform Generation Set/Clear Conditions
Waveform Generation OperationDIRPOLxWaveform Generation Output Update
SetClear
Single-Slope PWM00Timer/counter matches TOPTimer/counter matches CCx
1Timer/counter matches CCxTimer/counter matches TOP
10Timer/counter matches CCxTimer/counter matches ZERO
1Timer/counter matches ZEROTimer/counter matches CCx
Dual-Slope PWMx0Timer/counter matches CCx when counting upTimer/counter matches CCx when counting down
1Timer/counter matches CCx when counting downTimer/counter matches CCx when counting up
DUAL Compare PWM00Timer/Counter match TOP Timer/counter matches CC[x+WO_NUM/2]Timer/counter matches CCx
1Timer/counter matches CCxTimer/Counter match TOP Timer/counter matches CC[x+WO_NUM/2]
10Timer/counter matches CCxTimer/Counter match ZERO Timer/counter matches CC[x+WO_NUM/2]
1Timer/Counter match ZERO Timer/counter matches CC[x+WO_NUM/2]Timer/counter matches CCx

In Normal and Match Frequency, the WAVE.POLx value represents the initial state of the waveform output.