📄 driver1.asm
字号:
; 直接访问方式的驱动子程序
; 程序口地址设置CWADD1,CRADD1,DWADD1,DRADD1
; 占用内部资源COM,DAT1,A
; 程序输入变量: DAT1,COM
;==========直接访问方式基础驱动子程序=====================
; 读状态位子程序
PR0: PUSH DPL
PUSH DPH
MOV DPTR,#CRADD1 ; 设置读状态口地址
PR01: MOVX A,@DPTR ; 读状态
JB ACC.7,PR01 ; 判状态位为"0"否?
POP DPH
POP DPL
RET
;----------------------------------------------------
; 写指令代码子程序
PR1: PUSH DPL
PUSH DPH
MOV DPTR,#CRADD1 ; 设置读状态口地址
PR11: MOVX A,@DPTR ; 读状态
JB ACC.7,PR11 ; 判状态位为"0"否?
MOV DPTR,#CWADD1 ; 设置写指令口地址
MOV A,COM ; 取指令代码
MOVX @DPTR,A ; 写入指令代码
POP DPH
POP DPL
RET
;----------------------------------------------------
; 写指令参数和数据子程序
PR2: PUSH DPL
PUSH DPH
MOV DPTR,#CRADD1 ; 设置读状态口地址
PR21: MOVX A,@DPTR ; 读状态
JB ACC.7,PR21 ; 判状态位为"0"否?
MOV DPTR,#DWADD1 ; 设置写数据口地址
MOV A,DAT1 ; 取指令参数或显示数据
MOVX @DPTR,A ; 写入参数或数据
POP DPH
POP DPL
RET
;---------------------------------------------------
; 读显示数据子程序
PR3: PUSH DPL
PUSH DPH
MOV DPTR,#CRADD1 ; 设置读状态口地址
PR31: MOVX A,@DPTR ; 读状态
JB ACC.7,PR31 ; 判状态位为"0"否?
MOV DPTR,#DRADD1 ; 设置读数据口地址
MOVX A,@DPTR ; 读显示数据
MOV DAT1,A ; 存数据
POP DPH
POP DPL
RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -