beautypg.com

4 output compare unit – Rainbow Electronics ATtiny861_V User Manual

Page 96

background image

96

2588B–AVR–11/06

ATtiny261/461/861

16.4

Output Compare Unit

The comparator continuously compares TCNT1 with the Output Compare Registers (OCR1A,
OCR1B, OCR1C and OCR1D). Whenever TCNT1 equals to the Output Compare Register, the
comparator signals a match. A match will set the Output Compare Flag (OCF1A, OCF1B or
OCF1D) at the next timer clock cycle. If the corresponding interrupt is enabled, the Output Com-
pare Flag generates an Output Compare interrupt. The Output Compare Flag is automatically
cleared when the interrupt is executed. Alternatively, the flag can be cleared by software by writ-
ing a logical one to its I/O bit location. The Waveform Generator uses the match signal to
generate an output according to operating mode set by the PWM1x, WGM10 and Compare Out-
put mode (COM1x1:0) bits. The top and bottom signals are used by the Waveform Generator for
handling the special cases of the extreme values in some modes of operation (

See Section

“16.7” on page 101.

).

Figure 16-4

shows a block diagram of the Output Compare unit.

Figure 16-4. Output Compare Unit, Block Diagram

The OCR1x Registers are double buffered when using any of the Pulse Width Modulation
(PWM) modes. For the normal mode of operation, the double buffering is disabled. The double
buffering synchronizes the update of the OCR1x Compare Registers to either top or bottom of
the counting sequence. The synchronization prevents the occurrence of odd-length, non-sym-
metrical PWM pulses, thereby making the output glitch-free. See

Figure 16-5

for an example.

During the time between the write and the update operation, a read from OCR1A, OCR1B,
OCR1C or OCR1D will read the contents of the temporary location. This means that the most
recently written value always will read out of OCR1A, OCR1B, OCR1C or OCR1D.

OCFnx (Int.Req.)

=

(10-bit Comparator )

8-BIT DATA BUS

TCNTn

WGM10

Waveform Generator

COMnX1:0

PWMnx

TCnH

OCWnx

10-BIT TCNTn

10-BIT OCRnx

OCRnx

FOCn

TOP

BOTTOM