收藏 分享(赏)

LCD1602应用详解.pdf

上传人:精品资料 文档编号:7940357 上传时间:2019-05-30 格式:PDF 页数:33 大小:4.03MB
下载 相关 举报
LCD1602应用详解.pdf_第1页
第1页 / 共33页
LCD1602应用详解.pdf_第2页
第2页 / 共33页
LCD1602应用详解.pdf_第3页
第3页 / 共33页
LCD1602应用详解.pdf_第4页
第4页 / 共33页
LCD1602应用详解.pdf_第5页
第5页 / 共33页
点击查看更多>>
资源描述

1、LCD1602原码工作室LCD1602原理LCD(Liquid Crystal Display):液晶显示器的缩写,一种被动式的显示器,即液晶本身并不发光,而是经液晶经过处理后能改变光线通过方向的特性,而达到白底黑字或黑底白字显示的目的。液晶显示器具有功耗低、抗干扰能力强等优点,广泛用在仪器仪表和控制系统中。LCD显示器的分类按排列形状分:字段型、点阵字符型和点阵图形。(1)字段型广泛用于电子表、数字仪表、计算器中。(2)点阵字符型显示字母、数字、符号。它是由57或54点阵组成,广泛应用在单片机应用系统中。(3)点阵图形型笔记本电脑和彩色电视等设备中。1602LCD液晶简介1602液晶也叫16

2、02字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔每行之间也有也有间隔起到了字符间距和行间距的作用,正因为如此所以他不能显示图形(用自定义CGRAM,显示效果也不好)1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。LCD1602实物图1602LCD的特性+5V电压,对比

3、度可调内含复位电路提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能有80字节显示数据存储器DDRAM内建有160个5X7点阵的字型的字符发生器CGROM8个可由用户自定义的5X7的字符发生器引脚及功能简介LCD1602内部结构3个部分:LCD控制器、LCD驱动器、LCD显示装置LCD1602液晶接口HD44780工作原理HD44780内置了DDRAM(显示数据存储RAM),CGROM(字符存储ROM)和CGRAM(用户自定义RAM)。DDRAM就是显示数据RAM,用来寄存待显示的字符代码。共80个字节,其地址和屏幕的对应关系如下表:也就是说想要在LCD1602屏幕的第一行第一

4、列显示一个“A”字,就要向DDRAM的00H地址写入“A”的代码就行了。但具体的写入是要按LCD模块的指令格式来进行的。一行有40个地址 在1602中我们就用前16个就行了。第二行也一样用前16个地址。对应如下:DDRAM地址与显示位置的对应关系我们往DDRAM里的00H地址处送一个数据,譬如0x31(数字1的代码)并不能显示1出来。这是令初学者很容易出错的地方,原因就是如果你要想在DDRAM的00H地址处显示数据,则必须将00H加上80H,即0X80+0x00,若要在DDRAM的01H处显示数据,则必须将01H加上80H即0X80+0x01。依次类推。1602液晶模块内部的字符发生存储器(C

5、GROM)已经存储了160个不同的点阵字符图形,如下表所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”对DDRAM的内容和地址操作,HD44780的指令集及其设置说明,共有11条指令:基本操作时序:读状态 输入:RS=L,RW=H, E=H输出:DB0DB7=状态字写指令 输入:RS=L,RW=L,E=下降沿脉冲,DB0DB7=指令码输出:无读数据 输入:RS=H,RW=H,E=H输出:DB0DB7=数据写数

6、据 输入:RS=H,RW=L,E=下降沿脉冲,DB0DB7=数据输出:无清屏指令功能:清除液晶显示器,即将DDRAM的内容全部填入“空白”的字符码20H; 光标归位,即将光标撤回液晶显示屏的左上方; 将地址计数器(AC)的值设为0。光标归位指令功能:把光标撤回到显示器的左上方; 把地址计数器(AC)的值设置为0; 保持DDRAM的内容不变输入模式设置指令功能:设定每次写入1位数据后光标的移位方向,并且设定每次写入的一个字符是否移动。参数设定的情况如下所示:位名 设置I/D 0=写入新数据后光标左移 1=写入新数据后光标右移S 0=写入新数据后显示屏不移动 1=写入新数据后显示屏整体右移1个字显

