Class Name: M5
Description:
Initializes the LCD; initializes the SD card; clears the serial buffer and sets the baud rate to 115200; initializes I2C; sets button A as the wake-up button.
Syntax:
void begin(bool LCDEnable=true, bool SDEnable=true, bool SerialEnable=true, bool I2CEnable=false)
Function Implementation:
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();
}
Example:
#include <M5Stack.h>
void setup() {
M5.begin();
}
Description:
Reads the status of the buttons.
Syntax:
void update()
Function Implementation:
void M5Stack::update() {
//Button update
BtnA.read();
BtnB.read();
BtnC.read();
//Speaker update
Speaker.update();
}
Example:
#include <M5Stack.h>
void setup() {
M5.begin();
}
void loop() {
M5.update();
}
Not recommended: Please use M5.Power.deepSleep() instead.
Description:
Puts the system into deep sleep mode.
Syntax:
void powerOFF()
Function Implementation:
void M5Stack::powerOFF() {
M5.Power.deepSleep();
}
Example:
#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();
}
}