beautypg.com

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

Page 92

background image

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