SN8P2740 Series
ADC, OP-amp, Comparator 8-Bit Micro-Controller
Example: Modify above example by “INC_YZ” macro.
B0MOV
B0MOV
MOVC
Y, #TABLE1$M
Z, #TABLE1$L
; To set lookup table1‟s middle address
; To set lookup table1‟s low address.
; To lookup data, R = 00H, ACC = 35H
INC_YZ
; Increment the index address for next address.
;
@@:
TABLE1:
MOVC
…
DW
DW
DW
…
; To lookup data, R = 51H, ACC = 05H.
;
; To define a word (16 bits) data.
0035H
5105H
2012H
The other example of look-up table is to add Y or Z index register by accumulator. Please be careful if “carry” happen.
Example: Increase Y and Z register by B0ADD/ADD instruction.
B0MOV
B0MOV
Y, #TABLE1$M
Z, #TABLE1$L
; To set lookup table‟s middle address.
; To set lookup table‟s low address.
B0MOV
B0ADD
A, BUF
Z, A
; Z = Z + BUF.
B0BTS1
JMP
INCMS
NOP
FC
GETDATA
Y
; Check the carry flag.
; FC = 0
; FC = 1. Y+1.
GETDATA:
TABLE1:
;
MOVC
; To lookup data. If BUF = 0, data is 0x0035
; If BUF = 1, data is 0x5105
; If BUF = 2, data is 0x2012
…
DW
DW
DW
…
0035H
5105H
2012H
; To define a word (16 bits) data.
SONiX TECHNOLOGY CO., LTD
Page 17
Version 2.0