产品名:温湿度传感器

型号: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. OpenSSL.Net 在生产环境中无法正常加载的原因分析与解决 z

    http://blog.csdn.net/wangjia184/article/details/6990098 http://www.openssl.org/ 在本地测试好好的代码部署到生产环境后,遇 ...

  2. java--内存管理的几点小技巧

    今天看一本书,书上提到了内存泄露,后面也提到了内存管理的小技巧,在这里记下来,以免以后忘记. 1.尽量使用直接量.比如:String str = "I can play!";而不是 ...

  3. 使用describe命令进行Kubernetes pod错误排查

    我有一个pod名叫another,用kubectl create创建后发现过了29分钟,状态还是处于ContainerCreating阶段. 使用kubectl describe命令检查: 从错误消息 ...

  4. react中性能优化的点

    react提升代码性能的点 1.绑定如果改变作用域点话放在constructor里面做,这样可以保证整个程序的作用域绑定操作只会执行一次,而且避免子组件的无谓渲染. 2.内置的setState是个异步 ...

  5. 【转】android:windowSoftInputMode属性详解

    android:windowSoftInputMode activity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,Android1.5后的一个新特性. 这个属性能影响两件事情: [一] ...

  6. js实现div滚动条在页面刷新 滚动条位置固定

    思想:1.通过div的onscroll事件记录滚动条的scrollTop值,设置到document.cookie 2.页面加载时再读取document.cookie的值,设置给div的scrollTo ...

  7. Android学习笔记_12_网络通信之从web获取资源数据到Android

    从web获取图片信息,并显示到android的imageView控件. 一.添加网络访问权限. <uses-permission android:name="android.permi ...

  8. HTML5 小实例

    1.时钟: <!doctype html> <html> <head></head> <body> <canvas id=" ...

  9. HDU 1254 推箱子(BFS加优先队列)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1254 推箱子 Time Limit: 2000/1000 MS (Java/Others)    Me ...

  10. Mybatis自动生成的BO对象继承公共父类(BO中过滤掉公共属性)

    使用mybatis的代码生成工具:mybatis-generator,如果自动生成的BO都有公共的属性,则可以指定这些BO继承父类(父类中定义公共属性) 1.定义父类 注意:属性public,不要使用 ...