beautypg.com

Atmega169v/l – Rainbow Electronics Atmega169L User Manual

Page 46

background image

46

ATmega169V/L

2514A–AVR–08/02

Table 23 shows reset and Interrupt Vectors placement for the various combinations of
BOOTRST and IVSEL settings. If the program never enables an interrupt source, the
Interrupt Vectors are not used, and regular program code can be placed at these loca-
tions. This is also the case if the Reset Vector is in the Application section while the
Interrupt Vectors are in the Boot section or vice versa.

Note:

1. The Boot Reset Address is shown in Table 113 on page 263. For the BOOTRST

Fuse “1” means unprogrammed while “0” means programmed.

The most typical and general program setup for the Reset and Interrupt Vector
Addresses in ATmega169 is:

Address

Labels

Code

Comments

0x0000

jmp

RESET

; Reset Handler

0x0002

jmp

EXT_INT0

; IRQ0 Handler

0x0004

jmp

PCINT0

; PCINT0 Handler

0x0006

jmp

PCINT1

; PCINT0 Handler

0x0008

jmp

TIM2_COMP

; Timer2 Compare Handler

0x000A

jmp

TIM2_OVF

; Timer2 Overflow Handler

0x000C

jmp

TIM1_CAPT

; Timer1 Capture Handler

0x000E

jmp

TIM1_COMPA

; Timer1 CompareA Handler

0x0010

jmp

TIM1_COMPB

; Timer1 CompareB Handler

0x0012

jmp

TIM1_OVF

; Timer1 Overflow Handler

0x0014

jmp

TIM0_COMP

; Timer0 Compare Handler

0x0016

jmp

TIM0_OVF

; Timer0 Overflow Handler

0x0018

jmp

SPI_STC

; SPI Transfer Complete Handler

0x001A

jmp

USART0_RXC

; USART0 RX Complete Handler

0x001C

jmp

USART0_DRE

; USART0,UDR Empty Handler

0x001E

jmp

USART0_TXC

; USART0 TX Complete Handler

0x0020

jmp

USI_STRT

; USI Start Condition Handler

0x0022

jmp

USI_OVFL

; USI Overflow Handler

0x0024

jmp

ADC

; ADC Conversion Complete Handler

0x0026

jmp

ANA_COMP

; Analog Comparator Handler

0x0028

jmp

EE_RDY

; EEPROM Ready Handler

0x002A

jmp

SPM_RDY

; SPM Ready Handler

0x002C

jmp

LCD_SOF

; LCD Start of Frame Handler

;

0x002E

RESET:

ldi

r16, high(RAMEND); Main program start

0x002F

out

SPH,r16

Set Stack Pointer to top of RAM

0x0030

ldi

r16, low(RAMEND)

0x0031

out

SPL,r16

0x0032

sei

; Enable interrupts

0x0033

xxx

...

...

...

...

Table 23. Reset and Interrupt Vectors Placement

(1)

BOOTRST

IVSEL

Reset Address

Interrupt Vectors Start Address

1

0

0x0000

0x0002

1

1

0x0000

Boot Reset Address + 0x0002

0

0

Boot Reset Address

0x0002

0

1

Boot Reset Address

Boot Reset Address + 0x0002