25229| 5
|
[求助问答] I2C LCD1602液晶显示屏无法显示怎么解决? |
本帖最后由 Forgotten 于 2021-2-24 19:22 编辑 上传程序到主控板后发现LCD液晶显示屏后显示屏无反应,如下图: 分析问题: 可能情况一:I2C LCD液晶显示屏供电电压不够,供电电压5V,尝试给屏幕VCC供电5V。 可能情况二:对比度设置有问题,使用螺丝刀调节背面的对比度调节旋钮,如文字能显示说来则调节至更清晰即可。 可能情况三:I2C LCD液晶显示屏引脚接错,请检查是否SDA对应A4,SCL对应A5。(对于Arduino uno因为A4A5与I2C的scl和sda复用,如果使用I2C设备,那么A4 A5就不能再接其他东西了) 可能情况三:初始化语句中的地址写错,df商城中的I2C LCD1602液晶模块地址一般默认为0x20,若将短路帽拔掉地址则为0x27。具体使用说明可点此查看详情:https://wiki.dfrobot.com.cn/index.php/(SKU:DFR0063)IIC_LCD1602_display_module_兼容Gadgeteer 若依旧无法显示,那么怎么判断LCD液晶显示屏的地址呢?此时可直接通过串口进行地址打印,具体操作如下: 1、选择点击mind+软件左下角的扩展,如下图所示: 2、选择功能模块中的IIC地址扫描,如下图所示: 3、通过串口读取扫描到的IIC设备地址,程序如下图: 本文中主要使用df商城中的I2C LCD1602液晶模块进行地址读取并为大家演示,具体如下图: I2C LCD1602 液晶显示屏: 我们可以发现上图读出的地址并不是唯一的,因此需要大家慢慢尝试读出的地址哪个是自己显示屏的初始化地址。 以上如果没有解决问题,可至mind+官方QQ群交流问题:671877416 |
我的是microbit,也是遇到的相同的问题。最终解决了。 首先,液晶LCD屏幕的电源必须是5V, 3v不行。这是多次试验的结果。 且,LCD屏幕的电源的0v和 microbit主板的0v,必须接通,即共地。 这2个都接好了,就剩下地址的问题了。 关于地址的确定方法: 按照楼主的办法,用mind+写一段程序,读取扫描到的i2c的地址。建立一个string的变量,然后把读到的这个地址赋值到string的变量中,显示在microbit的屏幕上。用来确认LCD的I2C地址。 我的截图中的程序就是类似的办法。 不过,我在i2c通讯线上还挂了一个12864显示器,此显示器地址是60,已经测试好了的。然后,将读到的所有i2c的地址全部显示到12864显示器上。就好判断多了。 读到的是30 39 60三个地址,(显示的是0x1E 0X3C等16进制数),其中,30是microbit内部自带的一个i2c设备,60是12864显示器,39就是我的1602显示器了。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed