📄 1602.asm
字号:
RS EQU P3.7
RW EQU P3.6
E EQU P3.5
MOV P2,#0FFH
MOV P1,#01H ;清除屏幕
ACALL ENABLE
MOV P1,#38H ;8位点阵
ACALL ENABLE
MOV P1,#0FH ;开显示
ACALL ENABLE
MOV P1,#06H ;移动光标
ACALL ENABLE
MOV P1,#80H ;显示位置
ACALL ENABLE
L3: MOV P1,#01H
ACALL ENABLE
MOV DPTR,#TABLE1 ;送第一句话
CALL WRITE1
CALL ENABLE
;MOV P1,#01H
MOV P1,#0C0H ;写入显示起始地址(第二行第一个位置)
ACALL ENABLE ;调用写入命令子程序
MOV DPTR,#TABLE2 ;送第二句话
CALL WRITE1
CALL ENABLE
MOV P1,#01H
CALL DELAY1
CALL DELAY1
CALL DELAY1
JMP L3
ENABLE: ;送命令
CLR RS
CLR RW
CLR E
ACALL DELAY
SETB E
RET
WRITE1: ;送字符串
MOV R1,#00H
A1: MOV A,R1
MOVC A,@A+DPTR
CALL WRITE2
INC R1
CJNE A,#00H,A1 ;以00H做字符串结束标志
RET
WRITE2: ;送单个字符
MOV P1,A
SETB RS
CLR RW
CLR E
CALL DELAY
SETB E
RET
DELAY: ;延时子程序
MOV R7,#255
D1: MOV R6,#255
D2: DJNZ R6,D2
DJNZ R7,D1
RET
DELAY1:
MOV R7,#255
DELAY2:
MOV R6,#255
DJNZ R6,$
DJNZ R7,DELAY2
RET
;以下每个表格都是一句话,以00H作为每句话的结尾.
TABLE1: DB 20H,20H,20H,57H,45H,4CH,43H,4FH,4DH,45H,20H,54H,4FH,20H,20H,20H,20H,00H
TABLE2: DB 57H,57H,57H,2EH,41H,50H,30H,32H,30H,35H,35H,2EH,43H,4FH,4DH,20H,20H,00H
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -