📄 driver2.asm
字号:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;------------------DRIVER2.ASM-------------------------------------
;------------------Indirect access type driver---------------------
;Possess port resource: RS,WR,RD,DATBUS
;Possess internal resource: DAT1,A,COM
;program input parameter/variable: DAT1,COM
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;------------judge busy flag BF sub-program-----------------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
PR0: CLR RS ; Set RS=0
CLR RD ; /RD=0
MOV A,DATBUS ; Read BF value
SETB RD ; /RD=1
JB ACC.6,PR0 ; judge BF=1, re-read
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;------------write instruction code sub-program--------------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
PR1: MOV DATBUS,COM ; set instruction code
SETB RS ; Set RS=1
CLR WR ; /WR=0
SETB WR ; /WR=1
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;------------write parameter and display data sub-program----------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
PR2: MOV DATBUS,DAT1 ; set display data
CLR RS ; set RS=0
CLR WR ; /WR=0
SETB WR ; /WR=1
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;------------Read parameter and display data sub-program----------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
PR3: SETB RS ; set RS=1
MOV DATBUS,#0FFH
CLR RD ; /RD=0
MOV DAT1,DATBUS ; read data
SETB RD ; /RD=1
RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -