DHT22

温湿度模块DHT22详解一:基础篇 DHT22也称AM2302,是一款含有已校准数字信号输出的温湿度复合传感器,见图1,湿度量程范围0~99.9%RH,精度±2%RH,而温度量程范围是-40℃~80℃,精度±0.5℃。 图1 DHT22是单总线通信的,驱动它只需三根线:... 阅读详情

概述

这是是已校准的数字温湿度传感器,用于检测环境温湿度,采用DHT22(AM2302),标准单总线接口。拥有比DHT11更高的精度和更大的量程。

特性

参数名称参数
传感器DHT22(温湿度传感器)
工作电压3.3V-5.5V
湿度分辨率0.1%RH
湿度测量范围0%RH ~ 99.9%RH
湿度测量误差±2%RH (25°C)
温度分辨率0.1°C
温度测量范围-40°C ~ 80°C
温度测量误差±0.5℃
  • 推荐存储环境:

温度:10°C ~40°C 湿度:60%RH以下

应用

气象站、温度调节器和测试及检测设备等

接口说明

引脚功能
VCC电源正(3.3V-5.5V)
GND电源地
DOUT通信端口

工作原理

该产品原理图如下:

AM2302 器件采用简化的单总线通信。单总线即只有一根数据线,系统中的数据交换、控制均由数据线完成。单总线通常要求外接一个约 5.1kΩ的上拉电阻,这样,当总线闲置时,其状态为高电平。SDA 用于微处理器与 AM2302 之间的通讯和同步,采用单总线数据格式,一次传送 40 位数据,高位先出。具体通信时序如图所示。
 

AM2302通信格式说明:

名称单总线格式定义
起始信号微处理器把数据总线(SDA)拉低一段时间(至少800μs)[1],通知传感器准备数据。
响应信号传感器把数据总线(SDA)拉低80μs,再接高80μs以响应主机的起始信号。
数据格式收到主机起始信号后,传感器一次性从数据总线(SDA)串出40位数据,高位先出。
湿度湿度分辨率是16Bit,高位在前;传感器串出的湿度值是实际湿度值的10倍。
温度温度分辨率是16Bit,高位在前;传感器串出的温度值是实际温度值的10倍;温度最高位(Bit15)等于1表示负温度,温度最高位(Bit15)等

于0表示正温度;温度除了最高位(Bit14~Bit0)表示温度值。

校验位校验位=湿度高位+湿度低位+温度高位+温度低位。
  • 单总线通信时序

用户主机(MCU)发送一次起始信号(把数据总线 SDA 拉低至少 800µs)后, AM2302 从休眠模式转换到高速模式。待主机开始信号结束后, AM2302 发送响应信号,从数据总线 SDA 串行送出 40Bit的数据,先发送字节的高位;发送的数据依次为湿度高位、湿度低位、温度高位、 温度低位、校验位,发送数据结束触发一次信息采集,采集结束传感器自动转入休眠模式,直到下一次通信来临。(注:DHT22(AM2302)的数据格式和DHT11的数据格式不一样。)

  • 外设读取步骤示例

主机和传感器之间的通信可通过如下三个步骤完成读取数据。
步骤一:
AM2302 上电后( AM2302 上电后要等待 2S 以越过不稳定状态,在此期间读取设备不能发送任何指令),测试环境温湿度数据,并记录数据,此后传感器自动转入休眠状态。 AM2302 的 SDA 数据线由上拉电阻拉高一直保持高电平,此时 AM2302 的 SDA 引脚处于输入状态,时刻检测外部信号。 步骤二:
微处理器的 I/O 设置为输出, 同时输出低电平,且低电平保持时间不能小于 800us,典型值是拉低 1MS,然后微处理器的 I/O 设置为输入状态,释放总线,由于上拉电阻,微处理器的 I/O 即 AM2302的 SDA 数据线也随之变高,等主机释放总线后, AM2302 发送响应信号,即输出 80 微秒的低电平作为应答信号,紧接着输出 80 微秒的高电平通知外设准备接收数据,信号传输如图所示:


步骤三:
AM2302 发送完响应后,随后由数据总线 SDA 连续串行输出 40 位数据,微处理器根据 I/O 电平的变化接收 40 位数据。 位数据“0”的格式为: 50 微秒的低电平加 26-28 微秒的高电平; 位数据“1”的格式为: 50 微秒的低电平加 70 微秒的高电平; 位数据“0”、位数据“1”格式信号如图 所示:

