◇任务要求◇
学习RTC1602液晶模块的显示原理和使用方法,在1602液晶的第一行显示字符“welcome!”,第二行显示当天的日期,例如:2020-05-01。
◇任务准备◇
一、RTC1602液晶简介
字符型液晶显示模块RTC1602是专门用于显示字母﹑数字﹑符号等的点阵型液晶显示模块。RTC1602能够显示两行,每行可显示16个字符。
MCU04显示模块中的RTC1602模块外观结构如图5-1所示。
图5-1 RTC1602液晶模块
二、RTC1602主要硬件构成
字符型液晶显示模块RTC1602内部主要由LCD显示屏﹑控制器﹑驱动器和偏压产生电路构成。图5-2所示为RTC1602的结构框图。
图5-2 RTC1602的结构框图
字符型液晶显示模块RTC1602的接口定义如表5-1所示。
表5-1 RTC1602模块的接口定义
续表
三、RTC1602的控制寄存器
1.指令寄存器(IR)
指令寄存器存储单片机要发送给LCD的指令码。
2.数据寄存器(DR)
数据寄存器存储写入DDRAM或CGRAM的数据,或者要从DDRAM或CGRAM读出的数据。
3.忙标志(BF)
忙标志BF=1时,表明模块正在进行内部操作,此时不接受任何外部指令和数据。每次操作之前最好先进行状态字检测,只有确认BF=0之后,单片机才能访问模块。
4.地址计数器(AC)
地址计数器是DDRAM或者CGRAM的地址指针。随着IR中指令码的写入,指令码中携带的地址信息会自动送入AC中,并做出AC作为DDRAM的地址指针还是CGRAM地址针的选择。
AC具有自动加1或者减1的功能。当DR与DDRAM或者CGRAM之间完成一次数据传送后,AC会自动加1或减1。
5.显示数据寄存器(DDRAM)
显示数据寄存器存储显示字符的字符码,能存储80个字符。
6.字符产生器(CGROM)
字符产生器存储了192个5×7点阵字符和32种5×10点阵字符,每个字符分别与8位字符编码对应。例如,查表可知大写的英文字“P”对应的8位字符编码为01010000B(0x50),显示时将地址为0x50单元中的点阵字符图形显示出来,这样就形成了“P”的图形。
7.字符产生器(CGRAM)
根据实际的需要,用户可以存储特殊的字符码。
四、RTC1602的指令系统
单片机是通过控制H4730来控制RTC(1602)进行显示的。控制指令有9种,各种指令格式及功能说明见表5-2。
表5-2 RTC1602指令表
指令说明:
(1)清屏。
(2)归位。
功能描述:清地址计数器 AC=0;将光标及光标所在位的字符返回原点;DDRAM 中的内容不改变。
(3)设置输入模式。
功能描述:设置光标﹑显示画面移动方向。
① I/D:地址指针AC变化方向标志。
I/D=1时,读写一个字符后,地址计数器AC自动加1;
I/D=0时,读写一个字符后,地址计数器AC自动减1。
② S:显示移位标志。
S=1时,写入一个字符后全部显示向左(I/D=1)移动或者向右(I/D=0)移动;
S=0时,写一个字符显示不发生位移。
(4)显示开关控制。
功能描述:设置光标﹑显示画面移动方向。
①D:显示开/关控制标志。D=1,开显示;D=0,关显示。
关显示后,显示数据仍保持在 DDRAM 中,立即开显示可以再现。
②C:光标显示控制标志。C=1,光标显示;C=0,光标不显示。
不显示光标并不影响模块其他显示功能。
③B:闪烁显示控制标志。B=1,光标闪烁;B=0,光标不闪烁。
(5)设置显示模式。
(www.daowen.com)
功能描述:设置模块的显示方式。我们在以后的项目中固定显示模式为16×2﹑5×7的点阵,8位数据总线。
(6)设置数据指针。
功能描述:设置 DDRAM 地址指针。它将 DDRAM 存储显示字符的字符码的首地址送入地址计数器AC 中,于是显示字符的字符码就可以写入 DDRAM 中或者从 DDRAM 中读出。
RTC1602有两行,每行有40个地址,我们只取前16个就可以了。要想在正确的位置显示字符,必须在地址前加上80H。例如,我们要在DDRAM的01H地址处显示字符“A”,那么地址数据为80H +01H,即81H。向81H中写入数据0×41H(A的代码),这样就能在DDRAM的01H处显示字符“A”。
(7)BF读忙标志。
功能描述:当 RS=0和 R/W=1 时,在E 信号高电平的作用下,BF和 AC6~AC0 被读到数据总线 DB7~DB0 的相应位,通过BF的值来判断模块的工作状态。
BF=1,表示模块正在进行内部操作,此时模块不接收任何外部指令和数据,直到BF=0 为止。
(8)写数据。
功能描述:写数据到DDRAM中。
(9)读数据。
功能描述:从DDRAM中读取数据。
五、RTC1602的读写操作
从图5-3中可以看出,对RTC1602写操作过程为:R/W端为0;RS端根据写指令或写数据,分别设置为0﹑1;单片机准备好数据DB0~DB7后,在E端产生下降沿,RTC1602锁定数据。
图5-3 RTC1602的写操作时序图
从图5-4中可以看出,对RTC1602读操作过程为:R/W端为1;RS端根据读状态或读数据,分别设置为0﹑1;E端变为1,RTC1602输出数据,单片机可读取数据DB0~DB7;E端变为0,此后数据输出无效。
图5-4 RTC1602的读操作时序图
◇任务实施◇
一、硬件电路搭建
本项目需在YL-236型单片机实训平台上选用四个模块:主机模块﹑电源模块﹑指令模块和显示模块,搭建RTC1602显示系统。
(1)模块选择如表5-3所示。
表5-3 本任务所需模块
(2)工具和器材如表5-4所示。
表5-4 本任务所需工具和器材
续表
(3)电路搭建。
结合YL-236型单片机实训平台主机模块和显示模块,按照图5-5所示电路接线。
图5-5 硬件接线图
二、程序代码的编写、编译
(1)启动Keil C51编程软件,新建工程﹑文件并均以“1602”为名保存在文件夹中。
(2)在1602.c文件的文本编辑器窗口中输入程序代码。
(3)编译源程序,排除程序输入错误,生成1602.hex文件。
参考程序:
三、系统调试
系统调试的步骤如下:
(1)使用程序下载专配USB线将计算机的USB接口与单片机主机模块程序下载接口连接起来。
(2)打开电源总开关,启动程序下载软件,下载可执行文件至单片机中。
(3)按下任意独立按键,并观察数码管显示情况,若实现任务要求,则系统调试完成;否则,需要进行故障排除。
◇任务评价◇
一、工艺性评分标准
工艺性评分标准如表5-5所示。
表5-5 工艺性评分标准
二、功能评分标准
功能评分标准如表5-6所示。
表5-6 功能评分标准
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。