
Arduino 上手教程
StickS3 按键输入相关 API 与案例程序。
M5.update()函数用于读取状态更新且尽可能减少阻塞情况, 否则可能无法及时获取的按键变化状态。#include "M5Unified.h"
#include "M5GFX.h"
static int32_t w;
static int32_t h;
static bool drawed = false;
void setup()
{
auto cfg = M5.config();
M5.begin(cfg);
M5.Lcd.setRotation(1);
w = M5.Lcd.width();
h = M5.Lcd.height();
M5.Lcd.setFont(&fonts::FreeMonoBold12pt7b);
M5.Lcd.drawString("Button Released", 0, 0);
}
void loop()
{
M5.update();
if(M5.BtnA.isPressed() || M5.BtnB.isPressed())
{
if (!drawed){
M5.Lcd.clear();
}
M5.Lcd.drawString("Button Detail:", 0, 0);
if (M5.BtnA.isPressed()) {
M5.Lcd.drawString("ButtonA Pressed", 0, 30);
}
else if (M5.BtnB.isPressed()) {
M5.Lcd.drawString("ButtonB Pressed", 0, 60);
}
drawed = true;
}
else if (drawed){
drawed = false;
M5.Lcd.clear();
M5.Lcd.drawString("Button Released", 0, 0);
}
vTaskDelay(1);
} 该程序效果为按动按键,屏幕上会显示具体按键状态。



StickS3 按键部分使用了M5Unified库中的Button_Class, 更多按键相关的API可以参考下方文档: