【Protues仿真】基于AT89C52单片机的温湿度测量

发布于:2025-09-05 ⋅ 阅读:(20) ⋅ 点赞:(0)

目录

0案例视频效果展示

1DHT11温度湿度传感器

1.1传感器简介

1.2引脚定义(从左到右,面对网格面)

1.3时序 & 校验(原理速览)

1.4常见故障排查

2 DHT11温度湿度传感器数据

2.1 DHT11温度湿度传感器数据格式

2.1.1数据格式

2.1.2例子

2.13注意

2.2 DHT11温度湿度传感器数据传输时序

2.3 DHT11的数据信号转换

2.4 DHT11温度湿度传感器数据传输时序实测

2.5 仿真过程可能遇到的问题

2.5.1 无法读取有效数据

2.5.2 数据失真

3基于AT89C52单片机的温湿度测量电路原理图

3.1连接电路

3.2设置元件参数:

4基于AT89C52单片机的温湿度测量控制程序

  7 硬件工程师笔试面试相关文章链接(部分链接)


0案例视频效果展示

例子:基于AT89C52单片机的温湿度传感器控制

8基于AT89C52单片机的温湿度传感器控制

摘要:DHT11温湿度传感器是一款低成本数字传感器,采用单总线协议通信,测量范围为0-50℃(±2℃精度)和20-90%RH(±5%RH精度)。供电电压3.3V-5.5V,建议5V供电,采样周期需≥1秒。其40bit数据帧包含湿度、温度整数部分(小数位固定为0)和校验和。使用时需注意DATA引脚需4.7kΩ上拉电阻,避免接线过长(>20m)和采样间隔过短。常见故障包括数据全零(上拉电阻问题)、固定值(校验失败)或异常值(传感器受潮)。文章还详细介绍了基于AT89C52单片机的硬件连接方案和软件实现流程,包括时序控制、数据校验及LCD1602显示程序。对于更高精度需求,建议升级至DHT22或SHT30系列传感器。

1DHT11温度湿度传感器

1.1传感器简介
 

功能:同时测量温度(0–50 °C)和相对湿度(20–90 %RH)。
数字输出:单总线(One-Wire)协议,不是 1-Wire,也不是 I²C,而是“自定义单线”。
供电:3.3 V–5.5 V 均可,但官方标称 5 V。
精度:温度 ±2 °C,湿度 ±5 %RH(典型值)。
采样周期:≥1 s;换句话说,两次读取必须间隔 1 秒以上,否则返回上一次数据。

1.2引脚定义(从左到右,面对网格面)

VCC(3.3–5 V)

DATA(单线 I/O,需上拉 4.7 kΩ 到 VCC)

NC(空脚,有时厂家把它当 GND,请查自己模块的丝印)

GND

1.3时序 & 校验(原理速览)
 

主机把 DATA 拉低 ≥18 ms → 拉高 20–40 μs → 切换到输入 → DHT11 回 80 μs 低 + 80 μs 高 → 开始 40 bit 数据,高位在前:
8 bit 湿度整数
8 bit 湿度小数
8 bit 温度整数
8 bit 温度小数
8 bit 校验和 = 前 4 字节之和的低 8 位

1.4常见故障排查

1读出来全是 0 或 NaN:
DATA 引脚没上拉,或上拉电阻太大/太小。
采样间隔 <1 s。
接线过长 >20 m,信号失真。

2温度固定 0 °C 或 25 °C:
校验和失败,库返回旧值。

3湿度 99 % 或 1 %:
传感器进水或长期高湿,塑料外壳结露。

4在 3.3 V 系统不稳定:
某些 DHT11 批次 3.3 V 边缘供电,换成 5 V 供电 + 电平转换。

5升级路线
精度:DHT22/AM2302(-40–80 °C,±0.5 °C,±2–3 %RH)。
长期稳定性:Sensirion SHT30/SHT31/SHT35(I²C 接口,±0.2 °C,±2 %RH)。
低功耗:SHTC3(1.8 V,睡眠 0.5 µA)。
工业级:AM2315C(防结露,RS485)。

2 DHT11温度湿度传感器数据

2.1 DHT11温度湿度传感器数据格式

DHT11 一次完整的“应答帧”固定 40 bit(5 Byte),数据按 高位在前(MSB first 顺序一次性从 DATA 脚发出。

2.1.1数据格式

字节序号

位宽

含义

取值范围

说明

Byte0

8 bit

湿度整数部分


网站公告

今日签到

点亮在社区的每一天
去签到