sdin bit p0.1 ;数据
sclk bit p0.0 ;时钟
dc bit p0.2 ;1写数据,0写指令
sce bit p0.3 ;片选
res bit p0.4 ;复位,0复位
xadd data 30h ;0-83
yadd data 31h ;0-5
org 0000h
LJMP start
start: clr res ;复位显示屏
clr res
clr res
clr res
nop
nop
setb res
mov a,#00100001b ;功能设定,使用扩充指令
lcall enable ;写指令
mov a,#10011001b ;设定液晶偏置电压
lcall enable ;写指令
mov a,#00100000b ;使用基本指令
lcall enable ;写指令
mov a,#00001101b ;设定显示模式,正常显示
lcall enable ;写指令
lcall deldisp ;清屏
mov xadd,#00h ;
mov yadd,#00h ;
lcall setadd ;设定显示地址
mov dptr,#tab
loop: mov a,#00H
movc a,@a+dptr
mov r5,a
call write
inc dptr
mov a,r5
cjne a,#0ddh,loop
JMP $
setadd: mov a,xadd
orl a,#40h
call enable
mov a,yadd
orl a,#80h
lcall enable
ret
deldisp:mov r0,#6 ;清屏子程序
deld1: mov r1,#84
deld2: mov a,#00h
lcall write
djnz r1,deld2
djnz r0,deld1
ret
enable: clr dc ;写指令
write: clr sce ;写数据
mov r7,#08h
toto: clr sclk
rlc a
mov sdin,c
nop
nop
setb sclk
djnz r7,toto
setb dc
setb sce
ret
tab:DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH;
DB 7CH,10H,00H,00H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,00H,80H,80H,00H;
DB 80H,0C0H,0E0H,0E0H,0C0H,0C0H,0C0H,0C0H;
DB 80H,80H,00H,00H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,0FFH,0FFH,0FFH,0FFH;
DB 3FH,0FH,0FH,06H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,60H,60H,70H,78H;
DB 0F8H,0F8H,0FCH,0F8H,0F8H,0FCH,0FEH,0FEH;
DB 0FFH,0FFH,7FH,3FH,3FH,3FH,1FH,1FH;
DB 1FH,1FH,1FH,1FH,1FH,5FH,5FH,5FH;
DB 5EH,5EH,0FCH,0FCH,0F8H,0F0H,0E0H,0C0H;
DB 80H,00H,00H,00H,00H,00H,00H,00H;
DB 0FFH,0F7H,0F3H,0E0H,0E0H,00H,00H,00H;
DB 00H,20H,70H,0F0H,30H,20H,00H,40H;
DB 00H,0C0H,0C0H,0C0H,00H,00H,00H,00H;
DB 00H,00H,00H,00H,00H,00H,0C0H,0C0H;
DB 0C0H,0C0H,0C0H,0C0H,0C8H,0C0H,0C0H,0C0H;
DB 0C0H,0E0H,0F0H,0F0H,0F0H,0E0H,0F3H,0FBH;
DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FEH,0FCH;
DB 0F8H,0FCH,0F6H,0F6H,0F6H,0FCH,0FCH,0FCH;
DB 0FCH,0FEH,0FEH,0FEH,0FEH,0FEH,0FFH,0FFH;
DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FEH,00H,00H;
DB 00H,00H,30H,10H,0FFH,0F7H,0FFH,0FFH;
DB 0FFH,0FEH,0FFH,0FFH,0FEH,0FCH,0F8H,0F8H;
DB 0F8H,0F0H,0F0H,0F0H,0F3H,0F7H,61H,0E0H;
DB 0C0H,0C0H,80H,80H,00H,00H,00H,00H;
DB 00H,00H,00H,01H,03H,07H,0FH,0FH;
DB 1FH,3FH,3FH,7FH,0FFH,0FFH,3FH,01H;
DB 18H,18H,0CH,0FH,1FH,1FH,3FH,3FH;
DB 3FH,1FH,1FH,9FH,9FH,9FH,0DFH,0FFH;
DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH;
DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH;
DB 7FH,0FFH,0FFH,0FCH,0FCH,0E0H,0C0H,00H;
DB 0FFH,0FCH,0FEH,0FFH,0FFH,3FH,1FH,1FH;
DB 0FFH,0BFH,0FFH,0FDH,0FFH,0F7H,0E7H,0F2H;
DB 0FCH,0EFH,0EBH,0FBH,89H,0ADH,7DH,0DCH;
DB 0DCH,0FCH,0FCH,0FCH,0FEH,0FEH,0FEH,0FFH;
DB 0FFH,0FCH,0FCH,0F8H,0F0H,0E0H,0E0H,0C0H;
DB 0C0H,80H,00H,00H,00H,00H,00H,00H;
DB 00H,00H,10H,12H,13H,93H,93H,99H;
DB 89H,0C9H,0C9H,0F9H,0F9H,0FDH,0FDH,0FDH;
DB 0FFH,0FFH,0FFH,7FH,3FH,3FH,0FH,8FH;
DB 87H,0C3H,0F1H,0F8H,0FEH,0FFH,0FFH,0FFH;
DB 0FFH,0FFH,0FFH,0FCH,0F7H,7FH,0FAH,0FDH;
DB 0FEH,0FEH,0FFH,0FFH,0FFH,0FEH,0FFH,0FFH;
DB 0FBH,0FDH,0FFH,0FFH,0FDH,0FDH,0F9H,0FFH;
DB 0FEH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH;
DB 0FFH,7FH,7FH,3FH,3FH,1FH,1FH,0FH;
DB 0FH,07H,07H,07H,03H,03H,03H,00H;
DB 00H,00H,00H,00H,01H,01H,03H,03H;
DB 03H,07H,07H,07H,03H,03H,03H,07H;
DB 03H,03H,03H,03H,01H,0C1H,0E0H,0F8H;
DB 0F8H,0FEH,0FEH,7FH,3FH,1FH,1FH,3FH;
DB 3FH,3FH,7FH,7FH,7FH,3FH,1FH,07H;
DB 0DDH
end