DHT11温湿度传感器(zigbee)

  • DHT11简介
    • 电路连接
    • 时序图详解
    • 数据格式

DHT11简介

DHT11 数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数 字模块采集技术和温湿度传感技术,确保产品具有枀高的可靠性与卓越的长期稳定性。传感器包括一 个电阻式感湿元件和一个 NTC 测温元件,并与一个高性能 8 位单片机相连接。

电路连接

  1. VDD 供电 3.5-5.5V DC
  2. DATA 串行数据,单总线
  3. NC 空脚
  4. GND 接地,电源负枀

时序图详解

DHT11最重要的就是时序图的解读,根据时序图来编写代码,得到温湿度数据。

DHT11上电后,自动采集温湿度数据,等待主机(单片机 / 处理器)信号, DHT11 的 DATA 数据线由上拉电阻拉高一直保持高电平,此时 DHT11 的 DATA 引脚处于输入状态,时刻检测外部信号。

  • 步骤一:主机 I/O 设置为输出同时输出低电平,且低电平保持时间不能小于 18ms,然后微处理器的 I/O 设置为输入状态,由于上拉电阻,微处理器的 I/O 即 DHT11 的 DATA 数据线也随之变高,等待 DHT11 作 出回答信号,发送信号如图所示:
  • 步骤二:DATA 引脚检测到外部信号有低电平时,等待外部信号低电平结束,延迟后 DHT11 的 DATA 引脚处于输出状态,输出 80 微秒的低电平作为应答信号,紧接着输出 80 微秒的高电平通知外设准备接 收数据,微处理器的 I/O 此时处于输入状态,检测到 I/O 有低电平(DHT11 回应信号)后,等待 80 微秒 的高电平后的数据接收,发送信号如图所示:
  • 步骤三:由 DHT11 的 DATA 引脚输出 40 位数据,微处理器根据 I/O 电平的变化接收 40 位数据,位数据“0” 的格式为: 50 微秒的低电平和 26-28 微秒的高电平,位数据“1”的格式为: 50 微秒的低电平加 70 微秒的高电平。位数据“0”、“ 1”格式信号如图所示:
void DHT11(void){            //温湿传感启动DHT11_PIN = 0;MicroWait(19000);          //>18MSDHT11_PIN=1; P0DIR &= ~0x80;            //重新配置IO口方向,输入MicroWait(40);if(!DHT11_PIN){            //低电平时,数据输出准备while(0 == DHT11_PIN);while(1 == DHT11_PIN);COM();                   //传输一字节数据Hum_H=ComData;COM();Hum_L=ComData;COM();Tem_H=ComData;COM();Tem_L=ComData;COM();CheckData=ComData;DHT11_PIN = 1;if(CheckData == (Hum_H+Hum_L+Tem_H+Tem_L)){      //校验数据wendu_shi=Tem_H/10; wendu_ge=Tem_H%10;shidu_shi=Hum_H/10; shidu_ge=Hum_H%10; }else{wendu_shi=0;       wendu_ge=0;shidu_shi=0; shidu_ge=0;}} P0DIR |= 0x80; //IO口需要重新配置,输出
}

数据格式

DATA 用于微处理器与 DHT11 之间的通讯和同步,采用单总线数据格式,一次传送 40 位数据,高位先出。

  • 数据格式 8bit 湿度整数数据 + 8bit 湿度小数数据+8bit 温度整数数据 + 8bit 温度小数数据+8bit 校验位。
  • 校验位数据 定义 “8bit 湿度整数数据 + 8bit 湿度小数数据+8bit 温度整数数据 + 8bit 温度小数数据”8bit 校验位等于所 得结果的末 8 位。
void COM(void){              // 温湿写入,一字节,共40bit,一次输出一字节,调动5次       for(uchar i=0;i<8;i++){while(0 == DHT11_PIN);   //50us高电平后,等待30us,高为1,低为0MicroWait(30);BitData = 0;if(DHT11_PIN){BitData = 1;}while(1 == DHT11_PIN);//等待高电平结束 ComData<<=1;ComData|=BitData; }
}

