DHT11 是由奥松电子(Aosong Electronics)研发的低成本数字式温湿度一体化传感器,凭借 “单芯片集成 + 单总线通信” 的设计优势,成为智能家居、消费电子、环境监测及工业入门级场景的核心感知部件。其核心价值在于以极低的成本实现温湿度数据的数字化输出 —— 无需外部模数转换(ADC)电路,仅通过 3 根线即可与微控制器(如 51 单片机、Arduino、STM32)通信,大幅降低硬件设计复杂度与开发成本。
一、DHT11 的工作原理

DHT11 的工作流程围绕 “信号采集 - 信号处理 - 数据输出” 三个核心环节展开,其内部架构由湿度敏感单元、温度敏感单元、信号调理模块、MCU 核心及单总线接口五部分组成,各模块协同实现温湿度数据的精准采集与数字化传输。
(1) 温湿度信号采集
- 湿度采集:高分子湿敏电阻的电阻变化效应
DHT11 内部集成高分子聚合物湿敏电阻,其电阻值与环境相对湿度呈负相关特性:当相对湿度升高时,湿敏电阻吸收空气中的水分子,导致电阻值显著降低;当相对湿度降低时,湿敏电阻释放水分子,电阻值回升。为将电阻变化转化为可测量的电信号,传感器内部设计了固定分压电路 —— 以 5V 供电为例,湿敏电阻与内部基准电阻串联,分压点输出的模拟电压信号随湿度变化呈线性波动(如 20% RH 时输出 1.2V,60% RH 时输出 2.8V),完成 “湿度→电阻→电压” 的第一次转换。
- 温度采集:NTC 热敏电阻的温度系数特性
温度采集依赖负温度系数(NTC)热敏电阻:其电阻值随温度升高而减小,随温度降低而增大。与湿度采集类似,NTC 热敏电阻同样通过内部分压电路与基准电阻串联,分压输出的模拟电压信号随温度变化(如 0℃时输出 3.5V,50℃时输出 1.1V),实现 “温度→电阻→电压” 的信号转换。
(2)信号处理:从模拟信号到数字数据的转化
采集到的温湿度模拟信号需经过信号调理 + 模数转换,才能转化为微控制器可识别的数字数据,具体流程如下:
- 信号放大:由于湿敏电阻与 NTC 热敏电阻输出的模拟信号幅度较小(通常仅 0.5~4V),需通过内部运算放大器将信号放大至 ADC 的最佳输入范围(如 0~3.3V),避免信号过弱导致的量化误差;
- 滤波去噪:通过 RC 低通滤波电路滤除环境电磁干扰(如电源噪声、外部电机 / 继电器的射频干扰),减少信号波动 —— 例如,针对 50Hz 工频干扰,滤波电路的截止频率设计为 10Hz,确保输出信号平稳;
- 模数转换(ADC):采用 8 位逐次逼近型 ADC,将滤波后的模拟电压信号转换为数字信号。由于 DHT11 的分辨率设计为 “温度 1℃、湿度 1% RH”,8 位 ADC 的量化精度(256 级)已能满足需求,无需更高位数的 ADC(如 12 位),既降低成本又简化内部电路;
- 数据校验:内部 MCU 核心对 ADC 输出的温湿度数字数据进行校验 —— 通过预设的校准算法修正温度 / 湿度的非线性误差(如 NTC 热敏电阻的非线性特性),同时计算校验和(前 32 位数据累加和),确保数据准确性。
(3)数据输出:单总线协议的双向通信
DHT11 采用自定义单总线协议实现与主机(微控制器)的通信,无需时钟线(SCL),仅通过 DATA 线完成 “主机启动信号” 与 “传感器数据响应” 的双向交互:
- 主机通过拉低 DATA 线发送 “启动信号”,触发传感器内部数据处理流程;
- 传感器完成数据校验后,按照固定格式(40 位数据)将温湿度数据通过 DATA 线传输给主机;
- 主机接收数据后,通过校验和验证数据有效性,若校验通过则解析温湿度值,否则触发重新采集。
二、主要性能参数与特性
(1)核心测量参数
| 参数类别 | 规格范围 | 典型值(25℃环境) | 测试条件 |
| 温度测量范围 | 0℃ ~ 50℃ | - | 相对湿度 40%~60% RH |
| 温度测量精度 | ±2℃ | ±1.5℃ | 0℃~50℃全量程 |
| 湿度测量范围 | 20%RH ~ 90%RH | - | 温度 25℃ |
| 湿度测量精度 | ±5%RH | ±4%RH | 40% RH~60% RH 区间 |
| 分辨率 | 温度 1℃,湿度 1% RH | - | 全量程 |
| 采样周期 | ≥2 秒 | 2 秒 | 连续采集模式 |
| 响应时间 | 温度≤3 秒,湿度≤5 秒 | 温度 2.5 秒,湿度 4 秒 | 温度从 25℃→33℃,湿度从 0% RH→63% RH |
(2)关键电气特性
- 供电电压:3.3V ~ 5.5V DC(兼容主流单片机供电,无需电平转换);
- 工作电流:测量状态(数据采集阶段)2.5mA,待机状态(无采集指令)≤100μA(适合电池供电设备,如无线温湿度传感器);
- 输出接口:单总线(DATA),支持双向数据传输,硬件连接仅需 VCC、DATA、GND 三根线;
- 存储环境:温度 - 20℃~60℃,湿度 0% RH~80% RH(无冷凝),满足大部分场景的存储需求;
- 封装形式:4 针 DIP(直插)、4 针 SMT(贴片),DIP 封装适合面包板实验,SMT 封装适合批量生产的 PCB 设计。
(3)核心技术特性
- 单芯片集成设计:将温湿度采集、信号调理、ADC 转换、数据校验及通信接口集成于单一芯片,体积仅为 15mm×12mm×5mm(DIP 封装),节省 PCB 空间;
- 数字信号直接输出:无需外部 ADC 模块或信号调理电路,避免模拟信号传输过程中的干扰与衰减,提升数据可靠性;
- 内置数据校验机制:通过 40 位数据中的最后 8 位校验和(前 32 位数据累加和)验证数据完整性,降低传输错误率;
- 低门槛开发:无需复杂校准流程(出厂前已完成校准),上电即可工作,且 Arduino、STM32 等平台均有成熟开源驱动,开发周期可缩短至 1~2 天;
- 成本优势显著:批量采购成本仅为高精度传感器(如 SHT30,15~25 元 / 颗)的 1/5~1/8,适合对成本敏感的批量项目(如智能家居网关、温湿度记录仪)。
三、与其他传感器的对比
为明确 DHT11 的技术定位,将其与同类型温湿度传感器(DHT22、SHT30)及纯温度传感器(DS18B20)进行多维度对比,帮助开发者根据场景需求选型。
(1)DHT22(AM2302)对比
DHT22 是 DHT11 的工业级升级型号,核心优化方向为 “测量范围扩展 + 精度提升”,具体差异如下
| 对比维度 | DHT11 | DHT22(AM2302) |
| 温度范围 | 0℃~50℃ | -40℃~80℃ |
| 温度精度 | ±2℃(全量程) | ±0.5℃(-10℃~65℃) |
| 湿度范围 | 20%RH~90%RH | 0%RH~100%RH |
| 湿度精度 | ±5%RH(40%RH~60%RH) | ±2%RH(20%RH~80%RH) |
| 分辨率 | 温度 1℃,湿度 1% RH | 温度 0.1℃,湿度 0.1% RH |
| 采样周期 | ≥2 秒 | ≥2 秒 |
| 供电电流 | 测量 2.5mA,待机 100μA | 测量 1.5mA,待机 100μA |
| 价格 | 1~3 元 / 颗 | 5~8 元 / 颗 |
| 适用场景 | 民用场景(室内监测) | 工业场景(冷链、实验室) |
选型建议:若场景对温湿度范围或精度有要求(如冷链运输需 - 20℃~5℃测量、实验室需 ±1% RH 精度),优先选择 DHT22;若仅需室内常规监测,DHT11 性价比更高。
(2) SHT30 对比
SHT30 是瑞士盛思锐(Sensirion)推出的高端温湿度传感器,代表行业高精度水平,与 DHT11 的差异体现在 “精度、功耗、协议” 三大维度:
| 对比维度 | DHT11 | SHT30 |
| 温度精度 | ±2℃ | ±0.2℃(0℃~65℃) |
| 湿度精度 | ±5%RH | ±2%RH(20%RH~80%RH) |
| 分辨率 | 温度 1℃,湿度 1% RH | 温度 0.01℃,湿度 0.01% RH |
| 通信协议 | 自定义单总线 | I2C 标准协议(支持 100kHz/400kHz) |
| 功耗 | 测量 2.5mA,待机 100μA | 测量 3.4mA,待机 0.1μA |
| 校准机制 | 出厂一次性校准 | 内置自动校准算法 |
| 价格 | 1~3 元 / 颗 | 15~25 元 / 颗 |
| 优势 | 低成本、易开发 | 高精度、低功耗、高稳定性 |
选型建议:医疗设备(如 incubator)、气象监测、工业过程控制等对精度要求极高的场景,选择 SHT30;民用或成本敏感型项目,选择 DHT11。
(3) DS18B20 对比
DS18B20 是 Maxim 推出的单总线温度传感器,仅支持温度测量,与 DHT11 的核心差异在于 “功能定位”:
| 对比维度 | DHT11 | DS18B20 |
| 测量功能 | 温湿度一体化 | 仅温度 |
| 温度范围 | 0℃~50℃ | -55℃~125℃ |
| 温度精度 | ±2℃ | ±0.5℃(-10℃~85℃) |
| 分辨率 | 1℃(固定) | 9~12 位可编程(0.5℃~0.0625℃) |
| 通信协议 | 自定义单总线 | 1-Wire 标准单总线 |
| 多传感器挂载 | 支持(需自定义地址) | 支持(64 位唯一序列号) |
| 适用场景 | 需同时测温湿度的场景 | 高精度测温场景(工业炉、冷库) |
选型建议:若场景仅需温度测量且要求宽范围、高精度,选择 DS18B20;若需同时监测温湿度,选择 DHT11。
四、引脚功能介绍

