*注意
こちらの記事はM5初心者が記述しています。つっこみは優しく、そしてアドバイスをいただけたらうれしいです。何卒よろしくお願いいたします。
M5Paperのsampleをベースにしたのですが、大変見えにくく電池消耗も激しいのでサンプルとしてどーなのかなーと思うところがあり、コードを試行錯誤で改善してみました。
#include <M5EPD.h>
char temStr[10];
char humStr[10];
float tem;
float hum;
M5EPD_Canvas canvas(&M5.EPD);
void setup()
{
M5.begin();
M5.SHT30.Begin();
M5.EPD.SetRotation(180);
M5.EPD.Clear(true);
canvas.createCanvas(950, 530);
canvas.setTextSize(6);
}
void loop()
{
M5.SHT30.UpdateData();
tem = M5.SHT30.GetTemperature();
hum = M5.SHT30.GetRelHumidity();
Serial.printf("Temperatura: %2.2f*C Humedad: %0.2f%%\r\n", tem, hum);
dtostrf(tem, 2, 2 , temStr);
dtostrf(hum, 2, 2 , humStr);
canvas.drawString("Temperature:" + String(temStr) + "*C", 100, 30);
canvas.drawString("Humidity:" + String(humStr) + "%", 100, 130);
canvas.pushCanvas(0,0,UPDATE_MODE_A2);
sleep(1);
esp_deep_sleep(500*1000*1000);
}
M5StickCで小型環境センサ端末を作る
deep sleepについてはこちらを参考にしました。他にも参考にしたかもしれないコードがあったと思いますが、失念したのでその点お許しください。