三星S3C/S3P/S3F9XXX系列 单片机 实现查表操作的一个示例
;实现查表操作须首先定义表地址,有两种定义方式
;方式一常用于参数表定义:
ORG 0040H
CODE_TABLE:
DB 01H
DB 02H
DB 03H
;方式二常用于系列子程序地址表定义:
ORG 0050H
DISPLAY_TABLE:
VECTOR $,DISPLAY_TR ;DISPLAY_TR是一个子程序名称,以下同
VECTOR $,DISPLAY_SET ;注意这里每个地址均占用一个字(两个字节)
VECTOR $,DISPLAY_CHGSET ;这些地址表填充由编译器完成
;-------------------------------------------------------------------
;在进行查表时,注意一定要对应好表格各行所在的地址,否则就大错特错了
ORG 0100H
MAIN:
LD R0,#00H ;表地址高位字节是00H
LD R1,#CODE_TABLE ;低位为表名称
LDC R10,@RR0 ;将表格地址的第1个数据调入R10中
INC R1
LDC R10,@RR0 ;将表格地址的第2个数据调入R10中
;....
;....
LD R0,#00H
LD R1,#DISPLAY_TABLE
LDC R14,@RR0 ;将显示子过程表的第一个过程高位字节调入R14
INC R1
LDC R15,@RR0 ;将显示子过程表的第一个过程低位字节调入R15
CALL @RR14 ;调用子过程
JP MAIN
;--------------------------------
;显示测试温度子程序
DISPLAY_TR:
NOP
RET
;---------------------------------
;显示设置温度子程序
DISPLAY_SET:
NOP
RET
;---------------------------------
;显示修改设置温度子程序
DISPLAY_CHGSET:
NOP
RET
参考链接:http://pICavr.h15.rree.com/news/2008-06/6751.htm
本文关键字:三星 单片机 三星单片机,单片机-工控设备 - 三星单片机