STM32入门HAL库-单总线温湿度传感器DHT11

目录

1 目标

2 背景知识

2.1 DHT11

2.2 定时器

3 过程

3.1 GPIO复用

3.2 定时器 

3.3 单总线

3.4 不足

参考文献

附录


1 目标

通过HAL库操作GPIO口,控制单总线协议的温湿度传感器DHT11

2 背景知识

2.1 DHT11

为了与DHT11进行数据交换,我们需要知道交互的协议,查阅手册。注意,不同厂家对时序定义可能不同

一次传送40bit数据,8位湿度整数,8位湿度小数,8位温度整数,8位温度小数,8位校验和,高位先出,需要注意的是小数部分为保留字段无意

起始请求,注意是至少拉低18ms

数据0表示

数据1表示

2.2 定时器

 STM32有非常多种类的定时器,这里选择通用定时器TIM2进行解析

查阅手册,可以发现TIM2时钟线挂载在于PCLK1上,并通过分频最终供给TIM2

回到CubeMX,查看时钟树,得到TIM2频率为120MHz

定时器在每个时钟周期,计数值会+1/-1直到产生溢出发生更新事件,时钟还可以通过预分频系数进一步降低频率

对于TIM2,通过在CubeMX中查看Counter Period得知为32

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值