51单片机模块化创新视频教程-LCD1602液晶课件.pdf

上传人:qwe****56 文档编号:74639484 上传时间:2023-02-27 格式:PDF 页数:21 大小:3.59MB
返回 下载 相关 举报
51单片机模块化创新视频教程-LCD1602液晶课件.pdf_第1页
第1页 / 共21页
51单片机模块化创新视频教程-LCD1602液晶课件.pdf_第2页
第2页 / 共21页
点击查看更多>>
资源描述

《51单片机模块化创新视频教程-LCD1602液晶课件.pdf》由会员分享,可在线阅读,更多相关《51单片机模块化创新视频教程-LCD1602液晶课件.pdf(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、5151单片机模块化创新视频教程单片机模块化创新视频教程讲解:慧净讲解:慧净QQ:QQ:398115088398115088QQQQ群:群:2504492325044923LCD1602液晶1602液晶也叫1602字符型液晶 它是一种专门用来显示字母、数字、符号等的点阵型液晶模块 它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔 每行之间也有也有间隔 起到了字符间距和行间距的作用,正因为如此 所以他不能显示图形(用自定义CGRAM,显示效果也不好)1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数

2、字)。目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。1602LCD的特性+5V电压,对比度可调 内含复位电路 提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能 有80字节显示数据存储器DDRAM 内建有160个5X7点阵的字型的字符发生器CGROM 8个可由用户自定义的5X7的字符发生器CGRAM字符型LCD1602通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线VCC(15脚)和地线GND(16脚),慧净开发板液晶接口HD44780内置了DDR

3、AM(显示数据存储RAM)、CGROM(字符存储ROM)和CGRAM(用户自定义RAM)。DDRAM就是显示数据RAM,用来寄存待显示的字符代码。共80个字节,其地址和屏幕的对应关系如下表:也就是说想要在LCD1602屏幕的第一行第一列显示一个“A”字,就要向DDRAM的00H地址写入“A”的代码就行了。但具体的写入是要按LCD模块的指令格式来进行的,后面我会讲到的。一行有40个地址 在1602中我们就用前16个就行了。第二行也一样用前16个地址。对应如下:DDRAM地址与显示位置的对应关系 我们往DDRAM里的00H地址处送一个数据,譬如0 x31(数字1的代码)并不能显示1出来。这是令初学

4、者很容易出错的地方,原因就是如果 你要想在DDRAM的00H地址处显示数据,则必须将00H加上80H,即0X80+0 x00,若要在DDRAM的01H处显示数据,则必须将01H加上80H即 0X80+0 x01。依次类推。一会讲控制指令的的第8条DDRAM地址的设定时,你就可以明白了 1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如下表所示,这些字符有:阿拉伯数字、英文字母的大小写、常 用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点 阵字符图形显示出来,我

5、们就能看到字母“A”上表中的字符代码与我们PC中的字符代码是基本一致的。因此我们在向DDRAM写C51字符代码程序时甚至可以直接用P1A这样的方法。PC在编译时就把“A”先转为41H代码了。字符代码0 x000 x0F为用户自定义的字符图形RAM(对于5X8点阵的字符,可以存放8组),就是CGRAM了。后面我会详细说的。对DDRAM的内容和地址操作,HD44780的指令集及其设置说明,共有11条指令:基本操作时序:读状态 输入:RS=L,RW=H,E=H 输出:DB0DB7=状态字 写指令 输入:RS=L,RW=L,E=下降沿脉冲,DB0DB7=指令码 输出:无 读数据 输入:RS=H,RW=

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

7、据后光标右移 S0=写入新数据后显示屏不移动 1=写入新数据后显示屏整体右移1个字 4.显示开关控制指令 功能:控制显示器开/关、光标显示/关闭以及光标是否闪烁。参数设定的情况如下:位名设置 D0=显示功能关 1=显示功能开 C0=无光标 1=有光标 B0=光标不闪烁 1=光标闪烁 5.5.5.5.设定显示屏或光标移动方向指令设定显示屏或光标移动方向指令 功能:使光标移位或使整个显示屏幕移位。参数设定的情况如下:S/C R/L设定情况 0 0光标左移1格,且AC值减1 0 1光标右移1格,且AC值加1 1 0显示器上字符全部左移一格,但光标不动 1 1显示器上字符全部右移一格,但光标不动 6.

8、功能设定指令(非常重要的指令)功能:设定数据总线位数、显示的行数及字型。参数设定的情况如下:位名设置 DL 0=数据总线为4位 1=数据总线为8位 N 0=显示1行 1=显示2行 F0=57点阵/每字符1=510点阵/每字符 7.设定CGRAM地址指令 功能:设定下一个要存入数据的CGRAM的地址。8.8.8.8.设定设定DDRAMDDRAMDDRAMDDRAM地址指令地址指令 功能:设定下一个要存入数据的CGRAM的地址。(注意这里我们送地址的时候应该是0 x80+Address,这也是前面说到写地址命令的时候要加上0 x80的原因)9.9.9.9.读取忙信号或读取忙信号或ACACACAC地

