beautypg.com

7 icr1h and icr1l – input capture register 1, 8 timsk1 – timer/counter1 interrupt mask register – Rainbow Electronics ATmega64M1 User Manual

Page 129

background image

129

8209A–AVR–08/09

ATmega16M1/32M1/64M1

16.11.7

ICR1H and ICR1L – Input Capture Register 1

The Input Capture is updated with the counter (TCNTn) value each time an event occurs on the
ICPn pin (or optionally on the Analog Comparator output for Timer/Counter1). The Input Capture
can be used for defining the counter TOP value.

The Input Capture Register is 16-bit in size. To ensure that both the high and low bytes are read
simultaneously when the CPU accesses these registers, the access is performed using an 8-bit
temporary High Byte Register (TEMP). This temporary register is shared by all the other 16-bit
registers.

See “Accessing 16-bit Registers” on page 105.

16.11.8

TIMSK1 – Timer/Counter1 Interrupt Mask Register

• Bit 7, 6 – Res: Reserved

These bits are reserved and will always read as zero.

• Bit 5 – ICIE1: Timer/Counter1, Input Capture Interrupt Enable

When this bit is written to one, and the I-flag in the Status Register is set (interrupts globally
enabled), the Timer/Counter1 Input Capture interrupt is enabled. The corresponding Interrupt
Vector (see

“Interrupt Vectors in ATmega16M1/32M1/64M1” on page 54

) is executed when the

ICF1 Flag, located in TIFR1, is set.

• Bit 4, 3 – Res: Reserved

These bits are reserved and will always read as zero.

• Bit 2 – OCIE1B: Timer/Counter1, Output Compare B Match Interrupt Enable

When this bit is written to one, and the I-flag in the Status Register is set (interrupts globally
enabled), the Timer/Counter1 Output Compare B Match interrupt is enabled. The corresponding
Interrupt Vector (see

“Interrupt Vectors in ATmega16M1/32M1/64M1” on page 54

) is executed

when the OCF1B Flag, located in TIFR1, is set.

• Bit 1 – OCIE1A: Timer/Counter1, Output Compare A Match Interrupt Enable

When this bit is written to one, and the I-flag in the Status Register is set (interrupts globally
enabled), the Timer/Counter1 Output Compare A Match interrupt is enabled. The corresponding
Interrupt Vector (see

“Interrupt Vectors in ATmega16M1/32M1/64M1” on page 54

) is executed

when the OCF1A Flag, located in TIFR1, is set.

• Bit 0 – TOIE1: Timer/Counter1, Overflow Interrupt Enable

When this bit is written to one, and the I-flag in the Status Register is set (interrupts globally
enabled), the Timer/Counter1 Overflow interrupt is enabled. The corresponding Interrupt Vector
(see

“Interrupt Vectors in ATmega16M1/32M1/64M1” on page 54

) is executed when the TOV1

Flag, located in TIFR1, is set.

Bit

7

6

5

4

3

2

1

0

ICR1[15:8]

ICR1H

ICR1[7:0]

ICR1L

Read/Write

R/W

R/W

R/W

R/W

R/W

R/W

R/W

R/W

Initial Value

0

0

0

0

0

0

0

0

Bit

7

6

5

4

3

2

1

0

ICIE1

OCIE1B

OCIE1A

TOIE1

TIMSK1

Read/Write

R

R

R/W

R

R

R/W

R/W

R/W

Initial Value

0

0

0

0

0

0

0

0