ESP8266-Arduino编程实例-AHT20温湿度传感器驱动

AHT20温湿度传感器驱动

1、AHT20介绍

AHT20作为新一代温湿度传感器,在尺寸和智能方面树立了新标准。 它嵌入在适合回流焊接的双排扁平无铅封装中,底部为 3 x 3 mm,高度为 1.0 mm。

该传感器以标准IAHT20输出校准后的数字信号,作为新一代温湿度传感器,在尺寸和智能方面树立了新标准。

它嵌入在适合回流焊接的双排扁平无铅封装中,底部为 3 x 3 mm,高度为 1.0 mm。

传感器以标准 I2C 格式输出校准的数字信号。 AHT20配备了全新设计的ASIC芯片、改进的MEMS半导体电容式湿度传感元件和标准的片上温度传感元件。

在这里插入图片描述

AHT20具有如下特性:

  • 电源电压 DC : 2.0 – 5.5V
  • 测量范围(湿度): 0 ~ 100% RH
  • 测量范围(温度):-40~+85℃
  • 湿度精度: ± 2 % RH ( 25 ℃ )
  • 温度精度:±0.3℃
  • 分辨率:
    • 温度:0.01℃
    • 湿度:0.024%RH
  • 响应时间: 温度:5s 湿度:8s 1/e (63%)
  • 输出信号: I2C 信号

2、硬件准备

  • ESP8266 NodeMCU开发板一块
  • AHT20传感器模块一个
  • 面板板一个
  • 杜邦线若干
  • 数据线一条

硬件接线如下:

传感器引脚 ESP8266开发板引脚
Vin 5v
Gnd Gnd
SCL D1
SDA D2

3、软件准备

  • Arduino IDE或VSCode + PlatformIO

在前面的文章中,对如何搭建ESP8266开发环境做了详细的介绍,请参考:

ESP8266 NodeMCU的引脚介绍在前面的文章中做了详细的介绍,请参考:

4、代码实现

本次使用的驱动库如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <Adafruit\_AHTX0.h>

Adafruit_AHTX0 aht;

void setup()
{
Serial.begin(115200);
Serial.println("Adafruit AHT10/AHT20 demo!");

if (! aht.begin())
{
Serial.println("Could not find AHT? Check wiring");
while (1) delay(10);
}
Serial.println("AHT10 or AHT20 found");
}

void loop()
{
sensors\_event\_t humidity, temp;
aht.getEvent(&humidity, &temp);// populate temp and humidity objects with fresh data
Serial.print("Temperature: ");
Serial.print(temp.temperature);
Serial.println(" degrees C");
Serial.print("Humidity: ");
Serial.print(humidity.relative_humidity);
Serial.println("% rH");

delay(500);
}

文章来源: https://iotsmart.blog.csdn.net/article/details/126926811