用单片机控制字符型液晶显示模块资料Word格式文档下载.docx

上传人:b****2 文档编号:1541742 上传时间:2023-04-30 格式:DOCX 页数:24 大小:297.66KB
下载 相关 举报
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第1页
第1页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第2页
第2页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第3页
第3页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第4页
第4页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第5页
第5页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第6页
第6页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第7页
第7页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第8页
第8页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第9页
第9页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第10页
第10页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第11页
第11页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第12页
第12页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第13页
第13页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第14页
第14页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第15页
第15页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第16页
第16页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第17页
第17页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第18页
第18页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第19页
第19页 / 共24页
用单片机控制字符型液晶显示模块资料Word格式文档下载.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

用单片机控制字符型液晶显示模块资料Word格式文档下载.docx

《用单片机控制字符型液晶显示模块资料Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《用单片机控制字符型液晶显示模块资料Word格式文档下载.docx(24页珍藏版)》请在冰点文库上搜索。

用单片机控制字符型液晶显示模块资料Word格式文档下载.docx

控制光标的开与关,高电平表示有光标,低电平表示无光标B:

控制光标是否闪烁,高电平闪烁,低电平不闪烁

指令5:

光标或显示移位S/C:

高电平时移动显示的文字,低电平时移动光标

指令6:

功能设置命令DL:

高电平时为4位总线,低电平时为8位总线N:

低电平时为单行显示,高电平时双行显示F:

低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符

指令7:

字符发生器RAM地址设置

指令8:

DDRAM地址设置指令9:

读忙信号和光标地址BF:

为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。

指令10:

写数据

指令11:

读数据

第一节字符型液晶显示模块的软件特性

在上一节已经叙述了字符型液晶显示模块电路特性,由于电路特性决定了字符型液晶员

示模块的软件特性实际上就是HD44780U的软件功能。

HD44780U有8条指令,指令裕时

常简单。

指令一览表如下表所示。

HD447800指令一格装

指令名称

控制信号

控制代码

D/IR/W

D7D6D5D4D3D2D1D0

清屏

00

00000001

归home位

0000001*

输入方式设置

000001I/DS

显示状态设置

00001DCB

光标画面滚动

0001S/CR/L**

工作方式设置

001DLNF**

CGRAM地址设置

01A5A4A3A2A1A0

DDRAM地址设置

1A6A5A4A3A2A1A0

读BF和AC

01

BFAC6AC5AC4AC3AC2AC1AC0

写数据

10

数据

读数据

11

注;

“*”表示任意值,在实际应用时一般认为是“0”。

指令详细解释如下:

●清屏(ClearDisPlay)

格式

1

01H

该指令完成下列功能:

将空码(20H)写入DDRAM的全部80个单元内;

将地址指针计数器AC清零,光标或闪烁归home位;

设置输入方式参数I/D=1,即地址指针AC为自动加一输入方式。

该指令多用于上电时或更新全屏显示内容时。

在使用该指令之前要确认DDRAM的当前内容是否有用。

●归home位(Returnhome)

02H

该指令将地址指针计数器AC清零。

执行该指令的效果有;

将光标或闪烁位返回到显示屏的左上第一字符位上,即DDRAM地址00H单元位置;

这是因为光标和闪烁位都是以地址指针计数器AC当前值定位的。

如果画面已滚动,则撤消滚动效果,将画面拉回到home位。

●输入方式设置(EnterModeSet)

I/D

S

04H-07H

该指令的功能在于设置了显示字符的输入方式,即在计算机读/写DDRAM或CGRAM后,地址指针计数器AC的修改方式,反映在显示效果上,当写入一个字符后画面或光标的移动。

该指令的两个参数位1/D和S确定了字符的输入方式。

I/D表示当计算机读/写DDRAM或CGRAM的数据后,地址指针计数器AC的修改方式,由于光标位置也是由AC值确定,所以也是光标移动的方式。

I/D=0AC为减1计数器,光标左移一个字符位。

I/D=1AC为加1计数器,光标右移一个字符位。

S表示在写入字符时,是否允许显示画面的滚动。

S=0禁止滚动。

S=1允许滚动。

S=1且I/D=O显示画面向右滚动一个字符位。

S=1且I/D=1显示画面向左滚动一个字符位。

●显示状态设置(Displayon/offControl)

D

C

B

08H-0FH

