1. 项目概述
这个项目展示了如何用ESP32开发板读取DHT11温湿度传感器的数据,并通过串口输出结果。对于物联网开发者和硬件爱好者来说,这是入门环境监测最经典的实验之一。我曾在多个智能家居项目中实际应用过这个方案,它稳定可靠到可以作为教学案例。
DHT11虽然精度不如更高级的传感器,但胜在价格低廉(通常不到10元)、接线简单,特别适合需要快速验证概念的场景。ESP32则因其双核处理器和Wi-Fi/蓝牙功能,成为物联网项目的首选控制器。两者结合,不到50元就能搭建一个完整的温湿度监测终端。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 硬件准备与接线
2.1 所需材料清单
- ESP32开发板(推荐使用ESP32 DevKitC)
- DHT11温湿度传感器(注意区分模块版和三针版)
- 杜邦线若干(建议使用母对母)
- 微型USB数据线(用于供电和串口通信)
- 可选:面包板(方便临时搭建电路)
注意:市面上DHT11有带PCB的模块版和裸露的三针版。模块版已内置上拉电阻,接线更简单。如果使用三针版,需要额外连接4.7kΩ上拉电阻。
2.2 接线示意图
code复制DHT11 ESP32
VCC → 3.3V
DATA → GPIO4(可自定义)
GND → GND
如果使用三针版DHT11,需要在DATA引脚和VCC之间加4.7kΩ上拉电阻。实际接线时,我习惯用不同颜色的杜邦线区分功能:红色接VCC,黑色接GND,黄色或绿色接信号线。
2.3 电源注意事项
虽然DHT11的工作电压范围是3-5.5V,但建议统一使用ESP32的3.3V输出供电。原因有二:
- 避免电平不匹配导致通信问题
- ESP32的GPIO耐压只有3.3V,直接接5V可能损坏芯片
3. 软件环境配置
3.1 安装必要库文件
在Arduino IDE中需要安装两个库:
- DHT sensor library by Adafruit
- Adafruit Unified Sensor
安装步骤:
- 打开Arduino IDE
- 点击"工具"→"管理库"
- 搜索"DHT"安装第一个结果
- 搜索"Unified Sensor"安装Adafruit的版本
实测发现,库版本不同
