_SKU_TOY0054_Si7021_温湿度传感器 - jimaobian/DFRobotWikiCn GitHub Wiki

概述

该模块集成了高品质Si7021温湿度传感器,应用了专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。同时其体积小巧、精度高,特别是拥有毫秒级测试转换时间(DHT系列需要约2s的转换时间),启动测量与读取数据间不需等待,方便了应用。

提供了可选焊接的2.54mm焊盘以及Gadgeteer标准接口,在Arduino、Gadgeteer平台均可用。

技术规格

  • 工作电压: 1.9-3.6V (推荐3.3V)
  • 待机电流:60nA
  • 温度范围:-40 - 85℃ (推荐 -10 - 60℃)
  • 温度精度:±0.4℃ (-10 - 85℃)
  • 湿度范围:0-100%RH (推荐20% - 80%RH)
  • 湿度精度:±3%RH (0-80%RH)
  • 温度转换时间:7ms
  • 湿度转换时间:17ms (进行湿度转换时将自动进行温度转换)
  • 接口类型:I2C,Gadgeteer接口和2.54mm间距焊盘
  • 模块尺寸:32X32mm
  • 安装孔:直径3.2mm,间距25mm

引脚说明

Si7021_pin.png

2.54mm间距焊盘接口(可自行焊接):

  • SDA I2C数据端口
  • SCL I2C时钟端口
  • GND 电源地
  • 3.3V 电源正

Gadgeteer插座:两组I接口

应用范围

  • 环境调节器
  • 室内气象站
  • 汽车除雾控制

使用教程

下面我们以一个简单的实验为例程,来告诉大家如何简单方便的使用我们的这一款温湿度传感器的芯片。

a) 目标:检测室内温湿度并通过串口显示

b) 硬件清单

c) 软件清单

d) 连线图 Si7021_connect.png

e) 操作步骤

  • 打开Arduino IDE
  • 下载下面的程序到UNO
 #include <Wire.h>

 const int ADDR =0x40;
 int X0,X1,Y0,Y1,Y2,Y3;
 double X,Y,X_out,Y_out1,Y_out2;

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

   Wire.begin();
   delay(100);
   Wire.beginTransmission(ADDR);
   Wire.endTransmission();

   pinMode(13,OUTPUT);
 }
 void loop()
 {
   /**发送温度测量命令**/
   Wire.beginTransmission(ADDR);
   Wire.write(0xE3);                               //发送读温度命令
   Wire.endTransmission();

   Serial.print("Temp");Serial.print("\t");Serial.println("RH");

   /**读取温度数据**/
   digitalWrite(13,HIGH);                          //LED亮开始读数据
   Wire.requestFrom(ADDR,2);                       //回传数据

   if(Wire.available()<=2);
   {
     X0 = Wire.read();
     X1 = Wire.read();
     X0 = X0<<8;
     X_out = X0+X1;
   }

   /**计算并显示温度**/
   X=(175.72*X_out)/65536;
   X=X-46.85;
   Serial.print(X);Serial.print("C");Serial.print("\t");

   /**发送湿度测量命令**/
   Wire.beginTransmission(ADDR);
   Wire.write(0xE5);
   Wire.endTransmission();

   /**读取湿度数据**/
   Wire.requestFrom(ADDR,2);
   if(Wire.available()<=2);
   {
     Y0 = Wire.read();Y2=Y0/100; Y0=Y0%100;
     Y1 = Wire.read();
     Y_out1 = Y2*25600;
     Y_out2 = Y0*256+Y1;
   }

   /**计算并显示湿度**/
   Y_out1 = (125*Y_out1)/65536;
   Y_out2 = (125*Y_out2)/65536;
   Y = Y_out1+Y_out2;
   Y=Y-6;
   Serial.print(Y);Serial.println("%");

   digitalWrite(13,LOW);
   delay(300);
 }

f) 实现效果

  • 打开Ardino串口,可以观察到温湿度值:

TOY0054_exampleresult.png

产品购买链接

File:nextredirectltr.png购买 Si7021温湿度传感器(SKU: TOY0054)

category: Product Manual category: SEN Series category: Sensors

⚠️ **GitHub.com Fallback** ⚠️