31.STM32温湿传感器DHT11

1.DHT11

工作能力
工作电压范围:3.3V-5.5V
工作电流 :平均0.5mA
输出:单总线数字信号
测量范围:湿度2090%RH,温度050℃
精度 :湿度±5%,温度±2℃
分辨率 :湿度1%,温度1℃
介绍
1.DHT11数字湿温度传感器采用单总线数据格式。单个数据引脚端口完成输入输出双向传输。其数据包由**5Byte(40Bit)**组成。数据分小数部分和整数部分,一次完整的数据传输为40bit,高位先出。
2.DHT11的数据格式为:8bit湿度整数数据+8bit湿度小数数据+8bit温度整数数据+8bit温度小数数据+8bit校验和。
3.其中校验和数据为前四个字节相加。
4.传感器数据输出的是未编码的二进制数据。数据(湿度、温度、整数、小数)之间应该分开处理。

请添加图片描述
由以上数据就可得到湿度和温度的值,计算方法:
湿度= byte4 . byte3=45.0 (%RH)
温度= byte2 . byte1=28.0 ( ℃)
校验= byte4+ byte3+ byte2+ byte1=73(校验正确)

2.DHT11的信号与代码

发送流程
首先主机发送开始信号,即:拉低数据线,保持t1(至少18ms)时间,然后拉高数据线t2(20-40us)时间,然后读取DHT11的响应,正常的话,DHT11会拉低数据线,保持t3(40-50us)时间,作为响应信号,然后DHT11拉高数据线,保持t4(40-50us)时间后,开始输出数据。

主机拉低18ms,然后拉高20-40us,等待应答
DTT11会拉低40-50us作为应答,拉高40-50us后就发送数据
请添加图片描述
复位
请添加图片描述
回应
请添加图片描述

输出0
就是拉低12-14us,后再拉高16-28us就是0
请添加图片描述
输出1

就是拉低12-14us,后再拉高116-118us就是1请添加图片描述
读取一个位
请添加图片描述

读取一个字节
请添加图片描述
解析温度与湿度

请添加图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值