?? 1602
字號:
;****************************************************************
;* ★★★ 1602液晶模塊測試程序 ★★★ *
;* 『電子驛站單片機實驗板、開發(fā)板配套例程,程序轉(zhuǎn)載請著明出處』 *
;* E-mail: support@ourmpu.com QQ留言:451338254 476485321 *
;* 編程:ourmpu http://www.ourmpu.com/ 更多例程請登陸網(wǎng)站 *
;****************************************************************
;* 液晶模塊第一行顯示的是本站聯(lián)系電話“"Welcome!"” *
;* 液晶模塊第二行顯示的是本站域名“www.ourmpu.com” *
;****************************************************************
RS EQU P2.0
RW EQU P2.1
E EQU P2.2
LCD EQU P0
org 00h
ajmp main
org 030h
main:
mov sp,#60h
main1:
lcall delay ;延時一段時間
MOV LCD,#38H ;
ACALL ENABLE ;寫指令38H
MOV LCD,#38H ;
ACALL ENABLE ;寫指令38H
MOV LCD,#38H ;
ACALL ENABLE ;寫指令38H
MOV LCD,#38H ;
ACALL ENABLE ;寫指令38H
MOV LCD,#08H ;
ACALL ENABLE ;寫指令08H
MOV LCD,#01H ;
ACALL ENABLE ;寫指令01H
MOV LCD,#06H ;
ACALL ENABLE ;寫指令06H
MOV LCD,#0cH ;
ACALL ENABLE ;寫指令0CH
MOV LCD,#80H ;第一行顯示第一個字符的位置
ACALL ENABLE ;調(diào)用寫指令
mov dptr,#table3 ;第一行表頭位置
call write1 ;調(diào)用第一行寫子程序
mov LCD,#0c0h ;第二行位置
call enable ;調(diào)用寫指令
mov dptr,#table2 ;第二行表頭位置
call write1 ;調(diào)用第二行寫子程序
jmp main1 ;返回主程序不斷的循環(huán)
ENABLE: ;寫命令時序(參照1602LCD使用說明書)
CLR RS
CLR RW
CLR E
ACALL DELAY
SETB E
RET
write1: ;寫字符串
mov r1,#00h ;將R1清0
a1:mov a,r1 ;把R1的值送到ACC
movc a,@a+dptr ;查表取將顯示的數(shù)據(jù)并把要顯示的數(shù)送入ACC
call write2 ;調(diào)用寫程序?qū)懭雴蝹€字節(jié)
inc r1 ;將工作寄存器指針加一
cjne r1,#10h,a1 ;R1的內(nèi)容加到16后就返回到a1處
ret ;
write2: ;寫單個字符
mov LCD,a ;寫數(shù)據(jù)到顯示端口
setb rs ;寫數(shù)據(jù)時序(請參照1602LCD使用說明書)
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
table3: DB 20H,20H,20H,20H,57H,65H,6CH,63H,6FH,6DH,65H,21H,20H,20H,20H,20H
table2: DB 20H,77H,77H,77H,2EH,6FH,75H,72H,6DH,70H,75H,2EH,63H,6FH,6DH,20H
end
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -