您当前的位置: 首页 >  stm32

DS小龙哥

暂无认证

  • 4浏览

    0关注

    679博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

STM32+DHT11读取温湿度数据显示

DS小龙哥 发布时间:2021-04-30 09:07:44 ,浏览量:4

一、环境介绍

MCU:  STM32F103C8T6

温湿度模块: DHT11

开发软件: Keil5

源码下载地址:  https://download.csdn.net/download/xiaolong1126626497/18263569

二、DHT11介绍

DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。

它应用专用的数字模块采集技术和温湿度传感技术, 确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。

每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。

单线制串行接口, 使系统集成变得简易快捷。超小的体积、极低的功耗, 信号传输距离可达20米以上, 使其成为各类应用甚至最为苛刻的应用场合的最佳选则。

产品为 4 针单排引脚封装。 连接方便, 特殊封装形式可根据用户需求而提供。

应用领域 ►暖通空调

►测试及检测设备 ►汽车

►数据记录器 ►消费品

►自动控制 ►气象站

►家电 ►湿度调节器

►医疗 ►除湿器

三、核心代码 3.1  dht11.c
#include "dht11.h"
#include "delay.h"

//复位DHT11
void DHT11_Rst(void)	   
{                 
	  DHT11_IO_OUT(); 	//SET OUTPUT
    DHT11_DQ_OUT=0; 	//拉低DQ
    DelayMs(20);    	//拉低至少18ms
    DHT11_DQ_OUT=1; 	//DQ=1 
	  DelayUs(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)return 1;
	else retry=0;
    while (!DHT11_DQ_IN&&retry=100)return 1;	    
	return 0;
}

//从DHT11读取一个位
//返回值:1/0
u8 DHT11_Read_Bit(void) 			 
{
 	u8 retry=0;
	while(DHT11_DQ_IN&&retry            
关注
打赏
1664009229
查看更多评论
0.4436s