Arduino使用DHT11温湿度传感器

Arduino使用DHT11温湿度传感器1.概述这是一个常用的温湿度传感器,它主要采用DHT11温湿度传感器元件。它是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。2.规格参数工作电压:DC3.3-5V接口:间距为2.54mm3pin防反接口控制信号:数字信号温度范围…

目录

1.概述

2.规格参数

3.实验组件

4.连接图

5.测试代码

6.测试结果

7.库文件下载链接


1.概述

XHT11温湿度传感器(兼容DHT11),XHT11作为一款低价、入门级的温湿度传感器,常用于我们的单片机设计实例中;它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,XHT11为4针单排引脚封装,如下图,采用单线制串行接口,只需加适当的上拉电阻,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选择。该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。

2.规格参数

工作电压:

DC 5V

工作电流:

20mA

最大功率:

0.1W

输出信号:

数字信号

工作温度:

-10°C ~ +50°C

接口:

3PIN接口

尺寸:

31.6mmx23.7mm

Arduino使用DHT11温湿度传感器

 

原理:微处理器与 XHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右,数据分小数部分和整数部分,具体格式在下面说明,当前小数部分用于以后扩展,现读出为零,操作流程:一次完整的数据传输为40bit,高位先出。

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

8位校验和:8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据”相加所得结果的末8位。

3.实验组件

Arduino使用DHT11温湿度传感器 Arduino使用DHT11温湿度传感器 Arduino使用DHT11温湿度传感器 Arduino使用DHT11温湿度传感器

控制板 * 1

USB线*1

XHT11温湿度传感器*1

3P 转杜邦线母*1

 

4.连接图

Arduino使用DHT11温湿度传感器

 

5.测试代码

特别注意:在烧录程序前,要把Dht11文件夹放到 编译器安装目录下的\Arduino\libraries里。不然编译不过。例如我的:E:\arduino-1.8.12\libraries

/*
 XHT11温湿度传感器
 https://m.tb.cn/h.UMWTy2k 
*/
#include <dht11.h>
dht11 DHT;
#define DHT11_PIN 6   
void setup(){
  Serial.begin(9600);
  Serial.println("DHT TEST PROGRAM ");
  Serial.print("LIBRARY VERSION: ");
  Serial.println(DHT11LIB_VERSION);
  Serial.println();
  Serial.println("Type,\tstatus,\tHumidity (%),\tTemperature (C)");
}  
void loop(){
  int chk;
  Serial.print("DHT11, \t");
  chk = DHT.read(DHT11_PIN);    // READ DATA
  switch (chk){
    case DHTLIB_OK:  
                Serial.print("OK,\t"); 
                break;
case DHTLIB_ERROR_CHECKSUM: 
                Serial.print("Checksum error,\t"); 
                break;
    case DHTLIB_ERROR_TIMEOUT: 
                Serial.print("Time out error,\t"); 
                break;
    default: 
                Serial.print("Unknown error,\t"); 
                break;
  }
 // DISPLAT DATA
  Serial.print(DHT.humidity,1);
  Serial.print(",\t");
  Serial.println(DHT.temperature,1);  
  delay(1000);
}

6.测试结果

烧录好测试代码,按照接线图连接好线,利用USB线上电后,打开软件串口监视器,设置波特率为9600,我们可以,看到当前环境中的温度值和湿度值,如下图。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Y2D5bm057OK5raC,size_20,color_FFFFFF,t_70,g_se,x_16

7.库文件下载链接

链接:https://m.tb.cn/h.UMWTy2k

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/32435.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注