Datasheet
60
7728G–AVR–06/10
ATtiny87/ATtiny167
7.2 Program Setup in ATtiny87
The most typical and general program setup for the Reset and Interrupt Vector Addresses in
ATtiny87 is (2-byte step - using “rjmp” instruction):
Address
(Note:)
Label Code Comments
0x0000 rjmp RESET ; Reset Handler
0x0001 rjmp INT0addr ; IRQ0 Handler
0x0002 rjmp INT1addr ; IRQ1 Handler
0x0003 rjmp PCINT0addr ; PCINT0 Handler
0x0004 rjmp PCINT1addr ; PCINT1 Handler
0x0005 rjmp WDTaddr ; Watchdog Timer Handler
0x0006 rjmp ICP1addr ; Timer1 Capture Handler
0x0007 rjmp OC1Aaddr ; Timer1 Compare A Handler
0x0008 rjmp OC1Baddr ; Timer1 Compare B Handler
0x0009 rjmp OVF1addr ; Timer1 Overflow Handler
0x000A rjmp OC0Aaddr ; Timer0 Compare A Handler
0x000B rjmp OVF0addr ; Timer0 Overflow Handler
0x000C rjmp LINTCaddr ; LIN Transfer Complete Handler
0x000D rjmp LINERRaddr ; LIN Error Handler
0x000E rjmp SPIaddr ; SPI Transfer Complete Handler
0x000F rjmp ADCCaddr ; ADC Conversion Complete Handler
0x0010 rjmp ERDYaddr ; EEPROM Ready Handler
0x0011 rjmp ACIaddr ; Analog Comparator Handler
0x0012 rjmp USISTARTaddr ; USI Start Condition Handler
0x0013 rjmp USIOVFaddr ; USI Overflow Handler
0x0014 RESET: ldi r16, high(RAMEND); Main program start
0x0015 out SPH,r16 ; Set Stack Pointer to top of RAM
0x0016 ldi r16, low(RAMEND)
0x0017 out SPL,r16
0x0018 sei ; Enable interrupts
0x0019 <instr> xxx
... ... ... ...
Note: 16-bit address