该指令控制着画面,光标及闪烁的开关。

该指令有三个状态位D、C、B,这三个状态位分别控着画面,光标和闪烁的显示状态。

D画面显示状态位。

当D=1时为开显示,D=0时为关显示。

注意关显示仅是画面不

出现,而DDRAM内容不变。

这与清屏指令截然不同。

C光标显示状态位。

当C=1时为光标显示,C=0时为光标消失。

光标为底线形式(5

×

1点阵),出现在第八行或第十一行上。

光标的位置由地址指针计数器AC确定

,并随其变动而移动。

当AC值超出了画面的显示范围,光标将随之消失。

B闪烁显示状态位。

当B=l时为闪烁启用,B=0时为闪烁禁止。

闪烁是指一个字符位

交替进行正常显示态和全亮显示态,闪烁频率在控制器工作频率为250kHz时为

2.4Hz。

闪烁位置同光标~样受地址指针计数器AC的控制。

闪烁出现在有字符或光标显示的字符位时,正常显示态为当前字符或光标的显示;

全亮显示态为该字符位所有点全显示。

若出现在无字符或光标显示的字符位时,正常显示态为无显示,全亮显示态为该字符位所有点全显示。

这种闪烁方式可以设计成块光标,如同计算机CRT上块状光标闪烁提示符的效果。

●光标或画面滚动(CursorOrInsplayShift)

S/C

R/L

执行该指令将产生画面或光标向左或向右滚动一个字符位。

如果定时间隔地执行该指令将产生画面或光标的平滑滚动。

画面的滚动是在一行内连续循环进行的,也就是说一行的第一单元与最后一个单元连接起来,形成了闭环式的滚动。

当未开光标显示时,执行画面滚动指令时不修改地址指针计数器AC值;

有光标显示时,由于执行任意一条滚动指令时都将使光标产生位移,所以地址指针计数器AC都需要被修改。

光标的滚动是在DDRAM内全程进行的,它不分是一行显示还是两行显示。

如果用光标的指针——地址指针计数器AC加一和减一功能来解释,就能理解光标从第1显示位左移至第80显示位,或从第80显示位右移至第1显示位原理了。

光标的滚动功能可以用于搜寻需要修改的显示字符。

该指令有两个参数位:

S/C滚动对象的选择

S/C=l画面滚动

S/C=0光标滚动

R/L滚动方向的选择

R/L=l向右滚动

R/L=0向左滚动

该指令与输入方式设置指令都可以产生光标或画面的滚动,区别在于该指令专用于滚动功能,执行一次,显示呈现一次滚动效果;

而输入方式设置指令仅是完成了一种字符输入方式的设置,仅在计算机对DDRAM等进行操作时才能产生滚动的效果。

●工作方式设置(FunctionSet)

DL

N

F

该指令设置了控制器的工作方式,包括有控制器与计算机的接口形式和控制器显示驱动的占空比系数等。

该指令有三个参数DL,N和F.它们的作用是:

DL设置控制器与计算机的接口形式。

接口形式体现在数据总线长度上。

DL=1设置数据总线为8位长度,即DB7~DBO有效。

DL=0设置数据总线为4位长度,即DB7~DB4有效。

在该方式下8位指令代码

和数据将按先高4位后低4位的顺序分两次传输。

N设置显示的字符行数。

N=0为一行字符行。

N=1为两行字符行。

F设置显示字符的字体。

F=0为5×

7点阵字符体。

F=1为5×

10点阵字符体。

该指令可以说是字符型液晶显示控制器的初始化设置指令,也是唯一的软件复位指令。

HD44780U虽然具有复位电路,但为了可靠的工作,HD44780U要求计算机在征作HD44780U时首先对其进行软件复位。

也就是说在控制字符型液晶显示模块工作时首先要进行的软件复位。

●CGRAM地址设置(SetCGRAMAddress)

A5

A4

A3

A2

A1

A0

该指令将6位的CGRAM地址写入地址指针计数器AC内,随后计算机对数据的操作是对CGRAM的读/写操作。

●DDRAM地址设置(SetDDRAMAddress)

A6

该指令将7位的DDRAM地址写入地址指针计数器AC内,随后计算机对数据的操作是对DDRAM的读/写操作。

●读“忙”标志和地址指针值(ReadBusyFlagandAddress)

BF

AC6

AC5

AC4

AC3

