项目液晶显示模块使用.ppt

上传人:小飞机 文档编号:5002190 上传时间:2023-05-28 格式:PPT 页数:17 大小:2.05MB
返回 下载 相关 举报
项目液晶显示模块使用.ppt_第1页
第1页 / 共17页
项目液晶显示模块使用.ppt_第2页
第2页 / 共17页
项目液晶显示模块使用.ppt_第3页
第3页 / 共17页
项目液晶显示模块使用.ppt_第4页
第4页 / 共17页
项目液晶显示模块使用.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《项目液晶显示模块使用.ppt》由会员分享,可在线阅读,更多相关《项目液晶显示模块使用.ppt(17页珍藏版)》请在三一办公上搜索。

1、液晶显示模块LCD1602,字符型LCD模块内部存储结构的划分,LCD控制器HD44780内部有80字节的显示数据存储器(显存),用于存储当前要求显示的字符ASCII码,各个存储单元与显示屏上的字符位相对应,其映射关系如图所示,需要注意的是第1行DDRAM地址与第2行DDRAM地址并不连续。,如果在第二行的第3列显示字符E,请问应如何操作?首先定位显示字符的光标位置,根据上图的地址映射可知,字符E的显存地址为42H;然后得到字符E的显示码为45H。将显示码45H写入DDRAM的42H单元,即可显示字符E。,字符型LCD模块控制命令字,首先,LCD上电,都必须按照一定的时序进行初始化操作,主要任

2、务是设置LCD的工作方式、显示状态、清屏、输入方式、光标位置等,使用命令字对LCD进行初始化的流程如图所示,根据显示功能要求构造命令字,通过写命令操作完成命令字的写入时序。,MCU对LCD模块的基本操作模式,单片机对LCD模块有四种基本操作:写命令、写数据、读状态和读数据,由LCD1602模块三个控制引脚RS、R/和E的不同组合状态确定,如表5所示,结合读操作和写操作时序,编制软件输出控制引脚脉冲电平即可产生LCD读写访问时序。在进行写命令、写数据和读数据三种操作之前,必须先进行读状态操作,查询忙标志。当忙标志为0时,才能进行这三种操作。状态字格式如下,最高位的BF为忙标志位,1表示LCD正在

3、忙,0表示不忙。通过判断最高位BF的0、1状态,就可以知道LCD当前是否处于忙状态,如果LCD一直处于忙状态,则继续查询等待,否则可进行后面的操作。,硬件连接参考电路图,单片机的P1口与液晶模块的8条数据线相连,P3口的P3.0、P3.1、P3.2分别与液晶模块的三个控制端RS、R/、E连接。,程序举例,编写1602液晶模块显示问候语“Hello Everyone”的程序,/功能:1602液晶模块显示问候语“Hello Everyone”#include#include/库函数头文件,代码中引用了_nop_()函数/定义控制信号端口sbit RS=P30;sbit RW=P31;sbit E=

4、P32;/声明调用函数void lcd_w_cmd(unsigned char com);/写命令字函数void lcd_w_dat(unsigned char dat);/写数据函数unsigned char lcd_r_start();/读状态函数void lcd_init();/LCD初始化函数void delay100us(unsigned char t);/可控延时函数void delay5us(unsigned char n);/软件实现延时函数,n*5个机器周期,void main()/主函数 unsigned char Disp=Hello Everyone;/定义字符数组Di

5、sp unsigned char i;P1=0 xff;/送全1到P1口 lcd_init();/初始化LCD delay100us(255);lcd_w_cmd(0 xc2);/定位光标设置显示位置 delay100us(255);for(i=0;i14;i+)/显示字符串 lcd_w_dat(Dispi);delay100us(200);while(1);/显示完成,/函数名:delay100usvoid delay100us(unsigned char t)unsigned char j,i;for(i=0;it;i+)for(j=0;j10;j+);/函数名:delay5usvoid

6、delay5us(unsigned char n)do _nop_();_nop_();_nop_();n-;while(n);,/函数名:lcd_init/函数功能:lcd初始化 void lcd_init()lcd_w_cmd(0 x3c);/设置工作方式 lcd_w_cmd(0 x0e);/设置光标 lcd_w_cmd(0 x01);/清屏 lcd_w_cmd(0 x06);/设置输入方式 lcd_w_cmd(0 x80);/设置初始显示位置/函数名:lcd_r_start/函数功能:读状态字 unsigned char lcd_r_start()unsigned char s;RW=1

7、;/RW=1,RS=0,读LCD状态 delay5us(1);RS=0;delay5us(1);E=1;/E端时序 delay5us(1);s=P1;/从LCD的数据读状态 delay5us(1);E=0;delay5us(1);RW=0;delay5us(1);return(s);/返回读取的LCD状态字,/函数名:lcd_w_cmd/函数功能:写命令字void lcd_w_cmd(unsigned char com)unsigned char i;do/查LCD忙操作 i=lcd_r_start();/调用读状态字函数 i=i,/函数名:lcd_w_dat/函数功能:写数据void lcd_w_dat(unsigned char dat)unsigned char i;do/查忙操作 i=lcd_r_start();/调用读状态字函数 i=i,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号