ORG 0000H
RS EQU P3.7 ;確定具體硬件的連接方式
?
RW EQU P3.6 ;確定具體硬件的連接方式
?
E EQU P3.5 ;確定具體硬件的連接方式
?
MOV P1,#00000001B ;清屏并光標復位
?
ACALL ENABLE ;調(diào)用寫入命令子程序
?
MOV P1,#00111000B ;設(shè)置顯示模式,8位2行5X7點陣
?
ACALL ENABLE ;調(diào)用寫入命令子程序
?
MOV P1,#00001111B ;顯示器開、光標開、光標允許閃爍
?
ACALL ENABLE ;調(diào)用寫入命令子程序
?
MOV P1,#00000110B ;文字不動,光標自動右移
?
ACALL ENABLE ;調(diào)用寫入命令子程序
?
MOV P1,#0C0H ;寫入顯示起始地址(第二行第一個位置)
?
ACALL ENABLE ;調(diào)用寫入命令子程序
?
MOV P1,#01000001B ;字母A的代碼
?
SETB RS ;RS=1
?
CLR RW ;RW=0 ;準備寫入數(shù)據(jù)
?
CLR E ;E=0 ;執(zhí)行顯示命令
?
ACALL DELAY ;判斷液晶模塊是否忙?
?
SETB E ;E=1 ;顯示完成,程序停車
?
AJMP $
ENABLE:
CLR RS ;寫入控制命令的子程序
?
CLR RW
CLR E
ACALL DELAY
SETB E
RET
DELAY:
MOV P1,#0FFH ;判斷液晶顯示器是否忙的子程序
?
CLR RS
SETB RW
CLR E
NOP
SETB E
JB P1.7,DELAY ;如果P1.7為高電平表示忙就循環(huán)等待
?
RET
END