第一章 DHT11温湿度传感器的使用

在十个毕设作品中,至少有四个毕设会用到温湿度传感器,所以此篇就先教大家怎么使用DHT11温湿度传感器。在淘宝输入“DHT11”就可以直接找到这个传感器,价格比较便宜。

如下图,DHT11温湿度传感器有四根引脚,但实际中我们只用到其中三根引脚,分别是连接3.3V或5V的1引脚、负责数据通讯的2引脚和连接GND的4引脚,而3号引脚名称为NC,意思是空引脚,并没有实际用处。很多同学在淘宝上找到三根引脚的DHT11传感器,那三根引脚就是图片中的1、2、4引脚,所以不用担心自己买的温湿度传感器是不是跟本章介绍的温湿度传感器不一样。

         接下来讲解STM32F103C8T6与DHT11通讯的代码,关注文章底部公众号,在公众号相应的推文章节的底部有个代码资料下载链接,将资料下载之后,按照资料里面的接线图,用杜邦线将STM32F103C8T6与DHT11温湿度传感器连接起来,再通过Jlink或STlink将代码烧录进STM32中即可。

         wendu[ ]shidu[ ]这两个数组分别存储DHT11传感器传输过来的温度和湿度数据。

        delay_init( )  初始化延时函数,执行这条语句后,28行的delay_ms(1000)的延时效果才会准确。

        14行和16行只与只与串口打印相关,其中NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2)是设置中断优先级分组,uart_init(9600)负责初始化串口1,波特率为9600。删除这两行代码不会影响STM32对温湿度数据的获取。

        DHT11_INIT( )  DHT11初始化函数,初始化后即可采集温湿度数据。

        Read_DHT_Data(wendu, shidu)  获取温湿度数值函数,执行完这条语句后,DHT11检测到的温度数据就存储在wendu[ ],湿度数据就存储在

shidu[ ]中。其中wendu[0]存储的是温度数值的整数,wendu[1]存储的是温度数值的小数,shidu[0]存储的是湿度数值的整数,shidu[1]存储的是湿度数值的小数。

        24行和26行的printf( )是串口打印函数,只要不删除14行和16行代码,整个main函数代码就能实现每隔1秒钟打印温度和湿度数据。

        自此代码讲解完成,想了解每个函数的具体实现过程的同学可以去文章底部下载代码了解。

        当我们的毕设用到DHT11温湿度传感器时,只要清楚上方红色标记的功能函数作用,即可将链接的代码轻松的移植到自己的毕设代码中,在后面的章节中,我会展示给各位同学看。(前提是毕设的主控MCU选用STM32F103C8T6)

                ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​   

 

 

  • 12
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嵌入式实验社

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值