Ameba Arduino: [RTL8195] [RTL8710] 使用HTU21D温湿度感测器

材料准备

  • Ameba x 1
  • HTU21D Sensor x 1
  • 4.7KΩ 电阻 x 2

範例說明

HTU21D是一款温度感测器,可量测范围-40℃—105℃,湿度精度范围(10%RH to 95%RH)HTU21D±2%RH,使用I2C界面与Ameba沟通

下载Ameba使用的 HTU21DF Library

安装library的方式请参考Arduino官方网站的教学文章将zip档的library加入Ameba:
https://www.arduino.cc/en/Guide/Libraries#toc4

HTU21D需要另外接Pull High4.7KΩ电阻,RTL8195接线图如下:

1

RTL8710接线图如下:

1

我们打开范例 “File” -> “Examples” -> “Adafruit HTU21DF Library” -> “HTU21DFtest”,编译并上传至Ameba之后按下Reset按钮reboot,即可以在Serial Monitor看到底下结果:

1

程式码说明

此范例相当简单,一开始初始化宣告Adafruit_HTU21DF class

Adafruit_HTU21DF htu = Adafruit_HTU21DF();

接着在setup()里利用htu.begin(),判断HTU21DF是否顺利启动

if (!htu.begin()) {
    Serial.println("Couldn't find sensor!");
    while (1);
}

进入loop()里分别使用htu的readTemperature()及readHumidity() method,就可以读出温湿度的资料了

void loop() {
  Serial.print("Temp: "); 
  Serial.print(htu.readTemperature());
  Serial.print("\t\tHum: "); 
  Serial.println(htu.readHumidity());
  delay(500);
}