
1、介绍
DHT11数字温度 - 湿度传感器是一种包含校准数字信号输出的复合传感器。它采用特殊的数字模块采集技术和湿度 - 温度传感器技术,确保高可靠性和出色的长期稳定性。传感器由电阻式湿度元件和NTC温度测量元件组成 。 DHT11通过单总线与微处理器通信。 它只需要一个线程,一次发送40个数据 。
数据格式: 8位湿度整数数据+ 8位湿度十进制数据+ 8位温度整数数据+ 8位温度十进制数据+ 8位奇偶校验位。
数据发送过程:主控发送启动信号 - > DHT响应信号 - > DHT通知主控它已准备好接受信号 - > DHT发送准备好的数据 - > DHT结束信号 - > DHT内部重新测试环境温度和湿度,记录下一个数据 从主控开始发出信号。
通过该过程获得,每次收集的数据主控始终是最后一次DHT数据。如果我们想获得实时数据,那么主控可以收集两个连续的数据,但是,正式地,不建议连续多次读取DHT。如果每次读取的间隔时间超过5秒,则足以获得准确的数据。DHT在通电时需要1秒才能稳定。
2、原理图
3、模块参数
引脚名称 | 描述 |
|---|---|
G | GND(电源输入负极) |
V | VCC(电源输入正极) |
S | 数字信号引脚 |
供电电压:3.3V / 5V
连接方式:2.54mm排针
安装方式:双螺丝固定
4、电路板尺寸

5、Arduino IDE示例程序
注意:程序上传时如果提示库文件报错,请先导入库文件!
Arduino IDE 库文件下载及导入教程:点击查看
示例程序(UNO开发板):
#include <DHT.h>
volatile float wendu_;
volatile float shidu;
DHT dht9(9, 11);
void setup(){
Serial.begin(9600);
wendu_ = 0;
shidu = 0;
dht9.begin();
}
void loop(){
//dht11温湿度传感器接D9
delay(2000);
shidu = dht9.readHumidity();
wendu_ = dht9.readTemperature();
Serial.print(wendu_);
Serial.print("℃");
Serial.print(" ");
Serial.print(shidu);
Serial.println("%");
}6、ESP32 Python 示例(适用于Mixly IDE /米思齐)
开发板选择 Python ESP32 【ESP32 Generic(4MB)】切换为代码模式上传
注意:程序上传时如果提示库文件报错,请先导入库文件!
米思齐(Mixly)IDE ESP32库文件下载及导入教程:点击查看
示例程序(ESP32-Python):
import machine
import dhtx
import time
while True:
print(dhtx.DHT11(2).temperature(),end ="")
print(' ',end ="")
print(dhtx.DHT11(2).humidity())
time.sleep_ms(200)7、米思齐 Mixly 示例程序(图形化语言)
示例程序(UNO开发板):点击下载
注意:程序上传时如果提示库文件报错,请先导入库文件!
米思齐(Mixly)IDE Arduino库文件下载及导入教程:点击查看

示例程序(ESP32开发板):点击下载
注意:程序上传时如果提示库文件报错,请先导入库文件!
米思齐(Mixly)IDE ESP32库文件下载及导入教程:点击查看

8、测试环境搭建
Arduino UNO 测试环境搭建
准备配件:
HELLO STEM UNO R3 PRO 开发板 *1
USB type-c 数据线 *1
温湿度传感器(HS-S26A)*1
1P母对母杜邦线 *3条 或 3P母对母杜邦线 *1条
电路接线图:

ESP32 测试环境搭建
准备配件:待更新...
电路接线图:待更新...
9、视频教程
视频教程:点击查看
10、测试结果
Arduino UNO 测试结果:
器件连接好线之后,将上述程序上传到 Arduino U+程序卡(UNO板)后,打开串口监视器。 您将看到当前温度和湿度的数据显示在窗口上。