9、址指令地址指令 功能:读取忙碌信号BF的内容,BF=1表示液晶显示器忙,暂时无法接收单片机送来的数据或指令;当BF=0时,液晶显示器可以接收单片机送来的数据或指令;读取地址计数器(AC)的内容。10.10.10.10.数据写入数据写入DDRAMDDRAMDDRAMDDRAM或或CGRAMCGRAMCGRAMCGRAM指令指令 功能:功能:将字符码写入将字符码写入DDRAMDDRAMDDRAMDDRAM,以使液晶显示屏显示出相对应的字符,以使液晶显示屏显示出相对应的字符;将用户自己设计的图形存入将用户自己设计的图形存入CGRAMCGRAMCGRAMCGRAM。11.11.11.11.从从CGRA

10、MCGRAMCGRAMCGRAM或或DDRAMDDRAMDDRAMDDRAM读出数据的指令读出数据的指令 功能:读取功能:读取DDRAMDDRAMDDRAMDDRAM或或CGRAMCGRAMCGRAMCGRAM中的内容。中的内容。基本操作时序:基本操作时序:读状态读状态 输入:输入:RS=LRS=LRS=LRS=L,RW=HRW=HRW=HRW=H,E=HE=HE=HE=H输出:输出:DB0DB0DB0DB0DB7=DB7=DB7=DB7=状态字状态字 写指令写指令 输入:输入:RS=LRS=LRS=LRS=L,RW=LRW=LRW=LRW=L,E=E=E=E=下降沿脉冲,下降沿脉冲,DB0D

11、B0DB0DB0DB7=DB7=DB7=DB7=指令码指令码 输出:无输出:无 读数据读数据 输入:输入:RS=HRS=HRS=HRS=H,RW=HRW=HRW=HRW=H,E=HE=HE=HE=H输出:输出:DB0DB0DB0DB0DB7=DB7=DB7=DB7=数据数据 写数据写数据 输入:输入:RS=HRS=HRS=HRS=H,RW=LRW=LRW=LRW=L,E=E=E=E=下降沿脉冲,下降沿脉冲,DB0DB0DB0DB0DB7=DB7=DB7=DB7=数据数据 输出:无输出:无 读状态 输入:RS=0,RW=1,E=1读数据 输入:RS=1,RW=1,E=1 写指令 输入:RS=0,

12、RW=0,E=下降沿脉冲,DB0DB7=指令码 写数据 输入:RS=1,RW=0,E=下降沿脉冲,DB0DB7=数据 如何显示一个自定义的字符 从CGROM表上可以看到,在表的最左边是一列可以允许用户自定义的CGRAM,从上往下看着是16个,实际只有8个字节可用。它的字符码是 0000000000000111这8个地址,表的下面还有8个字节,但因为这个CGRAM的字符码规定02位为地址,3位无效,47全为零。因此 CGRAM的字符码只有最后三位能用也就是8个字节了。等效为0000X111,X为无效位,最后三位为000111共8个。如果我们要想显示这8个用户自定义的字符,操作方法和显示CGROM

13、的一样,先设置DDRAM位置,再向DDRAM写入字符码,例如“A”就是41H。现 在我们要显示CGRAM的第一个自定义字符,就向DDRAM写入00000000B(00H),如果要显示第8个就写入00000111(08H),简单 吧!现在我们来看怎么向这八个自定义字符写入字模。设置CGRAM地址的指令 从这个指令可以看出指令数据的高从这个指令可以看出指令数据的高从这个指令可以看出指令数据的高从这个指令可以看出指令数据的高2 2 2 2位已固定是位已固定是位已固定是位已固定是01010101,只有后面的,只有后面的,只有后面的,只有后面的6 6 6 6位位位位是地址数据,而这是地址数据,而这是地址

14、数据,而这是地址数据,而这6 6 6 6位中的高位中的高位中的高位中的高3 3 3 3位就表示这八个自定义字符,最后的位就表示这八个自定义字符,最后的位就表示这八个自定义字符,最后的位就表示这八个自定义字符,最后的3 3 3 3位就是字模数据的八个地址了。例如第一个自定义字符的字模地址为位就是字模数据的八个地址了。例如第一个自定义字符的字模地址为位就是字模数据的八个地址了。例如第一个自定义字符的字模地址为位就是字模数据的八个地址了。例如第一个自定义字符的字模地址为0100000001000000010000000100000001000111010001110100011101000111八个

15、地址。我们向这八个地址。我们向这八个地址。我们向这八个地址。我们向这8 8 8 8个字节写入字模数据,让个字节写入字模数据,让个字节写入字模数据,让个字节写入字模数据,让它能显示出它能显示出它能显示出它能显示出“”“”“”“”地址:01000000数据:00010000 图示:0100000100000110 0100001000001001 0100001100001000 0100010000001000 0100010100001001 0100011000000110 0100011100000000 user=0 x10,0 x06,0 x09,0 x08,0 x08,0 x09,0 x06,0 x00;/字符*/写入时先设置CGRAM地址 0X40;显示是直接取CGRAM的数据

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