DHT11 的常见封装为 4 针 DIP(直插)和 4 针 SMT(贴片),两种封装的引脚定义完全一致,以下以 4 针 DIP 封装为例(引脚朝向开发者,从左至右依次为 1~4 脚),详细说明各引脚功能及硬件连接要点
| 引脚 | 引脚名称 | 电气特性 | 功能描述与连接建议 |
| 1 | VCC | 3.3V~5.5V DC | 电源正极,为传感器内部电路(湿敏单元、ADC、MCU)提供工作电压。连接建议:在 VCC 与 GND 之间并联 0.1μF 陶瓷电容(去耦电容),滤除电源噪声,避免供电波动影响测量精度。 |
| 2 | DATA | 双向 I/O | 单总线数据引脚,承担 “主机发送启动信号” 与 “传感器发送温湿度数据” 的双向通信功能。连接建议:必须通过 4.7kΩ~10kΩ 上拉电阻连接到 VCC,确保总线空闲时为高电平(否则传感器无法检测启动信号);若传输距离超过 2 米,建议使用屏蔽线,减少信号衰减与电磁干扰。 |
| 3 | NC | 无电气连接 | 空脚(No Connection),无任何功能,仅为封装结构设计。连接建议:设计 PCB 时悬空处理,禁止连接任何电路(包括 GND),避免引入不必要的干扰。 |
| 4 | GND | 0V | 电源负极,电路参考地,为传感器内部各模块提供统一电位基准。连接建议:必须与微控制器的 GND 共地,确保电位一致;若系统存在多个接地(如模拟地、数字地),需将 DHT11 的 GND 连接到数字地,避免地环流干扰。 |
硬件连接常见误区:
- 省略 DATA 线上拉电阻:导致总线空闲时为低电平,传感器无法识别主机的启动信号,表现为 “数据读取失败”;
- VCC 与 GND 接反:直接烧毁传感器内部 MCU 核心,属于不可逆损坏;
- 未并联去耦电容:电源噪声会导致 ADC 转换误差,表现为温湿度数据波动(如温度频繁跳变 ±1℃)。
五、通信协议与数据读取