AC2

AC1

AC0

计算机对指令寄存器通道读操作(RS=0,R/W=l)时,将读出此格式的“忙”标志BF值和7位地址指针计数器AC的当前值。

计算机随时都可以对HD44780U读“忙”操作。

BP值反映HD4478OU的接口状态。

计算机在对HD44780U每次操作时首先都要读BF值判断HD44780U的当前接口状态,仅有在BF=01时计算机才可以向HD44780U写指令代码或显示数据和从HD44780U读出显示数据。

计算机读出的地址指针计数器AC当前值可能是DDRAM地址也可能是CGRAM的地址,

这取决于最近一次计算机向AC写入的是哪类地址。

●写数据(WhteDatatoCGorDDRAM)

计算机向数据寄存器通道写入数据,HD44780U根据当前地址指针计数器AC值的属性及数值将该数据送入相应的存储器内的AC所指的单元里。

如果AC值为DDRAM地址指针,则认为写人的数据为字符代码并进入DDRAM内AC所指的单元里;

如果AC值为CGRAM的地址指针,则认为写入的数据是自定义字符的字模数据并送入CGRAM内AC所指的单元里。

所以计算机在写数据操作之前要先设置地址指针或人为的确认地址指针的属性及数值。

在写人数据后地址指针计数器AC将根据最近设置的输入方式自动修改。

由此可知,计算机在写数据操作之前要作两项工作,其一是设置或确认地址计数器AC值的属性及数值,以保证所写数据能够正确到位;

其二是设置或确认输入方式,以保证连续写入数据时AC值的修改方式符合要求。

●读数据(ReadDatafromCGorDDRAM)

在HD44780U的内部运行时序的操作下,地址指针计数器AC的每一次修改,包括新的AC值的写入,光标滚动位移所引起的AC值的修改或由计算机读写数据操作后所产生的AC值的修改,HD44780U都会把当前AC所指单元的内容送到接口部数据输出寄存器内,供计算机读取。

如果AC值为DDRAM地址指针,则认为接口部数据输出寄存器的数据为DDRAM内AC所指单元的字符代码;

如果AC值为CGRAM的地址指针,则认为数据输出寄存器的数据是CGRAM内AC所指单元的自定义字符的字模数据。

计算机的读数据是从数据寄存器通道中数据输出寄存器读取当前所存放的数据。

所以计算机在首次读数据操作之前需要重新设置一次地址指针AC值,或用光标滚动指令将地址指针计数器AC值修改到所需的地址上,然后进行的读数据操作将能获得所需的数据。

在读取数据后地址指针计数器AC将根据最近设置的输入方式自动修改。

由此可知,计算机在读数据操作之前要作两项工作,其一是设立或确认地址计数器AC值的属性及数值,以保证所读数据的正确性;

其二是设置或确认输入方式,以保证连续读取数据时AC值的修改方式符合要求。

1602液晶显示器模块样板:

1602液晶显示器的数据存储器对应的位:

1602液晶显示器字库:

液晶显示器的基本电路图:

第二节应用举例

初始化程序举例;

ORG0000H

LJMPKKoO

KKOO:

LCALLWatB

MOVp3,#OFOH

MOVRO,#03H

KK01:

CLRP3.0;

RS=O

CLRP3.1;

R/W=0

MOVP1,#30H

SETBP3.2;

E=1

CLRP3.2;

E=0

LCALLWAITB

DJNZRO,KK01

LCALLWAITB

MOVA,#38H

LCALLWRCA

MOVA,#08H;

OFF-DSW

MOVA,#01H;

DEL-DSIP

MOVA,#O6H

LCALLWRCA

MOVA,#10H

MOVA,#0CH;

ON-DISP

WAITA:

PUSH00H

MOVRO,#19H

WAA00:

DJNZRO,WAA00

POP00H

RET

WAITB:

PUSH0lH

PUSH02H

MOVRZ,#01H

WAB03:

MOVRO;

#OFFH

WAB01:

MOVR1,#OFFH

WAV02;

DJNZR1,WAB02

DJNZRO,WAB01

DJNZR2,WAB03

POP02H

POP01H

WRCA:

NOP

LCALLWAITA

CLRP3.0

CLRP3.1

SETBP3.2

MOVP1,A

CLRP3.2

例一:

检查DMC16230的忙标志

操作:

