标题: 10分钟理解LCD1602液晶显示模块 [打印本页]

作者: ppptalk    时间: 2018-4-9 18:54
标题: 10分钟理解LCD1602液晶显示模块
1. 初识LCD1602液晶模块


LCD1602什么意思,LCD表示LiquidCrystal Display,1602表示一行可以显示16个字符,一共有两行。实物图如下所示:



2. 思路分析

LCD1602是显示模块,主要作用当然是显示了。既然是显示,我们可以想一想,无非就是两个内容:
第一点:你打算让它在哪里显示(显示位置)
第二点:你要显示什么内容       (显示内容)
很明显,这两点都是来自于单片机的控制,单片机让它显示什么它就显示什么,单片机让它在哪里显示它就在哪里显示。这一句话也可以换个说法,比如单片机'告诉'LCD1602模块:请你在第1行的第4个位置,显示字符‘A'. 所谓'告诉',也即是单片机与LCD1602模块进行'沟通'。类比一下我们平时的"沟通",比如打电话,是不是一上来就开始谈论主题了。当然不是,先要发出一信号,比如"喂",打个招呼,确定对方能收到信号后才开始谈论主题。当然也有些人会嘘寒问暖几句才开始正题谈话。


总之,在'沟通'之前要有个'打招呼'的过程。对于单片机与LCD1602的'沟通'也一样,同样需要先'打个招呼',只不过我们这里换了个说法叫做"初始化"。


这样整个思路就出来了:
第一步:初始化            (单片机先跟1602打个招呼)
第二步:确定显示位置  (单片机告诉1602在哪里显示)
第三部:确定显示内容  (单片机告诉1602显示什么内容)


3. 操作步骤
思路出来,下面就是按照这个思路去实现就行了。如何实现呢,当然要看你使用的LCD1602液晶模块厂家给的说明书了。


3.1 初始化
如何初始化呢?1602说明书上已经告诉你了,想都不用想,照做即可
  1. 延时15ms
  2. 写指令38H
  3. 延时5ms
  4. 写指令38H
  5. 写指令08H
  6. 写指令01H
  7. 写指令06H
  8. 写指令0CH
复制代码



3.2 确定显示位置
如何确定显示位置呢?前面说了显示位置就是2行,每一行16个空格,这样一共是32个空格。那么单片机如何告诉LCD1602在哪个空格显示呢?注意到单片机和LCD1602都是机器,既然是机器之间的沟通当然要使用机器语言了。既然是机器语言无非就是0和1组成的语言。那么现在的问题就是如何通过0和1来确定显示位置。这个就比较容易了,比如我只使用一个位的话,那么就只能确定两个位置,用0来表示第一行的第一个空格显示,用1来表示第一行的第2个空格显示。前面说了,1602有32个空格,很明显一个位肯定不够用。同样的道理,采用两个位的话就是4种组合,也就是可以确定4个空格,三个位的话就是8个空格,仍然不够用。那么就继续增加位数,五个位就够了。比如当单片机发送00000这个信息给1602时就表示要它在第1行的第1个空格显示,00001表示在第1行的第2个空格显示,依此类推。但是通常机器之间的沟通是以字节(8位)为最小单位的,这样我们就能通过8位0和1的组合确定显示位置。至于具体的组合方式对应着什么位置就要查看厂家提供的说明书了。




对于这8位0和1的组合在说明书上已经明确指出了,它的最高位固定为1,剩下7位由上表确定。比如剩下7位为40H的时候,就表示
在1602的第2行第1个空格显示。当剩下7位为4FH的时候就表示在第2行的第16个空格显示。

3.3 显示内容
剩下的一个问题就是如何确定显示内容。同样显示什么内容也是通过8位的0和1的组合来完成的,这8位不同的组合形式就对应着不同的显示内容,具体如下图所示




比如当单片机发送00110000给1602的时候,就表示告诉让1602显示字符0,等等。


这样又有了个新的问题,当单片机发送1000 0100给1602的时候,它怎么知道这个信息是"位置"信息还是"内容"信息呢?这两种信息都是用8位的0和1组合而成的,如何区别?我们把"位置"信息定义为"命令",把"内容"信息定义为"数据"。那么单片机如何告诉1602发送的是"命令"还是"数据",这个问题就去翻一翻说明了,上面讲的很清楚。


步骤整理好了,下面就是对照时序图实现单片机如何发送一个字节(命令/数据)给1602了。


下一篇:
        
10分钟理解LCD1602如何显示自定义字符
        
10分钟理解OLED显示模块

10分钟理解DS18B20数字温度计模块

10分钟理解DS1302时钟模块




