[APM32F4] 【极海APM32F407IG Tiny Board测评】b、驱动温湿度传感器

[复制链接]
 楼主| isgoodmm 发表于 2023-7-16 14:14 | 显示全部楼层 |阅读模式
经过前面一次的搭建环境,现在可以大展拳脚了。我手里有一个温湿度传感器DHT11,心想着可以来驱动一下。
DHT11是单总线传感器,是一款含有已校准数字信号输出的温湿度复 合传感器。它包括一个电阻式感湿元件和一个 NTC 测温元件。每个 DHT11 传 感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在 OTP 内存中,传感器内部在检测信号的处理过程中要调用这些校准系数,用户 无需重新校准。单线制串行接口,使系统集成变得简易快捷。超小的体积、 极低的功耗,信号传输距离可达 20 米以上。
我先把硬件连接好,连接电源和地后,将信号引脚连接到了PE4脚,连接后的硬件如图所示:

接线图.jpg

接下来就是要配置信号引脚,将信号脚配为输出,程序如下:

初始化信号脚.png

然后是复位DHT11,按照时序编写代码如下:

复位.png

再就是检查传感器是否存在,检测代码如下:

检测.png

经过这一些流程后,就可以读取温湿度数据了,具体读取程序如下:

读取数据.png

主函数里首先是进行传感器的初始化,然后就可以开始读取温湿度,主函数如下:

主函数.png

仿真调试读取的温湿度数据如下:

温湿度.png

为了验证读取数据的正确性,我用手触摸了一下传感器,得到的新数据如下:

温湿度变化.png

发生了变化,证明我读取的数据是正确的。
在这次调试过程中,我也碰到了不少的困难,整个调试过程花了好几个小时的时间。一开始总是检测不到传感器的存在,我换了一个引脚还是一样,后来我干脆直接驱动led,证明我管脚的初始化部分是正确的。后来调整延时函数后,才算是正常了。
经过这次的调试,我加强了自己分析和解决问题的能力,也学到了一些调试技巧。最后还是要感谢提供的试用机会。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

63

主题

183

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部

63

主题

183

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部