DHT11温湿度传感器(zigbee)相关推荐

  1. Esp8266 进阶之路19 【外设篇①】esp8266驱动 ds18b20、dht11 温湿度传感器,采集温湿度传感器到服务器。(附带Demo)

    本系列博客学习由非官方人员 半颗心脏 潜心所力所写,不做开发板.仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 序号 SDK版本 内容 链接 1 nonos2.0 搭建 ...

  2. ESP32 开发笔记(三)源码示例 8_DHT11_RMT 使用RMT实现读取DHT11温湿度传感器

    开发板购买链接 https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.50111deb2Ij1As&ft=t&id=62636 ...

  3. Android手机HC-05蓝牙连接Arduino nano获取DHT-11温湿度传感器数据

    如果您觉得本文对您有用,希望您点赞,收藏并且把它分享出去,不明白的可以在评论区留言,我会一一解答,感谢您的支持!! 目标 Android手机HC-05蓝牙连接Arduino nano获取DHT-11温 ...

  4. 个人物联网(目前用到了树莓派、PMS7003攀藤g7传感器、DHT11温湿度传感器)

    上周空气不好,突发奇想要搞个个人物联网系统,检测生存环境.手头有树莓派.NodeMCU esp8266.DHT11温湿度传感器.pm2.5检测需要专门的传感器,本以为也就几块钱,结果发现淘宝还挺贵.在 ...

  5. stc12c5a60s DHT11温湿度传感器

    DHT11温湿度传感器 DHT11.h #ifndef __DHT11_H__ #define __DHT11_H__#ifndef uchar #define uchar unsigned char ...

  6. 传感器自学笔记第八章——DHT11温湿度传感器(附带自己写的很好用的51单片机DHT11代码模板,参数列表只有一个字符数组指针)

    作者:GWD 时间:2019.06.26 DHT11温湿度传感器(单总线类) 一. 学习要点: 1.(重要)单总线类传感器检测高电平while(DHT11 == 1) temp |=0x01;出错,因 ...

  7. 51单片机控制DHT11温湿度传感器,并使用OLED屏幕显示

    目录 前言 一.MCU主控选型 二.DHT11温湿度传感器 1.模块介绍 2.软件实现 DHT11.c DHT11.h 三.OLED显示屏 1.模块介绍 2.软件实现 OLED.c OLED.h OL ...

  8. 基于STM32的DHT11温湿度传感器设计

    文章目录 前言 一.DHT11温湿度传感器是什么? 二.DHT11驱动程序详解 1.相关宏定义 2.输入输出GPIO配置 2.GPIO初始化设计 3.检测DHT11是否正常工作 4.读取DHT11数据 ...

  9. 《Arduino实验》实验二:DHT11温湿度传感器检测当前环境温湿度

    更完整.更全面的Arduino实验存放在我的github上,有需要的可以到github上查看和下载. 当然如果你觉得有帮助,给一个小小的star和fork就谢谢您了. gtihub网址:https:/ ...

  10. DHT11温湿度传感器(详细)

    DHT11温湿度传感器--使用LCD1602显示 先上效果图,以及简单的和室内温度对比图,相交而言测量的值还是非常准的. 我的这个做的很简陋,大家可以理解原理后自行升级. 注意学习单片机最重要的就是学 ...

最新文章

  1. python批量读取文件内容_Python 文本文件内容批量抽取实例
  2. No operations allowed after connection closed--转
  3. 模拟电梯1.0(类与对象实验)
  4. C语言中如何使用宏连接多个字符串(#和##的用法)
  5. This application requires Java Runtime Environment
  6. bootstrapr表格父子框_JS组件系列——表格组件神器:bootstrap table(二:父子表和行列调序)...
  7. web服务器IIS详细错误代码以及解释
  8. Codeforces Beta Round #1 题解
  9. python 条件查询_Python SQLAlchemy 不确定条件查询
  10. github python抢票_GitHub上抢票工具py12306的使用方法
  11. JavaScript高级程序设计[美]Nicholas C.Zakas著 读书笔记(三)
  12. 轻度折腾nuc8i5beh
  13. Android SDK接口封装自动化测试
  14. Opencv用hsv识别车牌(含源码)
  15. Flutter 导包错误 Target of URI doesn't exist
  16. win10任务栏固定图标删不掉
  17. 使用DDR MIG例程读写DDR演示
  18. smartforms以PDF打印预览
  19. PBO(Pixel Buffer Object),将像素数据存储在显存中
  20. ES学习笔记——ES入门:多条件查询、聚合、过滤、排序

热门文章

  1. 目前国内最快最稳定的DNS
  2. noi linux 默认密码,安装NOI Linux
  3. ghost u盘 linux,用U盘启动G4L备份还原linux系统用Ghost备份Windows操作系统
  4. PS 快捷键大全(psshortcut)
  5. 计算长方体、四棱锥的表面积和体积_JAVA
  6. Shopee数据获取逻辑
  7. Navicat Premium 15破解
  8. navicat 解析sql_Navicat使用详解
  9. python里的pip list是什么意思_python - 运行pip list,抛出异常,这是什么情况
  10. 什么是全国大学生电子设计大赛?如何备战?