DHT11温湿度传感器

产品概述

1. DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,应用领域:暖通空调;汽车;消费品;气象站;湿度调节器;除湿器;家电;医疗;自动控制

2. 特点

·相对湿度和温度测量

·全部校准,数字输出

·长期稳定性

·超长的信号传输距离:20米

·超低能耗:休眠

·4 引脚安装:可以买封装好的完全互换 : 直接出结果,不用转化

接线

数据传送逻辑

只有一根数据线DATA,上官一号发送序列指令给DHT11模块,模块一次完整的数据传输为40bit,高位先出

数据格式

8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据+8bit校验和

通讯过程时序图

3.单片机 检测模块是否存在

A : dht = 1

B :dht = 0延时30ms

C: dht = 1在60us后读d点,如果d点是低电平(被模块拉低),说明模块存在

为什么是60us呢?

因为C点到D点是20-40us,响应DHT信号的时间是80us,所以从20us~80us(0~100us)区间的60us可以判断DHT信号被拉低为低电平。

代码实现

复制代码
#include "reg52.h"
#include "intrins.h"

sbit ledOne = P3^7;
sbit dht    = P3^3;

void Delay1000ms()		//@11.0592MHz
{
	unsigned char i, j, k;

	_nop_();
	i = 8;
	j = 1;
	k = 243;
	do
	{
		do
		{
			while (--k);
		} while (--j);
	} while (--i);
}

void Delay30ms()		//@11.0592MHz
{
	unsigned char i, j;

	i = 54;
	j = 199;
	do
	{
		while (--j);
	} while (--i);
}

void Delay60us()		//@11.0592MHz
{
	unsigned char i;

	i = 25;
	while (--i);
}


void check_DHT()
{

	//a: dht = 1

	dht = 1;

	//b: dht = 0;

	dht = 0;
	
    //延迟30ms

	Delay30ms();
	//c: dht = 1
    
	dht = 1;
	
    //dht = 1在60us后读d点,如果d点是低电平(被模块拉低),说明模块存在

	Delay60us();
	if(dht == 0){
			ledOne = 0; //模块被拉低灯亮
	}

}


void main()
{
	ledOne = 1;
	Delay1000ms();
	Delay1000ms();
	
	
	check_DHT();
	while(1);
}

main()函数的bug:

由以下手册可得加延迟函数,while(1)函数如果不加,就会出现灯闪和灭的状态,因为没有while()函数,main函数会退出重新开始,导致忽闪忽灭的现象

DHT11传输0与1时序分析

DH11传输0的时序分析

DH11传输1的时序分析

通过手册我们可以知道DATA发送数据的原理

40bit = 5个 char

相关推荐
乘凉~24 分钟前
【Keil5】Keil5 安装和免费使用过程记录
stm32·单片机·嵌入式硬件
上天肖1 小时前
嵌入式硬件查漏补缺
嵌入式硬件
独孤九剑打醒他3 小时前
【原创开源】双层Master‑Worker软硬协同调度架构:从根源解决分布式数据一致性难题
前端·嵌入式硬件·架构·前端框架·硬件工程
驴友花雕12 小时前
【花雕动手做】行空板 K10 系列实验之人工智能语音识别小车的10个参考案例
人工智能·单片机·嵌入式硬件·语音识别·行空板 k10 系列实验·花雕动手做·小车的10个参考案例
日拱一卒的小田18 小时前
ZYNQ学习笔记3-ZYNQ的IIC控制器1
笔记·单片机·学习
cardinal_50818 小时前
STM32MP157F-DK2开发板构建交叉编译链
stm32·单片机·嵌入式硬件
小羊先生car19 小时前
F429-HAL-RS485(回环/双机实验)(2026/8/16)
c语言·单片机·嵌入式硬件·软件构建
木白CPP19 小时前
Linux 驱动UART子系统源码分析
linux·运维·服务器·驱动开发·嵌入式硬件·开源软件
zlinear数据采集卡20 小时前
数据采集卡从入门到精通(10):采样率与分辨率的核心关系——反比律、架构分布与过采样
arm开发·嵌入式硬件·算法·fpga开发·架构·开源
水果里面有苹果1 天前
33-TPS62130RGTR-3A降压器
嵌入式硬件