Datasheet
108
2549O–AVR–05/12
ATmega640/1280/1281/2560/2561
W hen the BOOTRST Fuse is unprogrammed, the Boot section size set to 8Kbytes and the
IVSEL bit in the MCUCR Register is set before any interrupts are enabled, the most typical and
general program setup for the Reset and Interrupt Vector Addresses is:
Address Labels Code Comments
0x00000 RESET: ldi r16,high(RAMEND); Main program start
0x00001 out SPH,r16 ; Set Stack Pointer to top of RAM
0x00002 ldi r16,low(RAMEND)
0x00003 out SPL,r16
0x00004 sei ; Enable interrupts
0x00005 <instr> xxx
;
.org 0x1F002
0x1F002 jmp EXT_INT0 ; IRQ0 Handler
0x1F004 jmp EXT_INT1 ; IRQ1 Handler
... ... ... ;
0x1FO70 jmp USART3_TXC ; USART3 TX Complete Handler
0x0040 jmp TIM3_COMPA ; Timer3 CompareA Handler
0x0042 jmp TIM3_COMPB ; Timer3 CompareB Handler
0x0044 jmp TIM3_COMPC ; Timer3 CompareC Handler
0x0046 jmp TIM3_OVF ; Timer3 Overflow Handler
0x0048 jmp USART1_RXC ; USART1 RX Complete Handler
0x004A jmp USART1_UDRE ; USART1,UDR Empty Handler
0x004C jmp USART1_TXC ; USART1 TX Complete Handler
0x004E jmp TWI ; 2-wire Serial Handler
0x0050 jmp SPM_RDY ; SPM Ready Handler
0x0052 jmp TIM4_CAPT ; Timer4 Capture Handler
0x0054 jmp TIM4_COMPA ; Timer4 CompareA Handler
0x0056 jmp TIM4_COMPB ; Timer4 CompareB Handler
0x0058 jmp TIM4_COMPC ; Timer4 CompareC Handler
0x005A jmp TIM4_OVF ; Timer4 Overflow Handler
0x005C jmp TIM5_CAPT ; Timer5 Capture Handler
0x005E jmp TIM5_COMPA ; Timer5 CompareA Handler
0x0060 jmp TIM5_COMPB ; Timer5 CompareB Handler
0x0062 jmp TIM5_COMPC ; Timer5 CompareC Handler
0x0064 jmp TIM5_OVF ; Timer5 Overflow Handler
0x0066 jmp USART2_RXC ; USART2 RX Complete Handler
0x0068 jmp USART2_UDRE ; USART2,UDR Empty Handler
0x006A jmp USART2_TXC ; USART2 TX Complete Handler
0x006C jmp USART3_RXC ; USART3 RX Complete Handler
0x006E jmp USART3_UDRE ; USART3,UDR Empty Handler
0x0070 jmp USART3_TXC ; USART3 TX Complete Handler
;
0x0072 RESET: ldi r16, high(RAMEND) ; Main program start
0x0073 out SPH,r16 ; Set Stack Pointer to top of RAM
0x0074 ldi r16, low(RAMEND)
0x0075 out SPL,r16
0x0076 sei ; Enable interrupts
0x0077 <instr> xxx
... ... ... ...