LCD1602显示屏 带I2C接口

引脚说明

GND ------ 地线

VCC ------ 电源(5V or 3.3v 电源不同显示效果有点差别)

SDA ------ I2C 数据线

SCL ------ I2C 时钟线

接线方法

LCD1602 i2c模块                         Ardunio Uno

GND                           <------>        GND接地线

VCC                           <------>         5V 接电源

SDA                            <------>         A4

SCL                            <------>         A5

程序实现

需要用到LCD1602 I2C的库,下载地址是 https://github.com/marcoschwartz/LiquidCrystal_I2C

把下载的库放到Arduino的库里

文件夹说明:
LiquidCrystal_I2C-master     ——LCD1602 I2C库(库需要复制在arduino的库目录里)

//LingShun lab
#include <Wire.h>
#include <LiquidCrystal_I2C.h> //引用I2C库//设置LCD1602设备地址,这里的地址是0x3F,一般是0x20,或者0x27,具体看模块手册
LiquidCrystal_I2C lcd(0x3F,16,2);  void setup()
{lcd.init();                  // 初始化LCDlcd.backlight();             //设置LCD背景等亮
}void loop()
{lcd.setCursor(0,0);                //设置显示指针lcd.print("LCD1602 iic Test");     //输出字符到LCD1602上lcd.setCursor(0,1);lcd.print("         by L.L.");delay(1000);
}

显示结果:

问题解疑

是一个模块还是两个模块?

这模块是通过LCD1602屏 和 LCD1602 I2C 模块 焊接结合的,可以直接买焊接好的,也可以分开买,不过就需要点动手能力。

无法正常显示?

刚上电的时候,老是显示一个个方块,如图

这情况一般是地址错误,我根据说明上写的地址0x20,0x27 都试了个遍还是无法正常显示

后来通过一网友的帖子把这问题给解决了,

贴出了一个寻找设备地址的代码 (来源:Arduino驱动IIC/I2C LCD1602模块显示(4根线解决连接))

