基于STM32的DHT11时序

一、DHT11接口说明

DHT11对外一共有三根引脚,VCC,GND和DATA,通过DATA可以与MCU进行通信,采用单总线数据格式,一次通讯时间4ms左右,数据格式为:

8bit湿度整数数据+8bit湿度小数数据

+8bi温度整数数据+8bit温度小数数据

+8bit校验和

本次的实验中DATA与MCU的PA5相连。

二、通讯时序图

1.开始信号

总线空闲状态为高电平,主机把总线拉低等待DHT11响应,主机把总线拉低必须大于18毫秒,保证DHT11能检测到起始信号。DHT11接收到主机的开始信号后, 等待主机开始信号结束,然后发送80us低电平响应信号.主机发送开始信号结束后,延时等待20-40us后, 读取DHT11的响应信号,主机发送开始信号后,可以切换到输入模式(在STM32中,由于一个GPIO口在同一时间内只可以作为发送端或者接受端,所以在MCU发送开始信号后应该及时将GPIO切换至输入模式来接收DHT的响应信号 ,在响应信号结束后开始数据传输
#define DHT11_HIGH HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,GPIO_PIN_SET)
#define DHT11
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值