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

上传人:本田雅阁 文档编号:2124299 上传时间:2019-02-19 格式:PPT 页数:17 大小:2.05MB
返回 下载 相关 举报
项目61602液晶显示模块使用.ppt_第1页
第1页 / 共17页
项目61602液晶显示模块使用.ppt_第2页
第2页 / 共17页
项目61602液晶显示模块使用.ppt_第3页
第3页 / 共17页
亲,该文档总共17页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《项目61602液晶显示模块使用.ppt》由会员分享,可在线阅读,更多相关《项目61602液晶显示模块使用.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表示LC

3、D正在忙,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

4、=P31; sbit E= 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

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

6、 for(i=0;it;i+) for(j=0;j10;j+); /函数名:delay5us void delay5us(unsigned char n) do _nop_(); _nop_(); _nop_(); n-; while(n); ,/函数名:lcd_init /函数功能:lcd初始化 void lcd_init() lcd_w_cmd(0x3c); / 设置工作方式 lcd_w_cmd(0x0e); / 设置光标 lcd_w_cmd(0x01); / 清屏 lcd_w_cmd(0x06); / 设置输入方式 lcd_w_cmd(0x80); / 设置初始显示位置 /函数名:lcd

7、_r_start /函数功能:读状态字 unsigned char lcd_r_start() unsigned char s; RW=1; /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备18001539号-1