📄 p12_1.asm
字号:
RS EQU P3.0
RW EQU P3.1
E EQU P3.2
LCD EQU P2
BF EQU P2.7
ORG 0000H
LJMP MAIN
ORG 2000H
MAIN: MOV A, #00000001B ;清除屏幕
ACALL W_CMD
MOV A, #00111000B ;16*2显示
ACALL W_CMD
MOV A, #00001111B ;开显示,有光标,有闪烁
ACALL W_CMD
MOV A, #00010100B ;文字不动,光标自动由移
ACALL W_CMD
MOV A, #80H ;第一行第一个字符的位置
ACALL W_CMD
MOV DPTR, #TAB
MOV R0, 0
LOOP1: MOV A, R0
MOVC A, @A+DPTR
ACALL W_DATA
INC R0
CJNE R0, #6, LOOP1
MOV A, #0C0H ;设置第二行的起始位置
ACALL W_CMD
LOOP2: MOV A, R0
MOVC A, @A+DPTR
ACALL W_DATA
INC R0
CJNE R0, #14, LOOP2
LOOP: AJMP LOOP
TAB: DB 'Hello!'
DB 'Welcome!'
WAIT: MOV LCD, #0FFH ;令P2作输入口使用
CLR RS
SETB RW
CLR E
NOP
SETB E
JB BF, WAIT
RET
;入口参数A
W_CMD: ACALL WAIT
MOV LCD, A
CLR RS
CLR RW
SETB E
NOP
CLR E
RET
;入口参数A
W_DATA: ACALL WAIT
MOV LCD, A
SETB RS
CLR RW
SETB E
NOP
CLR E
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -