很想和bg4uvr讨论这个问题
这是一段用1602液晶显示一个字母“a”的程序,我已经在试验板上试过,大写部分可以用括号中的命令,也可以不使用括号中的命令,最后显示的效果是一样的,也就是说的确有2种时序可以达到同一目的,希望能有高手对这种情况作出解释。
rs equ p2.0
rw equ p2.1
e equ p2.2
sj equ p0
org 030h
lcall delay
mov sj,#38h
acall enable
mov sj,#38h
acall enable
mov sj,#38h
acall enable
mov sj,#38h
acall enable
mov sj,#08h
acall enable
mov sj,#01h
acall enable
mov sj,#06h
acall enable
mov sj,#0ch
acall enable
main:
mov sj,#80h
acall enable
mov dptr,#table
acall write
ljmp main
enable:
clr rs
clr rw
clr e(setb e)
acall delay
setb e(clr e)
ret
write:
mov a,#00h
movc a,@a+dptr
mov sj,a
setb rs
clr rw
clr e(setb e)
call delay
setb e(clr e)
ret
delay:
mov r7,#255
d1:mov r6,#255
d2:djnz r6,d2
djnz r7,d1
ret
table:db"a"
end