DHT11 采用自定义单总线协议,数据传输对时序精度要求极高(微秒级),整个通信过程分为 “主机发送启动信号” 和 “传感器响应与数据发送” 两个阶段,以下详细解析通信时序与数据读取流程。
步骤 1:主机发送启动信号
- 主机将 DATA 引脚配置为 “输出模式”,拉低 DATA 线,持续 18ms(代码中常用delay(20)确保满足时长);
- 主机释放 DATA 线(将 DATA 引脚配置为 “输入模式”),等待 20~40μs,进入 “响应检测” 阶段。
步骤 2:传感器响应与数据发送
- 传感器拉低 DATA 线 80μs,主机检测到低电平后,确认传感器正常;
- 传感器释放 DATA 线,DATA 线在了你上拉电阻作用下变为高电平,持续 80μs;
- 80μs 后,传感器开始连续发送 40 位数据,数据格式为:
8位湿度整数 + 8位湿度小数 + 8位温度整数 + 8位温度小数 + 8位校验和
(注:DHT11 的湿度小数和温度小数固定为 0,因此对应字节恒为 0x00,实际有效数据为 “湿度整数 + 温度整数”)。
步骤 3:数据校验与解析
- 主机接收 40 位数据后,计算前 32 位数据的累加和,与第 33~40 位(校验和)对比;
- 若 “累加和 = 校验和”,数据有效,解析公式为:
- 相对湿度 = 湿度整数位(十进制) % RH
- 温度 = 温度整数位(十进制) ℃
若校验失败,判定为 “数据错误”,需重新发起读取流程。
六、DHT11的相关应用设计
👉👉👉👉其他作品题目速选一览表


1587

被折叠的 条评论
为什么被折叠?



