6 output compare units – Rainbow Electronics ATtiny10 User Manual
Page 59
59
8127B–AVR–08/09
ATtiny4/5/9/10
cleared by software (writing a logical one to the I/O bit location). For measuring frequency only,
the clearing of the ICF0 flag is not required (if an interrupt handler is used).
11.6
Output Compare Units
The 16-bit comparator continuously compares TCNT0 with the Output Compare Register
(OCR0x). If TCNT equals OCR0x the comparator signals a match. A match will set the Output
Compare Flag (OCF0x) at the next timer clock cycle. If enabled (OCIE0x = 1), the Output Com-
pare Flag generates an Output Compare interrupt. The OCF0x flag is automatically cleared
when the interrupt is executed. Alternatively the OCF0x 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 Waveform Generation mode
(WGM03:0) bits and Compare Output mode (COM0x1: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 (
“Modes of Operation” on page 62
).
A special feature of Output Compare unit A allows it to define the Timer/Counter TOP value (i.e.,
counter resolution). In addition to the counter resolution, the TOP value defines the period time
for waveforms generated by the Waveform Generator.
Figure 11-6 on page 59
shows a block diagram of the Output Compare unit. The small “n” in the
register and bit names indicates the device number (n = 0
for Timer/Counter 0), and the “x” indi-
cates Output Compare unit (A/B). The elements of the block diagram that are not directly a part
of the Output Compare unit are gray shaded.
Figure 11-6. Output Compare Unit, Block Diagram
The OCR0x Register is double buffered when using any of the twelve Pulse Width Modulation
(PWM) modes. For the Normal and Clear Timer on Compare (CTC) modes of operation, the
OCFnx (Int.Req.)
=
(16-bit Comparator )
OCRnx Buffer (16-bit Register)
OCRnxH Buf. (8-bit)
OCnx
TEMP (8-bit)
DATA BUS
(8-bit)
OCRnxL Buf. (8-bit)
TCNTn (16-bit Counter)
TCNTnH (8-bit)
TCNTnL (8-bit)
COMnx1:0
WGMn3:0
OCRnx (16-bit Register)
OCRnxH (8-bit)
OCRnxL (8-bit)
Waveform Generator
TOP
BOTTOM