📄 yxd-cf12232a06d.asm
字号:
ADD A,G_LEN ;
MOV G_LEN,A ;
DEC G_LEN ;
MOV A,G_WID ;
MOV R3,A ;
$1 G_ADDR G_COL,G_ROW ;
MOV A,G_WID ;
MOV R3,A ;
$2 MOV A,#0 ;
MOVC A,@A+DPTR ;
MOV R4,A ;
INC DPTR ;
MOV A,#0 ;
MOVC A,@A+DPTR ;
MOV R5,A ;
INC DPTR ;
WR2DATA R4,R5 ;
DJNZ R3,$2 ;
INC G_ROW ;
MOV A,G_LEN ;
CLR C ;
SUBB A,G_ROW ;
JNC $1 ;
CLR RS0 ;
RET ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; ;;;;;;;;
;;;;;;;; 功能: 设定 GRAPHIC ADDRESS ;;;;;;;;
;;;;;;;; 输入参数: 输出参数: ;;;;;;;;
;:::::;: :::::::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SET_GRAPHIC_ADDRESS: ;
INS_W EX_FT ;
MOV A,BYTE2 ;SET GRAPHIC RAM ADDRESS
SETB A.7 ;DPL=COLUMN(|)
CALL WRINS ;
MOV A,BYTE1 ;DPH=ROW(-)
SETB A.7 ;
CALL WRINS ;
INS_W NR_FT ;
RET ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; ;;;;;;;;
;;;;;;;; 功能: 写入 2-Bytes DATA ;;;;;;;;
;;;;;;;; 输入参数: 输出参数: ;;;;;;;;
;:::::;: :::::::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
WRITE_DOUBLE_DATA: ;
DATA_W BYTE1 ;
DATA_W BYTE2 ;
RET ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; ;;;;;;;;
;;;;;;;; 功能: 显示字串 ;;;;;;;;
;;;;;;;; 输入参数: 输出参数: ;;;;;;;;
;:::::;: :::::::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DISPLAY_DELAY: ;
CALL WRINS ;SET DDRAM ADDRESS
MOV R1,SP ;
MOV DPH,@R1 ;
DEC R1 ;
MOV DPL,@R1 ;
$1 MOV A,#0 ;
MOVC A,@A+DPTR ;
JZ $EXIT ;
CALL WRDATA ;
CALL DELAY2 ;
INC DPTR ;
JMP $1 ;
$EXIT INC DPTR ;
MOV @R1,DPL ;
INC R1 ;
MOV @R1,DPH ;
RET ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; ;;;;;;;;
;;;;;;;; 功能: 改变垂直移动位置 ;;;;;;;;
;;;;;;;; 输入参数: 输出参数: ;;;;;;;;
;:::::;: :::::::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ROW_DISPLAY: ;
PUSH A ;
INS_W EX_FT ;
INS_W #03H ;START ROW ENABLE
POP A ;
CLR A.7 ;
SETB A.6 ;
CALL WRINS ;
INS_W #02H ;START ROW DISABLE
INS_W NR_FT ;
RET ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; ;;;;;;;;
;;;;;;;; 功能: WRITE COMMAND ;;;;;;;;
;;;;;;;; 输入参数: 输出参数: ;;;;;;;;
;:::::;: :::::::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
WRINS: ;
CALL CHK_BUSY ;
WRINS_NOCHK: ;
CLR RS ;
NOP ;
CLR RW ;
NOP ;
SETB E ;
MOV P1,A ;
NOP ;
CLR E ;
MOV P1,#FFH ;
RET ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; ;;;;;;;;
;;;;;;;; 功能: WRITE DATA ;;;;;;;;
;;;;;;;; 输入参数: 输出参数: ;;;;;;;;
;:::::;: :::::::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
WRDATA: ;
CALL CHK_BUSY ;
SETB RS ;
NOP ;
CLR RW ;
NOP ;
SETB E ;
MOV P1,A ;
NOP ;
CLR E ;
MOV P1,#FFH ;
RET ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; ;;;;;;;;
;;;;;;;; 功能: READ DATA ;;;;;;;;
;;;;;;;; 输入参数: 输出参数: ;;;;;;;;
;:::::;: :::::::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
RDDATA: ;
CALL CHK_BUSY ;
SETB RS ;
NOP ;
SETB RW ;
NOP ;
SETB E ;
NOP ;
NOP ;
MOV A,P1 ;
CLR E ;
MOV P1,#FFH ;
RET ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; ;;;;;;;;
;;;;;;;; 功能: CHECK BUSY FLAG ;;;;;;;;
;;;;;;;; 输入参数: 输出参数: ;;;;;;;;
;:::::;: :::::::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
CHK_BUSY: ;
CLR RS ;
NOP ;
SETB RW ;
NOP ;
SETB E ;
NOP ;
NOP ;
JB P1.7,$ ;
CLR E ;
RET ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; ;;;;;;;;
;;;;;;;; 功能: DELAY TIME ;;;;;;;;
;;;;;;;; 输入参数: 输出参数: ;;;;;;;;
;:::::;: :::::::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DLY1S: ; DELAY TIME
PUSH 7 ;
MOV R7,#84/2 ;
$1 CALL DELAY1 ;
DJNZ R7,$1 ;
POP 7 ;
RET ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; ;;;;;;;;
;;;;;;;; 功能: DELAY TIME ;;;;;;;;
;;;;;;;; 输入参数: 输出参数: ;;;;;;;;
;:::::;: :::::::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DELAY2: ; DELAY TIME
PUSH 7 ;
MOV R7,#5 ;
$1 CALL DELAY1 ;
DJNZ R7,$1 ;
POP 7 ;
RET ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; ;;;;;;;;
;;;;;;;; 功能: DELAY TIME ;;;;;;;;
;;;;;;;; 输入参数: 输出参数: ;;;;;;;;
;:::::;: :::::::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DELAY1: ; DELAY TIME
PUSH 6 ;
PUSH 7 ;
MOV R6,#100 ;
DL MOV R7,#200/2 ;
DJNZ R7,$ ;
DJNZ R6,DL ;
POP 7 ;
POP 6 ;
RET ;
;#########################################################################
;##### 资料定义 #####
;#########################################################################
PIC_TABLE: ;
DB #00H,#00H, #1FH, #FCH, #00H, #00H ; ...........
DB #00H,#00H, #1FH, #FCH, #00H, #00H ; ...........
DB #00H,#00H, #11H, #1CH, #00H, #00H ; . . ...
DB #00H,#00H, #15H, #5CH, #00H, #00H ; . . . . ...
DB #00H,#00H, #17H, #DCH, #00H, #00H ; . ..... ...
DB #00H,#00H, #1CH, #7EH, #00H, #00H ; ... ......
DB #00H,#00H, #18H, #1EH, #00H, #00H ; .. ....
DB #00H,#00H, #14H, #5EH, #00H, #00H ; . . . ....
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -