LCD汇编程序示例lm016l文档格式.docx
《LCD汇编程序示例lm016l文档格式.docx》由会员分享,可在线阅读,更多相关《LCD汇编程序示例lm016l文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
数据口写地址
DR_AddEQU8300H;
数据口读地址
ORG0000H
MAIN:
MOVSP,#60H
MOVA,#30H;
功能指令设置
MOVDPTR,#CW_Add
MOVR2,#03H
L1:
MOVX@DPTR,A
LCALLDELAY
DJNZR2,L1
MOVCOM,#38H;
设置工作方式
LCALLPR1
MOVCOM,#01H;
清屏
MOVCOM,#06H;
设置输入方式
MOVCOM,#0FH;
设置显示方式
MOVCOM,#80H;
设置DDRAM地址00H
MOVDPTR,#TAB
MOVR2,#12;
显示前8位
MOVR3,#00
WRIN:
MOVA,R3
MOVCA,@A+DPTR
MOVDAT,A
LCALLPR2
INCR3
DJNZR2,WRIN
SJMP$
;
-------写指令代码子程序---------
PR1:
PUSHDPH
PUSHDPL
PUSHACC
MOVDPTR,#CR_ADD
PR11:
MOVXA,@DPTR
JB,PR11
MOVA,COM
MOVDPTR,#CW_ADD
MOVX@DPTR,A
POPACC
POPDPL
POPDPH
RET
--------写显示数据子程序----------
PR2:
PUSHDPH
PR21:
MOVXA,@DPTR
JB,PR21
MOVA,DAT
MOVDPTR,#DW_ADD
DELAY:
MOVR6,#00H
MOVR7,#00H
DELAY1:
NOP
DJNZR7,DELAY1
DJNZR6,DELAY1
TAB:
DB43H,75H,72H,73H,6FH,72H,20H;
Cursor
DB57H,72H,69H,74H,65H;
write
END
----------逐字依次输入,两行显示方式-----------
ORG0000H
MOVR2,#03H
L1:
DJNZR2,L1
LCALLPR1
LCALLPR1
MOVCOM,#0fH;
MOVDPTR,#TAB
MOVR2,#07;
MOVR3,#00H
MOVDAT,A
LCALLPR2
LCALLDELAY
INCR3
DJNZR2,WRIN
MOVCOM,#0C0H;
设置DDRAM地址40H
MOVR2,#05H;
显示后4位
WRIN1:
MOVCA,@A+DPTR
LCALLDELAY
DJNZR2,WRIN1
SJMPMAIN
----------光标左移输入,两行显示方式-----------
COMEQU20H
DATEQU21H
CW_ADDEQU8000H
CR_ADDEQU8200H
DW_ADDEQU8100H
DR_ADDEQU8300H
MOVCOM,#04H;
设置输入方式,减方式
MOVCOM,#0C5H;
设置DDRAM地址44H
MOVR2,#05;
显示后5位
MOVR3,#11;
从第12位开始显示
DECR3
MOVCOM,#87H;
设置DDRAM地址07H
MOVR2,#08H;
显示前8位
----------左滚动输入方式-----------
MOVCOM,#0EH;
MOVCOM,#07H;
设置输入方式,画面滚动
MOVCOM,#8cH;
MOVR2,#012;
显示前7位
SJMP$