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

SHT21温度湿度传感器驱动

1、SHT21介绍

Sensirion 的新型湿度和温度传感器 SHT21 即将在尺寸和智能方面设定新标准:嵌入在可回流焊接的双扁平无引线 (DFN) 封装中,其提供校准的 3 x 3mm 脚印和 1.1mm 高度,数字、I2C 格式的线性化信号。

凭借全新设计的 CMOSens® 芯片、重新设计的电容式湿度传感器和改进的带隙温度传感器,性能甚至超过了上一代传感器(SHT1x 和 SHT7x)的出色水平。例如,已采取措施稳定高湿度水平下的行为。每个传感器都经过单独校准和测试。批次标识印在传感器上,电子标识码存储在芯片上——可以通过命令读取。

此外,SHT21 的分辨率可以通过命令改变(8/12bit 到 12/14bit for RH/T),可以检测到低电量,校验和有助于提高通信可靠性。

SHT21 采用第 4C 代 CMOSens® 芯片。该芯片除电容式相对湿度传感器和带隙温度传感器外,还包含放大器、A/D转换器、OTP存储器和数字处理单元。

在这里插入图片描述

2、硬件准备

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

硬件接线如下:

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

3、软件准备

  • Arduino IDE或VSCode + PlatformIO

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

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

4、代码实现

本次实例使用到SHT21传感器驱动库如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <Wire.h>
#include <Sodaq\_SHT2x.h>

void setup()
{
Wire.begin();
Serial.begin(9600);
}

void loop()
{
Serial.print("Humidity(%RH): ");
Serial.println(SHT2x.GetHumidity());
Serial.print(" Temperature(C): ");
Serial.println(SHT2x.GetTemperature());
Serial.print(" Dewpoint(C): ");
Serial.println(SHT2x.GetDewPoint());

delay(1000);
}

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