dht11在lcd1602上显示温湿度的代码
时间: 2024-09-08 18:00:46 浏览: 53
在LCD1602上显示DHT11温湿度值的代码通常涉及以下几个步骤:初始化DHT11和LCD1602,从DHT11读取温度和湿度数据,然后将这些数据显示在LCD1602上。以下是一个使用Arduino编写的示例代码片段,用于说明这一过程:
```cpp
#include <LiquidCrystal.h> // 引入LCD库
#include <DHT.h> // 引入DHT库
#define DHTPIN 2 // 定义DHT11数据引脚连接的Arduino数字引脚
#define DHTTYPE DHT11 // 定义DHT11型号
DHT dht(DHTPIN, DHTTYPE); // 创建DHT对象
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // 定义LCD1602的引脚
void setup() {
lcd.begin(16, 2); // 设置LCD的列数和行数
dht.begin(); // 启动DHT11传感器
}
void loop() {
// 读取温湿度值
float h = dht.readHumidity();
float t = dht.readTemperature();
// 检查读取是否成功
if (isnan(h) || isnan(t)) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Error reading");
lcd.setCursor(0, 1);
lcd.print("from DHT11!");
} else {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Temp: ");
lcd.print(t);
lcd.print((char)223); // 显示温度的摄氏度符号
lcd.print("C");
lcd.setCursor(0, 1);
lcd.print("Humidity: ");
lcd.print(h);
lcd.print("%");
}
delay(2000); // 等待2秒钟再次读取
}
```
这段代码首先包含了`LiquidCrystal`和`DHT`库,它们分别用于操作LCD1602显示屏和DHT11温湿度传感器。然后定义了连接到Arduino的引脚和DHT11型号,并创建了相应的对象。`setup`函数中初始化了LCD和DHT11。`loop`函数中读取温度和湿度数据,并通过LCD显示。如果读取失败,则会在LCD上显示错误信息。
请注意,这段代码需要你的开发环境中已经安装了对应的DHT传感器库和LCD1602库,并且你的硬件连接是正确的。
阅读全文