欢迎来到天天文库
浏览记录
ID:46638054
大小:2.05 MB
页数:17页
时间:2019-11-26
《项目61602液晶显示模块使用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1602液晶显示模块应用项目6:液晶显示模块LCD1602引脚号引脚名称引脚功能含义1VSS地管脚(GND)2VDD+5V电源管脚(Vcc)3VO液晶显示驱动电源(0V~5V),可接电位器4RS数据和指令选择控制端,RS=0:命令/状态;RS=1:数据5RW读写控制线,R/=0:写操作;R/=1:读操作6E数据读写操作控制位,E线向LCD模块发送一个脉冲,LCD模块与单片机之间将进行一次数据交换7~14D0~D7数据线,可以用8位连接,也可以只用高4位连接,节约单片机资源15A背光控制正电源16K背光控制地字符型LCD模块内部存储结构的划分LCD控制器HD44780内部有80字节
2、的显示数据存储器(显存),用于存储当前要求显示的字符ASCII码,各个存储单元与显示屏上的字符位相对应,其映射关系如图所示,需要注意的是第1行DDRAM地址与第2行DDRAM地址并不连续。如果在第二行的第3列显示字符‘E’,请问应如何操作?首先定位显示字符的光标位置,根据上图的地址映射可知,字符‘E’的显存地址为42H;然后得到字符‘E’的显示码为45H。将显示码45H写入DDRAM的42H单元,即可显示字符‘E’。字符型LCD模块控制命令字首先,LCD上电,都必须按照一定的时序进行初始化操作,主要任务是设置LCD的工作方式、显示状态、清屏、输入方式、光标位置等,使用命令字对LC
3、D进行初始化的流程如图所示,根据显示功能要求构造命令字,通过写命令操作完成命令字的写入时序。LCD初始延时15ms工作方式设置写指令显示开及光标状态设置清屏返回输入方式设置001DLNF**—设置单片机与LCD接口数据位数DL、显示行数N、字型FDL=1:8位、DL=0:4位;N=1:2行、N=0:1行F=1:5×10、F=0:5×700111000——38H00001DCB—设整体显示开关D、光标开关C、光标位的字符闪耀BD=1:开显示;C=0:不显示光标;B=0:光标位字符不闪烁00001100——0CH清屏命令字01H,将光标设置为第一行第一列000001I/DS—设光标移
4、动方向并确定整体显示是否移动I/D=1:增量方式右移、I/D=0:减量方式左移S=1:移位、S=0:不移位00000110——06HMCU对LCD模块的基本操作模式单片机对LCD模块有四种基本操作:写命令、写数据、读状态和读数据,由LCD1602模块三个控制引脚RS、R/和E的不同组合状态确定,如表5所示,结合读操作和写操作时序,编制软件输出控制引脚脉冲电平即可产生LCD读写访问时序。在进行写命令、写数据和读数据三种操作之前,必须先进行读状态操作,查询忙标志。当忙标志为0时,才能进行这三种操作。状态字格式如下,最高位的BF为忙标志位,1表示LCD正在忙,0表示不忙。通过判断最高位
5、BF的0、1状态,就可以知道LCD当前是否处于忙状态,如果LCD一直处于忙状态,则继续查询等待,否则可进行后面的操作。BFAC6AC5AC4AC3AC2AC1AC0LCD模块控制端LCD基本操作RSR/E00写命令操作:用于初始化、清屏、光标定位等。01读状态操作:读忙标志,当忙标志为“1”时,表明LCD正在进行内部操作,此时不能进行其它三类操作;当忙标志为“0”时,表明LCD内部操作已经结束,可以进行其它三类操作,一般采用查询方式。10写数据操作:写入要显示的内容。11读数据操作:将显示存储区中的数据反读出来,一般比较少用。硬件连接参考电路图单片机的P1口与液晶模块的8条数据线
6、相连,P3口的P3.0、P3.1、P3.2分别与液晶模块的三个控制端RS、R/、E连接。程序举例编写1602液晶模块显示问候语“HelloEveryone”的程序//功能:1602液晶模块显示问候语“HelloEveryone”#include#include/库函数头文件,代码中引用了_nop_()函数//定义控制信号端口sbitRS=P3^0;sbitRW=P3^1;sbitE=P3^2;//声明调用函数voidlcd_w_cmd(unsignedcharcom);//写命令字函数voidlcd_w_dat(unsignedcharda
7、t);//写数据函数unsignedcharlcd_r_start();//读状态函数voidlcd_init();//LCD初始化函数voiddelay100us(unsignedchart);//可控延时函数voiddelay5us(unsignedcharn);//软件实现延时函数,n*5个机器周期voidmain()//主函数{unsignedcharDisp[]="HelloEveryone";//定义字符数组Dispunsignedchari;P1=0xff;//送全
此文档下载收益归作者所有