AM2302 的数据总线 SDA 输出 40 位数据后,继续输出低电平 50 微秒后转为输入状态,由于上拉电阻随之变为高电平。同时 AM2302 内部重测环境温湿度数据,并记录数据,测试记录结束,单片机自动进入休眠状态。单片机只有收到主机的起始信号后,才重新唤醒传感器,进入工作状态。

DHT11和DHT22(AM2302)比较及使用方法 DHT11和DHT22比较及使用方法DHT11和DHT22(AM2302)技术性能特征DHT11和DHT22介绍DHT11和DHT22使用方法分析 DHT11和DHT22(AM2302)技术性能特征 DHT11: DHT22: 工作电压范围:3.3V-5.5V 工作电流 :平均0.5mA 输出:单总线数字信号 测量范围:湿度20–90%RH,温度0~50℃ 湿度0–99.9%RH 阅读详情

相关推荐

dht22温湿度传感器特点及使用介绍

dht22温湿度传感器特点及使用介绍前言一、dht22温湿度传感器外观二、连接图三、相关参数讲解1.引脚2.温湿度测量范围3.通讯方式(单总线数字信号)4.优点5.产品特性(根据官方参考资料)四、适用场所范围总结 前言 本文着重介绍dht22温湿度传感器(是一款含有已校准数字信号输出的温湿度复合传感器)的原理、功能及使用方法 一、dht22温湿度传感器外观 二、连接图 如下图所示,dht22连接图: 三、相关参数讲解 1.引脚 4根引脚,名称与功能如下; vdd 供电 3-5.5VDC SDA

qq_51712037的博客 1万+

【STM32单片机-库函数】DHT22温湿度采集

DHT22】 【0-操作演示】 通过USART1串口1,打开电脑串口调试助手,再开启串口,最后会看见温湿度数据按行输出,如下图: 【main.c】温湿度采集 实验现象 【1-模块.头文件】dht22.h #ifndef __DHT22_H #define __DHT22_H #include "sys.h" //GPIO_Init #define RCC_GPIO_AM2302 RCC_APB2Periph_GPIOA #define GPIO_AM2302 G

夜半少年的博客 8785

Arduino关于DHT11和DHT22湿度和温度传感器的完整指南

Arduino关于DHT11和DHT22湿度和温度传感器的完整指南 原文地址:https://gndtovcc.home.blog/2020/04/16/complete-guide-for-dht11-dht22-humidity-and-temperature-sensor-with-arduino/ 本文是Arduino上流行的DHT11和DHT22温度和湿度传感器的指南。我们将解释其工作原理,展示其某些功能并分享一个Arduino项目示例,您可以对其进行修改以在自己的项目中使用。 DHT11和DHT

acktomas的博客 3万+

Arduino 采集DHT22温湿度串口显示

点击图片购买湿敏电容数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,具有较高的可靠性与卓越的长期稳定性。传感器包括一个电容式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。通过单总线与微处理器通讯,只需要一根线,一次传送40位数据,高位先出。

优信电子的博客 2943

DHT11和DHT22使用区别(基于STM32)

温湿度模块DHT11和DHT22区别介绍DHT系列区别起始信号代码实现:数据处理代码实现调试问题DHT22读取失败实现代码 介绍 温湿度模块DHT11和DHT22小项目用得比较多,虽然二者均是1-wire协议,但是细节部分还是有所差异。1-wire协议我就不多介绍了,网上很详细。这里着重介绍二者使用的区别。 DHT11 DHT22 DHT系列区别 DHT11和DHT22 芯片手册 提取:hgew 起始信号 DHT11 DHT22 显然DHT11拉低要>18ms,而DHT22拉低只要&gt

JLouis94的博客 1万+

温湿度模块DHT22详解二:编程篇

前一篇的DHT22基础篇差不多是一年前写的了,这一年间发生挺多事情,编程篇拖到现在,废话不多说进入正题。

k1ang的博客 1万+

树莓派驱动DHT22

                                            树莓派-DHT22测量湿度        一般的温湿度传感器有dht11和dht22dht11比较便宜,dht22dht11贵好几倍,自然测量的准确度肯定是dht22高一些。追求更高精准度的可以使用SHT1x。 一、DHT22介绍 如图,一个dht22温湿度传感器                  ...

mahaijun1996的博客 3252

DHT22使用笔记