所有参考代码工具视频下载百度网盘链接:

百度云盘链接地址-51HEI分享 .rar (180 Bytes, 下载次数: 370)



作者: Alicute     时间: 2018-4-10 00:20
谢谢解惑!51黑有你更精彩!!!
作者: jmkl128    时间: 2018-4-10 07:25
总结的很好,赞
作者: 234347892    时间: 2018-4-10 07:26
比较容易理解了。
作者: only5784    时间: 2018-4-10 09:00
多谢大神解惑
作者: adls    时间: 2018-4-10 10:04
多谢大神解惑
作者: 杨雪飞    时间: 2018-4-10 11:27
这是迄今为止看到的最为浅显易懂的讲法,谢谢
作者: QQ去    时间: 2018-4-10 14:45
感谢分享。一直没能真正理解1602,希望这次能理解
作者: myx123456    时间: 2018-4-10 14:58
Alicute         发表于 2018-4-10 00:20
谢谢解惑!

看看人家学校了,是高手
作者: qjzyx    时间: 2018-4-10 15:35
通俗易懂
作者: qjzyx    时间: 2018-4-10 15:40
通俗易懂!收藏
作者: KKKNIHAOMA    时间: 2018-4-10 16:01
感谢分享。一直没能真正理解1602,希望这次能理解
作者: zsn8888    时间: 2018-4-10 16:19
这文章写得思路清楚 适合我这种刚入门的看 简单明了
作者: 192251526    时间: 2018-4-10 16:35
感谢分享,谢谢
作者: 9999jhgjjjjj    时间: 2018-4-10 16:57
好资料,51黑有你更精彩!!!

作者: wangqibiao51    时间: 2018-4-10 17:34
小白谢谢楼主科普。
作者: 无时崩溃    时间: 2018-4-12 21:07
感谢楼主分享
作者: a6161220    时间: 2018-4-12 22:38
很有用,谢谢分享
作者: Modern    时间: 2018-4-12 22:58
想看一看,你的高见
作者: a6161220    时间: 2018-4-12 23:13
很好,学习了
作者: tomli    时间: 2018-4-13 07:40
通俗易懂,讲的好。
作者: longlife999    时间: 2018-4-13 10:26
好文章

作者: fourismyname    时间: 2018-4-13 14:34
深入浅出有点强
作者: 564    时间: 2018-4-13 14:43
51黑有你更精彩!!!
作者: ZERO1314    时间: 2018-4-13 14:57
谢谢分享,学习一下
作者: 熊熊生风    时间: 2018-4-13 15:20
摄氏度上面的小圆圈怎么显示
作者: fanci    时间: 2018-4-13 15:54
感谢分享,谢谢
作者: 三天热度    时间: 2018-4-13 16:09
向大佬学习一波
作者: ppptalk    时间: 2018-4-13 17:51
熊熊生风 发表于 2018-4-13 15:20
摄氏度上面的小圆圈怎么显示

看这个帖子,LCD1602如何显示自定义字符

http://www.51hei.com/bbs/dpj-112360-1.html
作者: stkh    时间: 2018-4-13 21:53
初学者来看代码
作者: 41564654    时间: 2018-4-13 22:44
太适合新手看了!
作者: york_岳    时间: 2018-4-13 23:35
不错的1602教学,和分析,前面看完,回复继续看
作者: raymondau    时间: 2018-4-14 00:45
不错人资料,值得学习
作者: chaoself    时间: 2018-4-14 07:45
谢谢解惑!51黑有你更精彩!!!
作者: mslong    时间: 2018-4-14 08:09
做个老师,很会教
作者: qinwenyuqw2    时间: 2018-4-14 10:45
大佬,谢谢分享
作者: 黑贝雷    时间: 2018-4-14 10:57
容易理解了。
作者: 持勤补拙    时间: 2018-4-14 11:13
谢谢楼主,讲解的很详细
作者: 幻作明月    时间: 2018-4-14 12:31
给你回复个
作者: wpq201800    时间: 2018-4-14 19:50
谢谢楼主的分享,来学习!
作者: 寒不暖    时间: 2018-4-14 21:01
感谢大神的分享
作者: ghoullc    时间: 2018-4-14 22:26
感谢分享
作者: yangchao526    时间: 2018-4-14 22:54
跟着大神学习!
作者: angle丶皮皮虾    时间: 2018-4-14 23:25
先回复看看
作者: asusyt    时间: 2018-4-15 08:45
多谢大神解惑,这样比较容易理解
作者: opop1988    时间: 2018-4-15 12:12
谢谢谢谢 很好
作者: Xanthus    时间: 2018-4-15 21:18
刚好学习一下
作者: zhang@xue    时间: 2018-4-15 23:03
谢谢分享
作者: d1069922064    时间: 2018-4-16 07:11
可以,学习了
作者: fontex    时间: 2018-4-16 09:12
资料不错,谢谢!
作者: 光and千年    时间: 2018-4-16 12:50
赞一个赞一个
作者: 战士小尾    时间: 2018-4-16 14:11
学习了 谢谢分享!
作者: lwpccc    时间: 2018-4-16 17:20
谢谢解惑,很实用,原先对此并不熟悉,现在有了大致了解了,多谢
作者: 顺子单片机    时间: 2018-4-16 18:50
很适合新手理解和学习
作者: gxx    时间: 2018-4-16 20:01
谢谢分享 很实用的东西
作者: 炮妞闯天下    时间: 2018-4-16 21:39
看看学习一下
作者: 523633035    时间: 2018-4-16 22:11
不错不错..
作者: 523633035    时间: 2018-4-16 22:13
写的很好很棒
作者: 摇曳汉文    时间: 2018-4-16 23:50
很通俗
作者: 1404    时间: 2018-4-17 01:05

