beautypg.com

External interrupts, Interrupt response time, Mcu control register – mcucr – Rainbow Electronics AT90S2313 User Manual

Page 25

background image

25

AT90S2313

0839I–AVR–06/02

• Bit 2 – Res: Reserved Bit

This bit is a reserved bit in the AT90S2313 and always reads as zero.

• Bit 1 – TOV0: Timer/Counter0 Overflow Flag

The bit TOV0 is set (one) when an overflow occurs in Timer/Counter0. TOV0 is cleared
by hardware when executing the corresponding interrupt handling vector. Alternatively,
TOV0 is cleared by writing a logical “1” to the flag. When the SREG I-bit and TOIE0
( T i m e r / C o u n te r0 O v e r f l o w In t e rr u p t En a b l e ) a n d T O V 0 a re s e t ( o n e ) , t h e
Timer/Counter0 Overflow Interrupt is executed.

• Bit 0 – Res: Reserved Bit

This bit is a reserved bit in the AT90S2313 and always reads as zero.

External Interrupts

The External Interrupts are triggered by the INT1 and INT0 pins. Observe that, if
enabled, the interrupts will trigger even if the INT0/INT1 pins are configured as outputs.
This feature provides a way of generating a software interrupt. The External Interrupts
can be triggered by a falling or rising edge or a low level. This is set up as indicated in
the specification for the MCU Control Register (MCUCR). When the External Interrupt is
enabled and is configured as level-triggered, the interrupt will trigger as long as the pin
is held low.

The External Interrupts are set up as described in the specification for the MCU Control
Register (MCUCR).

Interrupt Response Time

The interrupt execution response for all the enabled AVR interrupts is four clock cycles,
minimum. Four clock cycles after the Interrupt Flag has been set, the Program Vector
address for the actual interrupt handling routine is executed. During this four clock cycle
period, the Program Counter (two bytes) is pushed onto the Stack, and the Stack
Pointer is decremented by two. The Power-down is normally a relative jump to the inter-
rupt routine, and this jump takes two clock cycles. If an interrupt occurs during execution
of a multi-cycle instruction, this instruction is completed before the interrupt is served.

A return from an interrupt handling routine takes four clock cycles. During these four
clock cycles, the Program Counter (two bytes) is popped back from the Stack, the Stack
Pointer is incremented by two, and the I-flag in SREG is set. When the AVR exits from
an interrupt, it will always return to the main program and execute one more instruction
before any pending interrupt is served.

MCU Control Register –
MCUCR

The MCU Control Register contains control bits for general MCU functions.

• Bits 7, 6 – Res: Reserved Bits

These bits are reserved bits in the AT90S2313 and always read as zero.

• Bit 5 – SE: Sleep Enable

The SE bit must be set (one) to make the MCU enter the sleep mode when the SLEEP
instruction is executed. To avoid the MCU entering the sleep mode unless it is the pro-
grammer’s purpose, it is recommended to set the Sleep Enable (SE) bit just before the
execution of the SLEEP instruction.

Bit

7

6

5

4

3

2

1

0

$35 ($55)

SE

SM

ISC11

ISC10

ISC01

ISC00

MCUCR

Read/Write

R

R

R/W

R/W

R/W

R/W

R/W

R/W

Initial value

0

0

0

0

0

0

0

0