Arduino-驱动LCD1602A

Demo_01、显示温湿度数据

注意 :根据我的代码注释进行接线,如果还有不懂的就查看lcd的使用手册,有详细的电路图哦!

#include <LiquidCrystal.h>//LCD的头文件
#include <dht11.h>//导入dht11的头文件

#define DhtPIN 2            //dht11控制的端口
#define RS 6                //LCD1602的RS端口
							//RW、VSS、K接GND,VDD、A接VCC
#define E 7                 //LCD1602的E端口
#define D_Four 9            //LCD1602的D4端口
#define D_Five 10           //LCD1602的D5端口
#define D_six 11            //LCD1602的D6端口
#define D_Seven 12          //LCD1602的D7端口
	
LiquidCrystal lcd(RS,E,D_Four,D_Five,D_six,D_Seven);

void setup() {
  lcd.begin(16,2);        //设置LCD为2行16列
  Serial.begin(9600);
}

void loop() {
  dht11 DHT11;
  int chk = DHT11.read(DhtPIN);             //读取传感器数据
  Serial.print("chk = ");                   //串口打印结果,便于观察和调试
  Serial.println(chk);                      //串口打印结果,便于观察和调试
  lcd.setCursor(0,0);                       //初始化LCD的指针再第1行第1列(下标为0)
  
  lcd.print("Temp:");                       //LCD显示“Temp:”字符
  lcd.print((float)DHT11.temperature,0);    //显示温度数据,2位有效数字
    							
  lcd.print("℃");                          //后面显示“℃”单位 字符
  Serial.print("temp = ");                  //串口打印结果,便于观察和调试
  Serial.println((float)DHT11.temperature); //串口打印结果,便于观察和调试
  
  lcd.setCursor(0,1);                       //初始化LCD的指针再第2行第1列
  lcd.print("Hum:");                        //LCD显示“Hum:”字符
  lcd.print((float)DHT11.humidity,0);       //显示湿度数据,2位有效数字
  lcd.print("%");                           //后面显示“%”单位 字符
    
  Serial.print("Hum = ");                   //串口打印结果,便于观察和调试
  Serial.println((float)DHT11.humidity);    //串口打印结果,便于观察和调试
  
  delay(2000);
}

好的,这是一个很常见的项目。首先,你需要将LCD1602A和18B20连接到Arduino Uno板上。你可以按照以下步骤进行操作: 1. 连接LCD1602A - 将LCD1602A的VSS引脚连接到Arduino的GND引脚 - 将LCD1602A的VDD引脚连接到Arduino的5V引脚 - 将LCD1602A的VO引脚连接到一个10K欧姆的变阻器,然后再将变阻器的中间引脚连接到Arduino的A0引脚 - 将LCD1602A的RS引脚连接到Arduino的数字引脚12 - 将LCD1602A的RW引脚连接到Arduino的GND引脚 - 将LCD1602A的E引脚连接到Arduino的数字引脚11 - 将LCD1602A的D4-D7引脚分别连接到Arduino的数字引脚5-8 2. 连接18B20 - 将18B20的VDD引脚连接到Arduino的5V引脚 - 将18B20的DQ引脚连接到Arduino的数字引脚2 - 将18B20的GND引脚连接到Arduino的GND引脚 完成以上连接后,你需要在Arduino IDE中安装OneWire和DallasTemperature库。接下来,你可以使用以下代码进行测试: ``` #include <LiquidCrystal.h> #include <OneWire.h> #include <DallasTemperature.h> // 定义连接LCD1602A的引脚 LiquidCrystal lcd(12, 11, 5, 6, 7, 8); // 定义连接18B20的引脚 #define ONE_WIRE_BUS 2 OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); void setup() { lcd.begin(16, 2); lcd.print("Temperature:"); sensors.begin(); } void loop() { sensors.requestTemperatures(); float tempC = sensors.getTempCByIndex(0); lcd.setCursor(0, 1); lcd.print(tempC); lcd.print("C"); delay(1000); } ``` 这段代码会在LCD1602A上显示实时的温度值。你可以根据需要进行进一步的修改和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农菌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值