python arduino i2c1602_Arduino 使用I2C的1602 LCD

本文介绍了如何使用I2C版本的1602LCD显示屏与Arduino进行连接,以减少IO口的占用。在实际操作中可能会遇到编译错误和显示问题。针对这些问题,提供了检查编译器版本、库文件引用及硬件连接的建议,并提醒注意LCD地址、电位器和I2C模块的状态。同时,指出了长时间无法解决时考虑更换设备的建议。
摘要由CSDN通过智能技术生成

很多时候我们需要显示简单的字符,1602LCD就是很好的选择。通常Arduino 使用1602 LCD需要连接很多线路,需要占用很多个IO口,而是用I2C版本的1602即可省去这样的繁杂。I2C版本只需要VCC(3.3和5都可以,亮度上有些差别),GND,还有SDA(连接A4)和 SCL(连接A5)。

下面就是一个使用I2C在1602上显示的例子:

对应的程序和库在这里

在使用的时候,你可以遇到如下问题:

1.编译不通过。请检查编译器的版本,建议使用 1.0 以上的,因为这是未来的方向。如果还有问题,请检测引用库的方式。如果你将 LiquidCrystal_I2C 放在了Library下面,可以用 #include 这样的方式来引用,或者像我代码中,直接将LiquidCrystal_I2C.cpp 和 LiquidCrystal_I2C.h 放在源文件同样的目录下,你就可以使用 #include "LiquidCrystal_I2C.h"。此外,如果出现编译错误提示在 LiquidCrystal_I2C lcd(0x27,16,2); 这行,就是没有正确引用到LiquidCrystal_I2C.h这个头文件导致的。你可以按照上述检查一下,然后重启编译器试试。

2.烧写之后无显示,首先请检查地址是否正确(地址不正确的情况下最上面可能有方块,下面看起来是空白行),最直接的方法是询问卖家,此外还可以像我之前的一篇文章提到的烧入一个软件来判定地址。其次要检查背后的电位器是否正常,避免实际上已经有数值了只是对比度不正确你看不到而已。如果仍然不行,就需要重新寻找库。这个差别有可能是如下硬件顺序导致的。

可以看到 P0- P3分别对应 RS/RW/CS/P ,另外,P4-P7对应DB4-7。还有一种计是颠倒过来 P0-P3对应DB4-7的。如果存在差别,库文件初始化方式传输Command方式都需要修改的。剩下的就是检查Pin是否有电平输出,如果没有那就是I2C模块坏掉了。

当然,如果你在上面花费了超过8个小时仍然无法解决,我的建议是赶快更换一篇,这个东西不需要研究那么久,你的1602有可能压根就是坏掉的(非常不幸的是我就是因为这个问题花费了无数个夜晚.....)

我最后购买到OK的1602是在 http://arduinochina.taobao.com/?spm=a1z10.1.w1002-2071319798.3.RT0Fkv (Arduino CHINA)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值