回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

【花雕学编程】Arduino动手做(218)---DHT22 串口绘图器显示温湿度波形曲线 简单

头像 驴友花雕 2025.05.08 12 0

0.jpg
03.jpg
04-1.jpg
05.jpg
05-0.jpg
06.jpg

  【Arduino】189种传感器模块系列实验(资料代码+仿真编程+图形编程)
 实验二百一十八:DHT22 单总线数字温湿度传感器 AM2302电子积木模块
 项目之二:串口绘图器显示温湿度波形曲线

实验开源代码

 

代码
/*
  【Arduino】189种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验二百一十八:DHT22 单总线数字温湿度传感器 AM2302电子积木模块
  项目之二:串口绘图器显示温湿度波形曲线
*/

#include <DHT.h>

#define DHTPIN 2          // 数据引脚连接到 D2
#define DHTTYPE DHT22     // 使用 DHT22 传感器

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  dht.begin();
}

void loop() {
  float temp = dht.readTemperature();  // 读取温度
  float hum = dht.readHumidity();      // 读取湿度

  if (isnan(temp) || isnan(hum)) {
    Serial.println("Sensor is not available right now");
  } else {
    // **只输出数值,适配 Arduino Serial Plotter**
    Serial.print(temp);
    Serial.print(",");
    Serial.println(hum);
  }

  delay(150);  // **降低刷新间隔,使波形更流畅**
}

代码简单解读

这段代码使用 DHT22 传感器 测量温度和湿度,并通过 Arduino Serial Plotter 显示波形,核心逻辑如下:

1. 初始化
✅ #define DHTPIN 9 → 数据引脚连接到 Arduino 的 D2 
✅ #define DHTTYPE DHT22 → 指定传感器类型为 DHT22 
✅ DHT dht(DHTPIN, DHTTYPE); → 初始化 DHT 传感器 
✅ Serial.begin(9600); → 启动串口通信 
✅ dht.begin(); → 激活传感器

2. 采集温湿度数据
✅ float temp = dht.readTemperature(); → 获取温度数据 
✅ float hum = dht.readHumidity(); → 获取湿度数据

3. 处理数据
✅ if (isnan(temp) || isnan(hum)) → 检查数据是否有效 
✅ 如果传感器未检测到数据,打印“传感器不可用”

4. 显示波形
✅ Serial.print(temp); Serial.print(","); Serial.println(hum); → 以逗号分隔数据,适配 Arduino Serial Plotter 
✅ 绘图器会自动将温度和湿度转换成两条曲线

5. 采集间隔
✅ delay(500); → 每 500 毫秒更新数据,提高波形流畅度

这段代码让 DHT22 传感器不断测量温湿度,并在 Arduino Serial Plotter 生成实时波形。


实验串口返回情况

 

09-.jpg

实验串口绘图器返回情况

 

10.jpg

09.jpg

评论

user-avatar
icon 他的勋章
    展开更多