STM32的 DHT11温湿度模块+红外人体感应模块程序

本文介绍了如何在STM32单片机上实现DHT11温湿度模块和HC_SR501红外人体感应模块的集成应用。通过单总线通信读取DHT11数据并在主函数中显示,配置HC_SR501模块为下拉输入,检测人体接近并输出相应电平。程序实现了在回南天湿度67%环境下,结合OLED显示相关信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DHT11温湿度模块

在这里插入图片描述
传感器包括一个高分子电阻式感湿度元件和一个NTC测温元件,并于一个高性能8位单片机相连,通过单总线与微处理器通信,只需要一根数据线。

在这里插入图片描述
在相关例程基础上进行改动

//复位DHT11
void DHT11_Rst(void)    
{
                    
 DHT11_IO_OUT();  //SET OUTPUT
    DHT11_DQ_OUT=0;  //拉低DQ
    delay_ms(20);     //拉低至少18ms
    DHT11_DQ_OUT=1;  //DQ=1 
 delay_us(30);      //主机拉高20~40us
}
//等待DHT11的回应
//返回1:未检测到DHT11的存在
//返回0:存在
u8 DHT11_Check(void)     
{
      
 u8 retry=0;
 DHT11_IO_IN();//SET INPUT  
    while (DHT11_DQ_IN&&retry<100)//DHT11会拉低40~80us
 {
   
  retry++;
  delay_us(1);
 };  
 if(retry>=100)return 1;
 
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值