温湿度

来自Labplus盛思维基百科
Jiangzhaohui讨论 | 贡献2018年1月8日 (一) 16:15的版本 Arduino示例
跳转至: 导航搜索
黑色传感器最终版12.20-28.png

概述

基于SHT20数字温湿度传感器集成IC。用于检测环境温湿度,具有极高的可靠性和长期稳定性。采用I2C通讯方式,操作简便。

技术参数

  • 工作电压:VCC 3.3-5V
  • I2C数字信号输出
  • 温度测量范围:-40~125℃
  • 温度测量精度:±0.3℃
  • 湿度测量范围:0~100%RH
  • 湿度测量精度:±3%RH
  • 模块尺寸:24x46x7.5mm

引脚定义

VCC 电源
SDA I2C数据
SCL I2C时钟
GND

使用教程

连接示意图

Arduino示例

温湿度库下载

//程序功能:读取当前的温湿度值//
#include <Wire.h>
#include "SHT20.h"
SHT20    sht20;
void setup()
{
    Serial.begin(9600);
    Serial.println("SHT20 Example!");
    sht20.initSHT20();                                  // Init SHT20 Sensor
    delay(100);
    sht20.checkSHT20();                                 // Check SHT20 Sensor
}
void loop()
{
    float humd = sht20.readHumidity();                  // Read Humidity
    float temp = sht20.readTemperature();               // Read Temperature
//    Serial.print("Time:");
//    Serial.print(millis());
    Serial.print(" Temperature:");
    Serial.print(temp, 1);
    Serial.print("C");
    Serial.print(" Humidity:");
    Serial.print(humd, 1);
    Serial.print("%");
    Serial.println();
    delay(1000);
}

MicroPython示例

from microbit import *

def getTemp():
  i2c.write(0x40,bytearray([0xE3]))
  sleep(85)
  t=i2c.read(0x40,2)
  return -46.86+175.72*(t[0]*256+t[1])/65535
  
  
def getHumi():
  i2c.write(0x40,bytearray([0xE5]))
  sleep(40)
  t=i2c.read(0x40,2)
  return -6+125*(t[0]*256+t[1])/65536
  
while True:
    print('TEMP:',getTemp())   #获取温度并打印出来
    print('HUMi:',getHumi())   #获取湿度并打印出来
    sleep(500)

图形化示例