我是靠谱客的博主 落后芝麻,最近开发中收集的这篇文章主要介绍Arduino 和LCD1602液晶屏 I2C接口实验,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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的库里
程序和库打包下载:https://u16460183.ctfile.com/fs/16460183-295783929
文件夹说明:
LiquidCrystal_I2C-master ——LCD1602 I2C库(库需要复制在arduino的库目录里)
LS_LCD1602 ——主程序
代码:

//LingShun lab
#include <Wire.h> 
#include <LiquidCrystal_I2C.h> //引用I2C库
 
//设置LCD1602设备地址,这里的地址是0x3F,一般是0x20,或者0x27,具体看模块手册
LiquidCrystal_I2C lcd(0x3F,16,2);  
 
void setup()
{
  lcd.init();                  // 初始化LCD
  lcd.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液晶屏与LM35测量室内温度
代码:

//LingShun lab
#include <Wire.h> 
#include <LiquidCrystal_I2C.h> //引用I2C库
#define LM35 A0

LiquidCrystal_I2C lcd(0x27,16,2); //设置LCD1602设备地址,这里的地址是0x3F,一般是0x20,或者0x27,具体看模块手册
int val=0;
float temp = 0;
void setup()
{
  lcd.init();                  // 初始化LCD
  lcd.backlight(); //设置LCD背景等亮
  lcd.print("Welcome to use!");
  delay(1000);
  lcd.clear();
}

void loop()
{
  val=analogRead(LM35);
  temp=val*4.8876;
  lcd.setCursor(0,0);
  lcd.print("LM35 temperature: ");
  lcd.setCursor(0,1);
  lcd.print((int)temp/10);//显示整数部分
  lcd.print(".");
  lcd.print((int)temp%10);//显示小数部分
  
  lcd.print((char)223);
  lcd.print("C");
  delay(1000);
}

改进代码:

//LingShun lab
#include <Wire.h> 
#include <LiquidCrystal_I2C.h> //引用I2C库
#define LM35 A0

LiquidCrystal_I2C lcd(0x27,16,2); //设置LCD1602设备地址,这里的地址是0x3F,一般是0x20,或者0x27,具体看模块手册
int val=0;
float temp = 0;
void setup()
{
  lcd.init();                  // 初始化LCD
  lcd.backlight(); //设置LCD背景等亮
  lcd.print("Welcome to use!");
  delay(1000);
  lcd.clear();
}

void loop()
{
  val=analogRead(LM35);
  temp=(5.0*val*100.0)/1024;
  lcd.setCursor(0,0);
  lcd.print("LM35 temperature: ");
  lcd.setCursor(0,1);
  lcd.print(temp);
  
  lcd.print((char)223);
  lcd.print("C");
  delay(1000);
}

在这里插入图片描述
LCD1602液晶屏与dht11测量室内温度与湿度:
代码:

#include <Wire.h> 
#include<Adafruit_Sensor.h>
#include<DHT.h>
#include <LiquidCrystal_I2C.h> //引用I2C库
#define DHTPIN 2
#define DHTTYPE DHT11
DHT dht(DHTPIN,DHTTYPE);

LiquidCrystal_I2C lcd(0x27,16,2); //设置LCD1602设备地址,这里的地址是0x3F,一般是0x20,或者0x27,具体看模块手册
int val=0;
float temp = 0;
void setup()
{
  lcd.init();                  // 初始化LCD
  lcd.backlight(); //设置LCD背景等亮
  lcd.print("Welcome to use!");
  delay(1000);
  lcd.clear();
}

void loop()
{
  lcd.setCursor(0,0);
  float h=dht.readHumidity();
  float t=dht.readTemperature();
  float f=dht.readTemperature(true);
  if (isnan(h)||isnan(t)||isnan(f)){
    lcd.print("Failed to read!");
    return;
  }
  lcd.print("Hum:     Tem: ");
  lcd.setCursor(0,1);
  lcd.print(h);
  lcd.print("%   ");
  lcd.print(t);
  lcd.print((char)223);
  lcd.print("C");
  delay(1000); 
}

在这里插入图片描述

最后

以上就是落后芝麻为你收集整理的Arduino 和LCD1602液晶屏 I2C接口实验的全部内容,希望文章能够帮你解决Arduino 和LCD1602液晶屏 I2C接口实验所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(68)

评论列表共有 0 条评论

立即
投稿
返回
顶部