收藏官网首页
查看: 32324|回复: 9

[经验分享] STM32版Gokit零基础开发之驱动单总线设备DHT11温湿度传感器

321

主题

1054

帖子

4513

积分

论坛元老

Rank: 8Rank: 8

积分
4513
QQ
跳转到指定楼层
楼主
发表于 2016-11-9 18:42:53 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
汉枫LPB120模块
本文主要内容是使用STM32CubeMX配置GPIO,从而驱动gokit2上的数字温湿度传感器DHT11。
一、DHT11简介
DHT11是一款有已校准数字信号输出的温湿度传感器。 精度湿度+-5%RH, 温度+-2℃,量程湿度20-90%RH, 温度0~50℃。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,使其成为该类应用中,在苛刻应用场合的最佳选择。产品为4针单排引脚封装,连接方便。



DHT11引脚说明       
Pin        名称        注释
1        VDD        供电 3-5.5VDC
2        DATA        串行数据,单总线
3        NC        空脚,请悬空
4        GND        接地,电源负极


二、STM32CubeMX的配置





根据Gokit2原理图,DHT11与MCU的引脚PB3连接。
STM32CubeMX的配置十分简单,我们只需将PB3配置为推免输出,后面再程序中再修改,这里还配置了串口1方便打印调试信息,底板红色LED1。



生成工程后,我们在机智云官网下载微信宠物屋源码,拷贝里面的温湿度传感器驱动Hal_temp_hum.h和Hal_temp_hum.c到我们的工程目录,并添加,接下来在此基础上修改;
主要是Hal_temp_hum.h和Hal_temp_hum.c里面的API,这里修改GPIO输出高低电平为HAL API;

把GPIO方向的宏定义用函数的形式实现,输出为推免输出,输入为上拉输入;



us延时函数自己实现一下,这里的us延时并不精确,实际需要根据系统时钟调整;


用HAL的ms级延时API替换原来的;


最后在主函数里面编写测试代码:



一切OK后,打开串口调试助手:


资料下载:
1.STM32CubeMX配置报表:
GokitDemoDHT11.pdf (129.46 KB, 下载次数: 198)
2.完整工程文件:
GokitDemoDHT11.zip (9.06 MB, 下载次数: 1208)
3.DHT11数据手册:
DHT11中文说明书.pdf (608.73 KB, 下载次数: 162)


1、机智云QQ群:G1群:104975951 G2群:491509598 G3群:287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits、 机智云智能宠物屋go-iot
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

1

主题

34

帖子

391

积分

中级会员

Rank: 3Rank: 3

积分
391
沙发
发表于 2017-2-16 15:13:54 | 只看该作者
不懂为啥要去访问那个SysTick->VAL是要比较打印前后的时间吗

点评

是的,我是计算下那个函数的执行时间  详情 回复 发表于 2017-2-17 14:41

321

主题

1054

帖子

4513

积分

论坛元老

Rank: 8Rank: 8

积分
4513
QQ
板凳
 楼主| 发表于 2017-2-17 14:41:56 | 只看该作者
火海狼 发表于 2017-2-16 15:13
不懂为啥要去访问那个SysTick->VAL是要比较打印前后的时间吗

是的,我是计算下那个函数的执行时间
1、机智云QQ群:G1群:104975951 G2群:491509598 G3群:287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits、 机智云智能宠物屋go-iot
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

7

主题

36

帖子

252

积分

中级会员

Rank: 3Rank: 3

积分
252
地板
发表于 2017-6-8 17:08:08 | 只看该作者
每次下载个东西都扣分,太可恶了

点评

没有吧,我的都是免积分下载  详情 回复 发表于 2017-6-8 20:58

321

主题

1054

帖子

4513

积分

论坛元老

Rank: 8Rank: 8

积分
4513
QQ
5#
 楼主| 发表于 2017-6-8 20:58:01 | 只看该作者
汉枫LPB120模块
玮玮 发表于 2017-6-8 17:08
每次下载个东西都扣分,太可恶了

没有吧,我的都是免积分下载

点评

应该是默认都扣一分吧  详情 回复 发表于 2017-6-8 21:31
1、机智云QQ群:G1群:104975951 G2群:491509598 G3群:287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits、 机智云智能宠物屋go-iot
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息

7

主题

36

帖子

252

积分

中级会员

Rank: 3Rank: 3

积分
252
6#
发表于 2017-6-8 21:31:23 | 只看该作者
bigfanofloT 发表于 2017-6-8 20:58
没有吧,我的都是免积分下载

应该是默认都扣一分吧

0

主题

2

帖子

50

积分

注册会员

Rank: 2

积分
50
7#
发表于 2017-6-28 16:33:21 | 只看该作者
玮玮 发表于 2017-6-8 21:31
应该是默认都扣一分吧

下载湿增加积分,你没发现,积分越来越多嘛

0

主题

1

帖子

50

积分

注册会员

Rank: 2

积分
50
8#
发表于 2018-12-23 21:02:07 | 只看该作者
自己按照这个搞,还老是出错,用你的工程也没有用,可能太过菜鸟了

0

主题

4

帖子

46

积分

新手上路

Rank: 1

积分
46
9#
发表于 2019-4-12 17:28:21 | 只看该作者
谢谢最近在玩这个DHT11参考了网络上很多代码还是没有搞明白希望你这个可以搞明白,谢谢楼主先

0

主题

1

帖子

10

积分

新手上路

Rank: 1

积分
10
10#
发表于 2019-5-2 15:56:59 | 只看该作者
免费使用STM32、APP自动代码生成工具
66666666666666666666666
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表