クラス名です: M5
機能です:
LCDを初期化; SDカードを初期化; シリアルポートバッファーをクリアし、シリアルポートのボーレートを115200に設定; I2Cを初期化; ボタンAを睡眠再起動ボタンに設定
原型関数です:
void begin(bool LCDEnable=true, bool SDEnable=true, bool SerialEnable=true,bool I2CEnable=false)
関数実装です:
void M5Stack::begin(bool LCDEnable, bool SDEnable, bool SerialEnable,bool I2CEnable){
// Correct init once
if (isInited) return;
else isInited = true;
// UART
if (SerialEnable) {
Serial.begin(115200);
Serial.flush();
delay(50);
Serial.print("M5Stack initializing...");
}
// LCD INIT
if (LCDEnable) {
Lcd.begin();
}
// TF Card
if (SDEnable) {
SD.begin(TFCARD_CS_PIN, SPI, 40000000);
}
// TONE
// Speaker.begin();
// Set wakeup button
Power.setWakeupButton(BUTTON_A_PIN);
// I2C init
if(I2CEnable){
Wire.begin(21, 22);
}
if (SerialEnable) {
Serial.println("OK");
}
}
void M5Stack::update() {
//Button update
BtnA.read();
BtnB.read();
BtnC.read();
//Speaker update
Speaker.update();
}
使用例です:
#include <M5Stack.h>
void setup() {
M5.begin();
}
機能です:
キーの状態を読み取る
原型関数です:
void update()
関数実装です:
void M5Stack::update() {
//Button update
BtnA.read();
BtnB.read();
BtnC.read();
//Speaker update
Speaker.update();
}
使用例です:
#include <M5Stack.h>
void setup() {
M5.begin();
}
void loop() {
M5.update();
}
非推奨: M5.Power.deepSleep()を使用してください
機能です:
システムは深い睡眠状態に移行します
原型関数です:
void powerOFF()
関数実装です:
void M5Stack::powerOFF() {
M5.Power.deepSleep();
}
使用例です:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Lcd.println("This is software power off demo");
M5.Lcd.println("Press the button A to power off.");
M5.setWakeupButton(BUTTON_A_PIN);
}
void loop() {
M5.update();
if (M5.BtnA.wasPressed()) {
M5.powerOFF();
}
}