1 speed, 2 accuracy, 3 registers – Rainbow Electronics ATtiny861_V User Manual
Page 92

92
2588B–AVR–11/06
ATtiny261/461/861
Figure 16-1. Timer/Counter1 Block Diagram
16.2.1
Speed
The maximum speed of the Timer/Counter1 is 64 MHz. However, if a supply voltage below 2.7
volts is used, it is highly recommended to use the Low Speed Mode (LSM), because the
Timer/Counter1 is not running fast enough on low voltage levels. In the Low Speed Mode the
fast peripheral clock is scaled down to 32 MHz. For more details about the Low Speed Mode,
see
”PLLCSR – PLL Control and Status Register” on page 89
16.2.2
Accuracy
The Timer/Counter1 is a 10-bit Timer/Counter module that can alternatively be used as an 8-bit
Timer/Counter. The Timer/Counter1 registers are basically 8-bit registers, but on top of that
there is a 2-bit High Byte Register (TC1H) that can be used as a common temporary buffer to
access the two MSBs of the 10-bit Timer/Counter1 registers by the AVR CPU via the 8-bit data
bus, if the 10-bit accuracy is used. Whereas, if the two MSBs of the 10-bit registers are written to
zero the Timer/Counter1 is working as an 8-bit Timer/Counter. When reading the low byte of any
8-bit register the two MSBs are written to the TC1H register, and when writing the low byte of
any 8-bit register the two MSBs are written from the TC1H register. Special procedures must be
followed when accessing the 10-bit Timer/Counter1 values via the 8-bit data bus. These proce-
dures are described in the section
”Accessing 10-Bit Registers” on page 110
.
16.2.3
Registers
The Timer/Counter (TCNT1) and Output Compare Registers (OCR1A, OCR1B, OCR1C and
OCR1D) are 8-bit registers that are used as a data source to be compared with the TCNT1 con-
tents. The OCR1A, OCR1B and OCR1D registers determine the action on the OC1A, OC1B and
OC1D pins and they can also generate the compare match interrupts. The OCR1C holds the
8-BIT DATABUS
T/C INT. FLAG
REGISTER (TIFR)
10-BIT COMPARATOR
8-BIT OUTPUT COMPARE
REGISTER A (OCR1A)
T/C INT. MASK
REGISTER (TIMSK)
TIMER/COUNTER1
(TCNT1)
DIRECTION
TIMER/COUNTER1 CONTROL LOGIC
OCF1B
TOV1
TOIE1
OCIE1B
OCIE1A
OCF1A
TOV1
OCF1B
OC1A
OCF1A
T/C CONTROL
REGISTER A (TCCR1A)
COM1B1
PWM1A
PWM1B
COM1B0
FOC1A
FOC1B
10-BIT COMPARATOR
8-BIT OUTPUT COMPARE
REGISTER B (OCR1B)
COM1A1
COM1A0
T/C CONTROL
REGISTER B (TCCR1B)
CS12
PSR1
CS11
CS10
CS13
OC1A
OC1B
OC1B
DEAD TIME GENERATOR
DEAD TIME GENERATOR
10-BIT COMPARATOR
8-BIT OUTPUT COMPARE
REGISTER C (OCR1C)
10-BIT COMPARATOR
8-BIT OUTPUT COMPARE
REGISTER D (OCR1D)
COM1A1
PWM1D
COM1A0
FOC1D
T/C CONTROL
REGISTER C (TCCR1C)
OCF1D
OCF1D
OCIE1D
OC1D
OC1D
DEAD TIME GENERATOR
PSR1
PSR1
OCW1A
OCW1B
OCW1D
2-BIT HIGH BYTE
REGISTER (TC1H)
WGM11
FPEN1
T/C CONTROL
REGISTER D (TCCR1E)
COM1B1
COM1B0
COM1D1
COM1D0
FPNC1
FPES1
FPAC1
10-BIT OUTPUT
COMPARE REGISTER B
10-BIT OUTPUT
COMPARE REGISTER C
10-BIT OUTPUT
COMPARE REGISTER D
10-BIT OUTPUT
COMPARE REGISTER A
CLEAR
COUNT
CLK
T/C CONTROL
REGISTER C (TCCR1D)
FAULT_PROTECTION
WGM10
FPIE1
FPF1
OC1OE5
OC1OE4
OC1OE3
OC1OE2
OC1OE1
OC1OE0
FPIE1
FPF1