赞
踩
本次试验使用Arduino ESP32-S 开发板, 基本上乐鑫ESP系列皆可
使用的传感器为DHT11传感器简单封装模块
安装 DHT Arduino 或者 DHT ESPx 都可
这里我选择安装DHT Arduino
如果选择DHT ESPx的话, 引用库的时候要引用"DHTesp.h
DHT11 传感器引脚 | Arduino ESP32 引脚 |
---|---|
GND | GND |
VCC | 3.3V or 5V |
DATA 数据引脚 | GPIO 14 |
以下是模拟接线和实际模块
模拟接线使用的是DHT22, 并且是无封装, 仅供参考意义
串口打印信息使用了中文, 波特率9600
实际运行打印时, 要确定编码一致, 否则会出现乱码情况
- #include "DHT.h" // 包含DHT库
-
- #define DHTPIN 14 // 定义DHT11数据引脚连接到ESP32的GPIO14
- #define DHTTYPE DHT11 // 定义传感器类型为DHT11
- DHT dht(DHTPIN, DHTTYPE); // 创建DHT传感器对象
-
- void setup() {
- Serial.begin(9600); // 初始化串口通信,波特率设置为9600
- dht.begin(); // 初始化DHT11传感器
- }
-
- void loop() {
- // 读取湿度和温度值
- float h = dht.readHumidity(); // 读取湿度
- float t = dht.readTemperature(); // 读取温度
-
- // 检查读取是否成功
- if (isnan(h) || isnan(t)) {
- Serial.println("读取DHT11失败!"); // 如果读取失败,在串口监视器打印失败信息
- return;
- }
-
- // 串口打印温湿度信息
- Serial.printf("湿度: %.1f%% 温度: %.1f°C\n", h, t); // 格式化输出湿度和温度
- delay(2000); // 等待2秒钟再次读取,DHT11的读取间隔建议不少于2秒
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。