M5StackにGrove SHT31温度湿度計をつないでみた

Grove SHT31温度湿度計をM5Stackにつないでみました。接続はGroveケーブルを使ってM5StackのGroveソケットに挿しました。

Groveソケット接続

プログラムはSeeed StudioのGrove WikiのSHT31のページにあるライブラリとサンプルコードを使いました。

#include <M5Stack.h>
#include <Arduino.h>
#include <Wire.h>
#include "SHT31.h"

SHT31 sht31 = SHT31();

void setup() {  
  // Initialize the M5Stack object
  M5.begin();

  Serial.begin(115200);
  while(!Serial);
  Serial.println("begin...");  
  sht31.begin();  
}

void loop() {
  float temp = sht31.getTemperature();
  float hum = sht31.getHumidity();
  Serial.print("Temp = "); 
  Serial.print(temp);
  Serial.println(" C"); //The unit for  Celsius because original arduino don't support speical symbols
  Serial.print("Hum = "); 
  Serial.print(hum);
  Serial.println("%"); 
  Serial.println();
  
  M5.Lcd.printf("Temp. = %f  Hum. = %f\n", temp, hum);
  
  delay(1000);
}

変更点は、

  • 1行目に #include <M5Stack.h> を追加
  • 10行目にM5.begin( ); を追加
  • 12行目のボーレートを115200に変更
  • 29行目にLCDへの表示を追加

だけです。LCD表示はスクロールのコードを書いていないので、画面最後の行まで到達したらそれ以降画面更新はありません。

Groveソケットを使わないで、GPIO端子に接続するのも試してみました。接続ケーブルはGrove-4ピン-ジャンパメスケーブルを使い、接続先は、

黄 → SCL(GPIO22)
白 → SDA(GPIO21)
赤 → 3.3V
黒 → GND

としました。

GPIO端子に接続

こちらも問題なく動作しました。

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください