产品名:温湿度传感器

型号:DHT11
厂商:奥松电子
参数:
相对湿度:
分辨率:0.1%RH        16Bit
精度:25℃  正负 %2
温度:
分辨率:0.1%RH        16Bit
量程范围:25℃        正负0.2℃ 至 -40℃ ~ -80℃
响应时间:1/e(63%)        10S
电气特性:供电DC3.5  - 5.5V 电流 0.3mA 待机60uA
采样周期:每次大于2秒
 
引脚说明
1、VDD    供电 3.5V-5.5V DC
2、DATA   串行数据,单总线,必须接上拉电阻 5.1K左右,这样空闲时 DATA总是为高电平
3、GND    接地,电源负极
4、NC     空脚
 
描述:DHT11 数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。
  它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有枀高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能 8 位单片机相连接。
 
电路图:
DHT11是通过单总线与微处理器通讯,只需要一根线,一次传送40位数据,高位先出。
 
数据格式:
8bit湿度整数数据 + 8bit湿度小数数据 + 8bint温度整数数据 + 8bit温度小数数据 + 8bit校验位
 
校验算法:
将湿度、温度的整数小数累加,只保留低8位。
 
微处理器(M0)与DHT11通信约定:
主从结构,DHT11为从机,M0作为主机, 只有主机呼叫从机,从机才能应答。
 
详细流程:
M0发送起始信号 -> DHT响应信号 -> DHT通知M0准备接受信号 -> DHT发送准备好的数据 -> DHT结束信号-> DHT内部重测环境温湿度数据并记录数据等待下一次M0的起始信号。
 
由流程可知,每一次M0获取的数据总是DHT上一次采集的数据,要想得到实时的数据,连续两次获取即可,官方不建议连续多次读取DHT,每次读取的间隔时间大于5秒就足够获取到准确的数据,上电时DHT需要1S的时间稳定。
 
M0起始信号:
1、设置DATA引脚为输出状态并输出高电平
2、再将DATA输出为低电平,持续时间大于18ms,此时DHT检测到后从低功耗模式->高速模式
3、DATA引脚设置为输入状态,由于上拉电阻的关系,DATA就变为高电平,从而完成一次起始信号。
 
THD响应信号、准备信号:
(DHT在M0 DATA引脚输出低电平时,从低功耗模式转至高速模式,等待DATA引脚变为高电平)
1、DHT输出 80us低电平 作为应答信号
2、DHT输出 80us高电平 通知微处理器准备接受数据
3、连续发送 40位数据(上次采集的数据)
       
DHT数据信号:
数据为“0”格式:50us的低电平 + 26-28us的高电平
数据为“1”格式:50us的低电平 + 70us的高电平
DHT结束信号:
DHT的DATA引脚输出40位数据后,继续输出低电平50us后转为输入状态,由于上拉电阻,DATA随之变为高电平。DHT内部开始重测环境温湿度数据,并记录数据,等待外部的起始信号。
 
 

DHT11温控程序详见:http://www.51hei.com/mcu/2697.html

DHT11资料的更多相关文章

  1. u8g2库的相关资料

    2017-12-1309:13:32更新51论坛上的帖子,大神自己写的库文件,待调试! http://www.51hei.com/bbs/forum.php?mod=viewthread&ti ...

  2. 基于STM32L4的开源NBIOT开发资料

    基于STM32L4的开源NBIOT开发资料 1. 参考路径:http://www.stmcu.org/module/forum/forum.php?mod=viewthread&tid=615 ...

  3. Arduino和C51开发DHT11温湿度传感器

    技术:51单片机.Arduino.DHT11.温湿度传感器.传感器   概述 学习单片机离不开对传感器的学习,本文主要介绍DHT11温湿度传感器的使用方法,同学也可以了解更多的传感器,这对你以后开发产 ...

  4. 将DHT11移植到Linux系统上(转)

    由于项目需要,需要将DHT11移植到Linux.驱动程序如下 #include <linux/kernel.h> #include <linux/module.h> #incl ...

  5. ESP8266入门学习笔记1:资料获取

    乐鑫官网:https://www.espressif.com/zh-hans/products/hardware/esp8266ex/overview 乐鑫资料:https://www.espress ...

  6. [记录]学习树莓派3B接DHT11和LCD1602和修改树莓派时区

    前提 树莓派系统安装好 apache web 服务器,如未安装,可在树莓派内执行sudo apt-get install apache2 进行安装apache 也可以通过命令获取GPIO信息: gpi ...

  7. 【雕爷学编程】Arduino动手做(55)--DHT11温湿度传感器

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备 ...

  8. 2022年写的香橙派 OrangePi Zero 用python获取dht11温度和湿度

    感谢网上资料和个人的不放弃,终于方便的解决了香橙派 OrangePi Zero用python获取dht11温湿度的问题. 网上关于香橙派的资料比起树莓派真是少之又少,现在香橙派zero能干的活暂时也只 ...

  9. Vim新手入门资料和一些Vim实用小技巧

    一些网络上质量较高的Vim资料 从我07年接触Vim以来,已经过去了8个年头,期间看过很多的Vim文章,我自己觉得非常不错,而且创作时间也比较近的文章有如下这些. Vim入门 目前为阿里巴巴高级技术专 ...

随机推荐

  1. SolidWorks二次开发的研究

    三维机械设计软件SolidWorks是一套基于Windows的CAD/CAE/CAM/PDM桌面集成系统,是由美国SolidWorks公司在总结和继承大型机械CAD软件的基础上,在Windows环境下 ...

  2. RAC修改spfile位置

    RAC修改spfile位置    [root@rac1 ~]# su - oracle  [oracle@rac1 ~]$ sqlplus  / as sysdba  SQL*Plus: Releas ...

  3. TP5.0:新建控制器

    例如,我们在admin模块下创建一个名为OneMenu.php的控制器 1.在该控制器文件中内容为: 2.访问的URL为:http://localhost/tp5/public/index.php/a ...

  4. 二维数组展示到DataGridView(c#)

    窗体程序中二维数组展示到DataGridView public void TwoDArrayShowINDatagridview(string[,] arr) { DataTable dt = new ...

  5. python入门19 异常及异常处理 异常捕获

    常见异常举例 """ 一些异常举例:""" '''模块不存在 ModuleNotFoundError: No module named 'd ...

  6. vue.js--基础 数据的双向绑定

    所谓双向绑定:就是改变modle,就会改变view,改变view,也会改变modle 下面案例,点击getMthod(),获取msg的内容,在点击setMthod()改变msg的内容,你会发现H1的值 ...

  7. HDU 1575 Tr A 【矩阵经典2 矩阵快速幂入门】

    任意门:http://acm.hdu.edu.cn/showproblem.php?pid=1575 Tr A Time Limit: 1000/1000 MS (Java/Others)    Me ...

  8. [18/11/20]break与continue的区别

    一.普通break 和continue 1.break: break用于强行退出循环,不执行循环中剩余的语句. 2.continue continue 语句用在循环语句体中,用于终止某次循环过程,即跳 ...

  9. sql 查询表的字段数量

    select COUNT(a.name) from sys.all_columns a,sys.tables bwhere a.object_id=b.object_id and b.name='ta ...

  10. nginx 图片,js,css等文件允许跨域

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ { #允许跨域请求 add_header Access-Control-Allow-Ori ...