多谢大神解惑
作者: tieq1952    时间: 2018-4-17 07:16
谢谢分享1111111
作者: tieq1952    时间: 2018-4-17 07:22
学习了。已经下载。谢谢。
作者: 孙仲谋    时间: 2018-4-17 09:18
讲得很好

作者: YJGG    时间: 2018-4-17 09:51
感谢楼主分享
作者: 天空之城_11    时间: 2018-4-17 10:36
多谢楼主分享!
作者: pengnian    时间: 2018-4-17 10:53
深入浅出 赞一个
作者: gpdt3209    时间: 2018-4-17 11:05
学习者在学习中
作者: xiaoshan7748    时间: 2018-4-17 11:22
大赞,很给力
作者: 孟长信    时间: 2018-4-17 14:40
谢谢楼主了
作者: hangmw    时间: 2018-4-17 15:27
看看代码呗
作者: hangmw    时间: 2018-4-17 15:28
回复了,怎么还没看到内容

作者: hangmw    时间: 2018-4-17 15:30
讲的懂了,谢谢
作者: zzb    时间: 2018-4-17 15:37
谢谢分享,学习一下.
作者: 竹子    时间: 2018-4-17 16:04
谢谢楼主
作者: suph007    时间: 2018-4-17 16:05
感觉很受用,谢谢楼主的帖子

作者: roymi    时间: 2018-4-17 16:07
哇,很容易理解了,谢谢!
作者: 21GUNSaaa    时间: 2018-4-17 16:54
多谢讲解,希望更加深入了解LCD1602
作者: zhaojiaoxian    时间: 2018-4-17 17:21
谢谢解惑!51黑有你更精彩!!!
作者: PY553763756    时间: 2018-4-17 17:40
有意思
作者: maomao12    时间: 2018-4-17 20:32
感谢分享
作者: maomao12    时间: 2018-4-17 20:36

感谢分享
作者: jians57    时间: 2018-4-18 09:47
谢谢楼主,对我很有用!
作者: 1580402886    时间: 2018-4-18 10:07
过来学习一下
作者: 嘤叶知秋    时间: 2018-4-18 14:27
谢谢解惑!51黑有你更精彩!!
作者: staring    时间: 2018-4-18 16:15
谢谢楼主
作者: ccyuer    时间: 2018-4-18 19:30
学习了不错不错!厉害
作者: MR.TB    时间: 2018-4-19 18:12
就决定是你了

作者: fenghuohuoxs    时间: 2018-4-19 18:41
解释的很好!!
作者: lon7085    时间: 2018-4-19 18:59
赞!感谢大神的分享
作者: morning。。。    时间: 2018-4-19 20:36
厉害了
作者: mine13800    时间: 2018-4-20 10:49
谢谢大神救小白!
作者: 流沙剑客    时间: 2018-4-20 12:32
好好研究研究
作者: oliveirazhou    时间: 2018-4-20 12:34
学习学习,了解一下
作者: xianglei6619    时间: 2018-4-22 02:16
来好好学习一下这个

作者: 小强快跑    时间: 2018-4-22 13:45
学习一下
作者: 565016599    时间: 2018-4-22 14:19
来看看
作者: lizhendong    时间: 2018-4-22 19:46
太好了,谢谢了,支持支持51hei
作者: ybk123    时间: 2018-4-22 20:38
很好不错
作者: vilewlzard    时间: 2018-4-22 23:26
谢谢帮助
作者: zhangfan2497    时间: 2018-4-23 15:17
小白来学习




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1