【花雕学编程】Arduino动手做(256)---AHT20 LCD显示温湿度

2025-05-152147
【花雕学编程】Arduino动手做(256)---AHT20 LCD显示温湿度图2

【花雕学编程】Arduino动手做(256)---AHT20 LCD显示温湿度图1

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(7)
Z7AoUY2D2kq8
Z7AoUY2D2kq8
厉害厉害厉害厉害厉害厉害
驴友花雕
驴友花雕
作者
回复Z7AoUY2D2kq8
谢谢鼓励,不厉害呢,只是系列的练习实验
驴友花雕
驴友花雕
作者
实验场景图



驴友花雕
驴友花雕
作者
实验串口返回情况

驴友花雕
驴友花雕
作者
代码简单解读
使用 ATH20 传感器 读取 温湿度数据,并在 LCD 屏幕 以及 串口监视器 进行实时显示。以下是代码的核心逻辑:
1·、初始化设备
载入 ATH20 传感器库和 I2C LCD 库,用于数据采集和显示。
lcd.init(); 初始化 LCD,并打开 背光。
ATH.begin(); 连接 ATH20 传感器,确保数据采集功能正常。
2、循环读取数据
ATH.getSensor(&humi, &temp); 获取 最新温度和湿度 数据。
3、如果 数据读取成功:
LCD 显示 温度 (°C) 和 湿度 (%RH),并格式化数值。
串口监视器输出 数值数据,方便调试。
4、如果 数据读取失败:
LCD 显示 错误信息,提醒传感器未正常工作。
5、数据更新频率
delay(1000); 设定 1 秒更新间隔,避免数据刷新过快导致干扰。
这个代码适用于 环境监测、智能温控、农业传感 等应用场景,能够实时获取并显示温湿度数据。
驴友花雕
驴友花雕
作者
【Arduino】189种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二百五十六:AHT20 温湿度传感器模块 高精度湿度探头 DHT11升级款I2C
项目之三:在 LCD 屏幕以及串口监视器进行实时显示温湿度
实验开源代码
[code]/*
【Arduino】189种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二百五十六:AHT20 温湿度传感器模块 高精度湿度探头 DHT11升级款I2C
项目之三:在 LCD 屏幕以及串口监视器进行实时显示温湿度
*/
#include // 引入 I2C 通信库
#include // 引入 Adafruit AHTX0 传感器库
#include // 引入 I2C LCD 显示库
// 创建 LCD 显示对象,地址为 0x27,屏幕尺寸 16x2(16 列 x 2 行)
LiquidCrystal_I2C lcd(0x27, 16, 2);
// 创建 AHT10/AHT20 传感器对象
Adafruit_AHTX0 aht;
void setup() {
Serial.begin(9600); // 初始化串口通信,波特率设为 9600
lcd.init(); // 初始化 LCD
lcd.backlight(); // 打开 LCD 背光
// 在 LCD 屏幕上显示启动信息
lcd.setCursor(0, 0);
lcd.print("AHT10/AHT20 Sensor");
lcd.setCursor(2, 1);
lcd.print("with Arduino");
// 初始化 AHT10/AHT20 传感器
if (!aht.begin()) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Sensor Fail");
Serial.println("AHT10/AHT20 not found! Check wiring.");
while (1) delay(10); // 停止执行
}
delay(2000); // 延迟 2 秒,确保传感器稳定
}
void loop() {
lcd.clear(); // 清空 LCD 屏幕
// 创建温湿度数据对象
sensors_event_t humidity, temp;
aht.getEvent(&humidity, &temp); // 读取最新数据
// 在 LCD 屏幕上显示温度数据
lcd.setCursor(0, 0);
lcd.print("Temp: ");
lcd.print(temp.temperature, 1); // 显示温度,保留 1 位小数
lcd.print((char)223); // 显示摄氏度符号 '°'
lcd.print("C");
// 在 LCD 屏幕上显示湿度数据
lcd.setCursor(0, 1);
lcd.print("Humi: ");
lcd.print(humidity.relative_humidity, 1); // 显示湿度,保留 1 位小数
lcd.print("%");
// 在串口监视器输出数据
Serial.print("Temperature: ");
Serial.print(temp.temperature);
Serial.print(" °C, Humidity: ");
Serial.print(humidity.relative_humidity);
Serial.println(" %");
delay(200); // 延迟 1 秒,控制数据更新频率
}[/code]
驴友花雕
驴友花雕
作者
【Arduino】189种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二百五十六:AHT20 温湿度传感器模块 高精度湿度探头 DHT11升级款I2C
项目之三:在 LCD 屏幕以及串口监视器进行实时显示温湿度
实验模块接线示意图

驴友花雕
驴友花雕
作者


- 没有更多了 -