前置き
技術書典で買ったModableの本のコードを動かしたくてM5Stackを買ったものの、手をつけていなかった。
最近、入門書を買ってセンサーやM5StickCも買った。最終的には値を取得してWebで確認できるようにしたいと思っている。インターネットに繋がないとIoTではないので。
環境値の取得
前段階として、購入したM5StickCと環境センサーをつなげて値を取得できるか試してみました。
入門書で使用されているセンサーが古いバージョンで、まんまのコードだと動かないだろうなと思ったらやっぱり動かず。
公式を漁っているとサンプルコードがあった。
結果
入門書のコードとサンプルコードを混ぜたコード。
#include <M5StickC.h>
#include <Wire.h>
#include "UNIT_ENV.h"
SHT3X sht30;
QMP6988 qmp6988;
float tmp = 0.0;
float hum = 0.0;
void setup() {
// put your setup code here, to run once:
M5.begin();
M5.Lcd.setRotation(3);
M5.Lcd.fillScreen(BLACK);
M5.Lcd.println("ENV Grove TEST");
Wire.begin();
if(!qmp6988.init()){
M5.Lcd.println("Check wiring");
while(1);
}
}
void loop() {
// put your main code here, to run repeatedly:
if(sht30.get()==0){
tmp = sht30.cTemp;
hum = sht30.humidity;
}else{
tmp=9999,hum=9999;
}
float pre = qmp6988.calcPressure() / 100;
M5.Lcd.fillRect(0,20,100,60,BLACK);
M5.Lcd.setCursor(0, 20);
M5.Lcd.printf("Temp: %4.1f Humi: %4.1f", tmp, hum);
M5.Lcd.setCursor(0, 40);
M5.Lcd.printf("pre: %4.2f", pre);
delay(100);
}
コメントを残す