#include <Wire.h>void setup(){Wire.begin();Serial.begin(9600);Serial.println("\nI2C Scanner");
}
void loop(){byte error, address;int nDevices;Serial.println("Scanning...");nDevices = 0;for (address = 1; address < 127; address++ ){// The i2c_scanner uses the return value of// the Write.endTransmisstion to see if// a device did acknowledge to the address.Wire.beginTransmission(address);error = Wire.endTransmission();if (error == 0){Serial.print("I2C device found at address 0x");if (address < 16)Serial.print("0");Serial.print(address, HEX);Serial.println(" !");nDevices++;}else if (error == 4){Serial.print("Unknow error at address 0x");if (address < 16)Serial.print("0");Serial.println(address, HEX);}}if (nDevices == 0)Serial.println("No I2C devices found\n");elseSerial.println("done\n");delay(5000); // wait 5 seconds for next scan
}

把模块按接线方法接好,上传这段代码后,打开端口监视器,就能找到在I2C上的设备地址,大家可以试试哦~~~

转载地址:https://blog.csdn.net/ling3ye/article/details/51542424

Arduino 和LCD1602显示屏相关推荐

  1. Arduino连接LCD1602显示屏

    LCD1602液晶屏 带I2C接口 使用I2C接口,省IO口,只需要4条线即可.通过背光灯,和可调节对比度(就是背面蓝色那块可以旋转的调) 自从1.6.6版本的IDE出来后,不断有反应LCD 1602 ...

  2. Arduino和C51开发LCD1602显示屏

    技术:51单片机.Arduino.LCD1602 概述 本文介绍了LCD1602显示屏,并在LCD1602上显示字符串,对LCD1602常见的问题的解决和开发方法也做了简单介绍. 详细 代码下载:ht ...

  3. 物联网开发笔记(25)- 使用Micropython开发ESP32开发板之控制LCD1602显示屏

    这一节我们讲解了如何控制LCD1602显示屏,显示两行字. 一.目的 使用MicroPython开发ESP32开发板控制LCD1602显示屏 二.环境 ESP32 + LCD1602显示屏 + Tho ...

  4. 【arduino】LCD1602屏幕动画

    [arduino]LCD1602屏幕动画 一.实验器材 UNO控制板:1块 LCD1602带解码器(PCF8574)显示屏 杜邦线若干 二.连线示意图 GND接–GND VCC接–VCC SDA接–A ...

  5. 物联网开发笔记(26)- 使用Micropython开发ESP32开发板之控制LCD1602显示屏(续)

    上一节介绍了使用i2c来控制LCD1602显示屏,那么使用GPIO怎么控制LCD1602显示屏呢?使用GPIO又分为8bit和4bit两种模式,比较常用的4bit模式,因为它占用GPIO口比较少.   ...

  6. 树莓派通过I2C驱动LCD1602显示屏

    问题来源 在此之前学习了Arduino驱动LCD1602(Arduino通过I2C控制1602LCD显示屏),其过程比较简单,现在想通过树莓派实现控制功能,提升树莓派编程控制能力,在此过程中虽然能正常 ...

  7. android蓝牙通信_使用Arduino构建OLED显示屏与Android手机接口的智能手表

    背景知识视频教程 Arduino 训练营:通过项目学习​viadean.com 通过制作Arduino UNO FM收音机接收器学习Arduino I2C​viadean.com 通过构建实际应用程序 ...

  8. android 环形时间显示_使用Arduino构建OLED显示屏与Android手机接口的智能手表

    背景知识视频教程 Arduino 训练营:通过项目学习​viadean.com 通过制作Arduino UNO FM收音机接收器学习Arduino I2C​viadean.com 通过构建实际应用程序 ...

  9. 4.11 51单片机-LCD1602显示屏

    4.11 LCD1602显示屏 4.11.1 原理图介绍 图4-11-1 图4-11-2 根据原理图得知: LCD1602的数据脚接P0口. RD(RS)引脚接P2.6 WR(RW)引脚接P2.5 L ...

最新文章

  1. ABAP git客户端
  2. 当薪资倒挂成为常态,然后呢?
  3. 【Android 安全】使用 360 加固宝加固应用 ( 加固工具准备 | 生成签名 APK | 加固操作 | 反编译验证加固效果 )
  4. 在gcc中定义符号常量
  5. Microsoft.Jet.OLEDB.4.0和Microsoft.ACE.OLEDB.12.0的适用版本
  6. python requests form data_Python requests模块 multipart/form-data类型文件上传
  7. label包裹input,点击label响应两次解决方法
  8. 循环神经网络_小孩都看得懂的循环神经网络
  9. Oracle11g常用数据字典
  10. 基于Springboot的Java邮件系统的设计与实现(附论文和源码)
  11. 【智能无线小车系列九】在树莓派上使用USB摄像头
  12. 颜色空间(一)——RGB色彩模式
  13. 手机版wps怎么制作折线图_怎么制作手机铃声 录制声音片段方法
  14. redis管理_Redis 桌面管理工具Redis Desktop Manager
  15. English trip V2 - 24 Making Predictions Teacher: Taylor
  16. Python-random.seed()的作用
  17. 优化距离计算函数的matlab实现
  18. 十三、Java高级特性 Lambda表达式 | 接口组成更新 | 方法引用 | 函数式接口
  19. 最新公众号今日头条自媒体视频课程
  20. Java遍历指定目录或当前目录

热门文章

  1. 为何都喜欢喝酱香型白酒,酱香型白酒和浓香型白酒有何区别? - 知乎
  2. 在职计算机应用研究生,攻读计算机应用技术在职研究生可以获得什么学历?
  3. android 手柄sdk,android studio 手柄接入
  4. 广告公司客户关系管理教程
  5. MMORPG - 战斗系统,计算伤害
  6. 手机强制移除ppt密码,忘记ppt密码怎么办?
  7. Latex表格的用法,以及表格大小的调整方法
  8. lisp绘制直齿圆柱齿轮_基于AutoLISP的模拟滚齿以及滚刀齿形验证
  9. ESL第三章 回归的线性方法 系数近似置信集/高斯-马尔可夫定理/正交化、最优子集/向前向后逐步选择/向前分段回归、参数有效数量/最小角回归、主成分/偏最小二乘、多输出收缩、其他L1和路径相关算法
  10. web实验一JSP环境配置及开发、运行