SN8P1829
8-Bit MCU build-in 12-bit ADC + PGIA + Charge-pump Reg 128 dots LCD driver
SONiX TECHNOLOGY CO., LTD
Page 15
Version 1.0
Example 2: The demo program includes interrupt service routine and the address of interrupt service
routine is in a special address of general-purpose area.
ORG
0
;
0000H
JMP
START
; Jump to user program address.
.
; 0001H ~ 0007H are reserved
ORG
08
JMP
MY_IRQ
; 0008H, Jump to interrupt service routine address
ORG
10H
START:
; 0010H, The head of user program.
.
; User program
.
.
.
JMP
START
; End of user program
MY_IRQ:
; Label of interrupt service routine
B0XCH A,
ACCBUF
; B0XCH doesn’t change C, Z flag
PUSH
; Push 80H ~ 87H system registers
.
.
.
POP
; Pop 80H ~ 87H system registers
B0XCH A,
ACCBUF
RETI
; End of interrupt service routine
ENDP
; End of program
Remark: it is easy to get the rules of SONiX program from demo programs given above. These points are
as following.
1. The address 0000H is a “JMP” instruction to make the program go to general-purpose ROM area. The
0004H~0007H are reserved. Users have to skip 0004H~0007H addresses. It is very important and
necessary.
2. The interrupt vector located at 0008H. Users can put the whole interrupt service routine from 0008H
(Example1) or to put a “JMP” instruction in 0008H then place the interrupt service routine in other
general-purpose ROM area (Example2) to get modularized coding style.