将“读忙“功能编成子程序,以便以后操作时使用该子程序

RDBUSY:

PUSHACC

PUSH00H

MOVRO,#12H

RDSS:

MOVXA,@RORLCAJCRDBSPOP00HPOPACCRET例二:

操作:

此程序可用于更新显示

CLRDSP;

MOVRO,#10H

MOVA,#OIH

ACALLRDBUSY

MOVX@R0,A

例三:

系统设置

操作:

由于DMC16230为16位字符X2行,故应设置成8位数据总线,显示两行5×

7点阵字符.其程序为:

SYSSET;

MOVRO,#10H

MDVX@RO,A

例四:

设置光标移动方式,自动地址为增量方式

MODSET:

MOVRO,#10H

MOVA,#06H

MOVX@RO,A

例五:

开启显示器,显示光标,且使光标闪烁.

DSPON:

MOVA,#0FH

例六:

将“WELCOMETOLCDWORLD“分两行显示在LCD上.然后左移至出屏幕.

分析:

应按以下5个步骤进行操作.

①建立显示缓冲区:

将8031内部RAM的30H~3FH作为第一杆行字符的显示缓冲区.与之对应的DMC16230地址为80H~8FH;

将8031内部RAM的40H~4FH作为第二行字符显示缓冲区,与之时应的DMC16230的地址为COH~CFH.

②将“WELCOMETOLCDWORLD!

”的ASCII码送至显示缓冲区

③设置DMC16230的系统方式

④将缓冲区内容送至显示屏显示

⑤将显示器内容左移16次

操作软件:

STARTMOVDPTR,#CHATABMOVX@RO,A

MOVR7,#32INCR1

MOVR1,#30HDJNZR7,DSPND

DSPBUF:

CLRAMOVR7,#10

MOVCA,@A+DPTRDlY10ACALLDELAY

MOV@R1,ADJNZR7,DLY10

INCDPTRMOVRO,#10H

INCR1M0V,R7,#16

DJNZR7,DSPBUFMOVA,#18H

MOVA,#38HSHIFT:

MOVRO,#10HMOVX@RO,A

ACALLRDBUSYACALLDELAY

MOVX@R0,ADJNZR7,SHIFT

MOVA,01HAJMPSTART

ACALLRDBUSYDELAY:

MOVR5,#OFFH

MOVX@RO,ADL1:

MOVR6,#OFFH

MOVR7,#16DL2;

DJNZR6,DL2

MOVR1,#30HDJNZR5,DL1

MOVRO,#12HRET

DISPIST:

MOVA,@R1RDBUSY:

(略)

ACALLRDBUSYCHATAB:

DB57H,45H,4CH,43H

MOVX@RO,ADB4FH,4DH,45H,20H

INCR1DB44H,4FH,20H,20H

DJNZR7,DSPISTDB20H,20H,20H,20H

MOVRO:

#l0HDB2OH,2OH,2OH,20H

MOVA,#OCOHDB20H,4CH,43H,44H

ACALLRDBUSYDB20H,57H,4FH,52H

MOVX@R0,ADB4CH,44H,2OH,21H

MOVR7,#16END

MOVRO,#12H例七:

将‘中”字显示在屏幕左上角

DSPIND:

MOVA,@R1分析;

本例关因是将‘中”字写入自编字库

ACALLRDBUSYCGRAM

操作;

START:

MOVA,#38HINCR1

MOVRO,#10HINCCDPTR

ACALLRDBUSYDJNZR7,WRCGRAM

MOVX@R0,AMOVRO,#1OH

MOVA,#01MMOVA,#80H

ACALLRDBUSYACALLRDBUSY

MOVX@R0,AMOVX@RO,#12H

M0VA,#OCHM0VA,#OOH

MDVX@RO,AMOVX@RO,A

M0VDPTR,#CGRAMAJMPSTART

MOVR7,#8RDBUSY;

PUSHACC

MOVR1,#4OHPUSH00H.

WRCGRAM:

MOVRO,#10HM0VRO,#11H

MOVA,R1RDBS:

MOVXA,@RO

ACALLRDBUSYRLCA

MOVX@RO,AJCRDBS

CLRAPOPOOHPOPACC

MOVCA,@A+DPTRRET

MOVRO,#12HCGRAM:

DBO4H,04H,1FH,15H

ACALLRDBUSYDB15H,IFH,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2