51单片机lcd1602全过程C语言编程显示大全.pdf

51单片机lcd1602全过程C语言编程显示大全.pdf

  1. 1、本文档共68页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
51单片机lcd1602全过程C语言编程显示大全

阿拉教你轻松学51 系列(作者:就抽精品) 发布: 2010-2-05 16:03 | 作者: tiankai | 来源: 电子园51 单片机学习网 阿拉教你轻松学51液晶篇(1602) 写在开始:(借此灌下水^_^ ) 之前,发了一个帖子,大意是看见杀手和水剑写的帖子,心 里也痒痒了,想写一写以前学习单片机过程中的一些经历,希望能给大家一点参考。无奈最 近时间很是紧张,因此,一直都没能着手整理。本打算星期六写的,但是接到一个朋友的电 话,说想买CPLD 的开发板。于是,计划被迫打乱,只好先陪他去电子市场买板子。回来 之后,虽然头很晕(坐车的原因),但是不能再拖了,否则留给大家一个只说不做的印象就不 好了。虽然头晕,但是下面的写出来的东西可不晕。OK,LET’S GO ! 1602 字符液晶在实际的产品中运用的也比较多了,前几天留意了一下,发现宿舍门 前的自动售水机就是采用的1602液晶进行显示的。而且对于单片机的学习而言,掌握1602 的用法是每一个学习者必然要经历的过程。在此,我将使用 1602 过程中遇到的问题以及感 受记录下来,希望能够给初学者带来一点指导,少走一点弯路。 所谓 1602 是指显示的内容为 16*2,即可以显示两行,每行16 个字符。目前市面 上字符液晶绝大多数是基于HD44780 液晶芯片的,控制原理是完全相同的,因此基于 HD44780 写的控制程序可以很方便地应用于市面上大部分的字符型液晶。 1602 液晶的正面(绿色 背光,黑色字体) 1602 液晶背面(绿色背 光,黑色字体) 另一种1602 液晶模块,显示屏是蓝色 背光白色字体 字符型LCD1602 通常有 14 条引脚线或 16 条引脚线的LCD,多出来的2 条线是 背光电源线VCC(15 脚)和地线GND(16 脚),其控制原理与14 脚的LCD 完全一样,引脚 定义如下表所示: HD44780 内置了DDRAM、CGROM 和CGRAM。 DDRAM 就是显示数据RAM,用来寄存待显示的字符代码。共80 个字节,其地址 和屏幕的对应关系如下表: 也就是说想要在LCD1602 屏幕的第一行第一列显示一个A字,就要向DDRAM 的 00H 地址写入“A”字的代码就行了。但具体的写入是要按LCD 模块的指令格式来进行的, 后面我会说到的。那么一行可有40 个地址呀?是的,在 1602 中我们就用前16 个就行了。 第二行也一样用前 16 个地址。对应如下: DDRAM 地址与显示位置的对应关系 (事实上我们往DDRAM 里的00H 地址处送一个数据,譬如0x31(数字 1 的代码) 并不能显示1 出来。这是一个令初学者很容易出错的地方,原因就是如果你要想在DDRAM 的00H 地址处显示数据,则必须将00H 加上80H,即80H,若要在DDRAM 的01H 处 显示数据,则必须将01H 加上80H 即81H。依次类推。大家看一下控制指令的的8 条: DDRAM 地址的设定,即可以明白是怎么样的一回事了) 1602 液晶模块内部的字符发生存储器(CGROM)已经存储了160 个不同的点阵字 符图形,如下表所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文 假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A” 的代码 (41H),显示时模块把地址41H 中的点阵字符图形显示出来,我们就能看到字母“A” 上表中的字符代码与我们PC 中的字符代码是基本一致的。因此我们在向DDRAM 写C51 字符代码程序时甚至可以直接用P1=A这样的方法。PC 在编译时就把“A”先转为 41H 代码了。 字符代码0x00~0x0F 为用户自定义的字符图形RAM(对于5X8 点阵的字符,可以 存放8 组,5X10 点阵的字符,存放4 组),就是CGRAM 了。后面我会详细说的。 0x20~0x7F 为标准的ASCII 码,0xA0~0xFF 为日文字符和希腊文字符,其余字 符码(0x10~0x1F 及

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档