SN8P2714X_2715
8-bit micro-controller build-in 12-bit ADC
SONiX TECHNOLOGY CO., LTD
Page 18
V1.4
Â
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:
;The head of interrupt service routine
B0XCH A,
ACCBUF
; B0XCH doesn’t change C, Z flag
B0MOV A,
PFLAG
B0MOV PFLAGBUF,
A
; Save PFLAG register in a buffer
.
; User code
.
; User code
B0MOV A,
PFLAGBUF
B0MOV PFLAG,
A
; Restore PFLAG register from buffer
RETI
; End of interrupt service routine
ENDP
; End of program
¾
Note: 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.
2. The interrupt service starts from 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 more modularized coding style.