温湿度模块DHT22详解一:基础篇 DHT22也称AM2302,是一款含有已校准数字信号输出的温湿度复合传感器,见图1,湿度量程范围0~99.9%RH,精度±2%RH,而温度量程范围是-40℃~80℃,精度±0.5℃。 图1 DHT22是单总线通...

EmbeddedCoder 的CSDN博客 6516

php DHT22,SHT10与DHT22的精度比较

本帖最后由 lijw2014 于 2014-4-1 12:12 编辑到手DHT22温湿度传感器,网上号称可替代SHT1x,遂简单地做了一下对比实验IMG_0089[1].JPG (1.26 MB, 下载次数: 33)2014-4-1 11:54 上传主要器件:DFROBOT DHT22 2个DFROBOT SHT1x 1个DFRO...

weixin_31064267的博客 913

stm32用HAL库驱动DHT22使用心得

这篇是本人自己总结学习DHT22的笔记,关于DHT22的工作原理有很多博主讲得很好了,本篇主要讲解DHT22的驱动代码(都在代码注释上)。DHT22是单总线通信的,驱动它只需三根线:电源线、信号线和地线,因此其电路也很简单,如下图 具体的原理解释见该博主:温湿度模块DHT22详解一:基础篇_k1ang的博客-CSDN博客_dht22 以下的工作原理是从DHT22的使用说明中截取的时序图 数据格式: 40bit数据=16bit湿度数据+16bit温度数据+8bit校验和 例子: 接收40bit数据

oldjohntangna的博客 7044

ESP32/ESP8266使用MicroPython控制DHT11/DHT22

背景知识视频教程 高级ESP32 使用NodeMCU(由ESP8266支持),MicroPython和PyCharm进行物联网 适用于使用ESP32 / ESP8266的所有人的MicroPython(入门) 本教程介绍了如何使用MicroPython固件将DHT11或DHT22温度和湿度传感器与ESP32和ESP8266开发板一起使用。 DHT模块 首先导入模块 </> 创建一个指向传感器数据引脚的dht对象: </> 要测量和读取传感器值,请使用 </> 刷

跨学科知识视角展现 3579

esp32控制DHT22

【代码】esp32控制DHT22

2401_82691903的博客 1087

DHT22 程序 测试可用

#ifndef __DHT22_h__#define __DHT22_h__#include &lt;reg52.h&gt;#include &lt;intrins.h&gt; typedef unsigned char  U8;       /* defined for unsigned 8-bits integer variable  无符号8位整型变量  */  //typedef直...

wifing1的博客 5781

数字温湿度传感器DHT11与DHT22深入实践教程

DHT11传感器工作原理基于电容式湿度测量与热敏电阻温度测量。它通过测量电容变化来感知湿度,同时使用热敏电阻测量温度。数据处理单元结合这两个数值,输出相应的温度与湿度数据。单总线通信是一种串行通信方式,相较于传统的多总线系统,它仅需要一根数据线(加上电源和地线)来完成数据的双向传输。在单总线系统中,所有的数据交换都是通过这一根线进行的,从而大大简化了硬件连接的复杂性。工作原理方面,单总线系统通过一个主设备(Master)和一个或多个从设备(Slave)进行通信。

weixin_35749786的博客 1146

LINUX下DHT22驱动调试

年前就把硬件拿到手了,结果被各种事情,加上个人的懒惰。一直拖到现在才把驱动跑起来。 如题,记录一下,温湿度模块DHT22的驱动加载。 板子是明远智瑞的开发板。在最后会附上,驱动源码。是从git上面下载的。抱着试试的想法,结果可喜。 首先是linux下module的编译也就是模块驱动的编写 主要的麻烦就是Makefile的编写,新手一个,踩了很多坑。 参考了下面的链接,帮我解决了多个.C文件编译生成一个模块驱动 .ko的麻烦。 http://blog.sina.com.cn/s/blog_4cd5d2bb01

teaczjf的博客 1301

STM32驱动DHT22温湿度传感器程序

#include &amp;quot;dht22.h&amp;quot; #include &amp;quot;delay.h&amp;quot; //复位DHT22 void DHT22_Rst(void) { DHT22_DQ_OUT=0; //拉低DQ delay_ms(20); //拉低至少18ms DHT22_DQ_OUT=1; //DQ=1 delay_us(30); //...

return_oops的博客 1万+
上一篇: BH1750简单介绍
sg996
博客等级 码龄5年 1粉丝 4原创
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值