7、示开关控制指令功能:控制显示器开/关、光标显示/关闭以及光标是否闪烁。参数设定的情况如下:位名 设置D 0=显示功能关 1=显示功能开C 0=无光标 1=有光标B 0=光标不闪烁 1=光标闪烁设定显示屏或光标移动方向指令功能:使光标移位或使整个显示屏幕移位。参数设定的情况如下:S/C R/L 设定情况0 0 光标左移1格,且AC值减1 0 1 光标右移1格,且AC值加1 1 0 显示器上字符全部左移一格,但光标不动1 1 显示器上字符全部右移一格,但光标不动功能设定指令(非常重要的指令)功能:设定数据总线位数、显示的行数及字型。参数设定的情况如下:位名 设置DL 0=数据总线为4位 1=数据总

8、线为8位N 0=显示1行 1=显示2行F 0=57点阵/每字符 1=510点阵/每字符设定CGRAM地址指令功能:设定下一个要存入数据的CGRAM的地址。设定DDRAM地址指令功能:设定下一个要存入数据的CGRAM的地址。(注意这里我们送地址的时候应该是0x80+Address,这也是前面说到写地址命令的时候要加上0x80的原因) 读取忙信号或AC地址指令功能:读取忙碌信号BF的内容,BF=1表示液晶显示器忙,暂时无法接收单片机送来的数据或指令; 当BF=0时,液晶显示器可以接收单片机送来的数据或指令; 读取地址计数器(AC)的内容。数据写入DDRAM或CGRAM指令功能:将字符码写入DDRA

9、M,以使液晶显示屏显示出相对应的字符;将用户自己设计的图形存入CGRAM。从CGRAM或DDRAM读出数据的指令功能:读取DDRAM或CGRAM中的内容。基本操作时序:读状态 输入:RS=L,RW=H,E=H输出:DB0DB7=状态字写指令 输入:RS=L,RW=L,E=下降沿脉冲,DB0DB7=指令码输出:无读数据 输入:RS=H,RW=H,E=H输出:DB0DB7=数据写数据 输入:RS=H,RW=L,E=下降沿脉冲,DB0DB7=数据输出:无读状态 输入:RS=0,RW=1,E=1读数据 输入:RS=1,RW=1,E=1写指令 输入:RS=0,RW=0,E=下降沿脉冲,DB0DB7=指令

10、码写数据 输入:RS=1,RW=0,E=下降沿脉冲,DB0DB7=数据时序参数LCD1602与单片机连接的参考电路LCD1602静态显示程序设计bit lcd_busy() bit result;LCD_RS = 0;LCD_RW = 1;LCD_EN = 1;delayNOP();result = (bit)(P0LCD_EN = 0;return(result); 这个函数的作用是检查LCD是否处于忙碌状态,如果返回值是1则表示处于忙状态,需要等待,返回值为0则表示LCD处于空闲状态,可写指令或者数据。void lcd_wcmd(unsigned char cmd) while(lcd_b

11、usy();LCD_RS = 0;LCD_RW = 0;LCD_EN = 0;_nop_();_nop_(); LCD_data = cmd;delayNOP();LCD_EN = 1;delayNOP();LCD_EN = 0; 这个函数的作用是写指令到LCD,cmd是待写的指令,待写的指令在正确的时序下输入D0D7void lcd_wdat(unsigned char dat) while(lcd_busy();LCD_RS = 1;LCD_RW = 0;LCD_EN = 0;LCD_data = dat;delayNOP();LCD_EN = 1;delayNOP();LCD_EN = 0; 这个函数是写显示数据到LCD,与上一个函数很相似,只是时序不同,所以一个是写指令,一个是写数据。

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报