アラフォーエンジニアの週末

Arduino, M5stackなど趣味で初めた電子工作を中心とした週末の活動・メモを中心にかいていきます。

ボタン管理クラスについて

前回に引き続きボタン(スイッチ)についてです。

M5stick-Cにはなんとボタンに関するクラスが用意されているとのこと。

なのでわざわざ、ピンの設定やdigitalReadなどを使わなくてもよいとのことですね。

しかも色々と便利なものがあるらしいということで、詳しいことは下記サイトに書いてありますので、私も参考にさせていただきました。

https://lang-ship.com/reference/unofficial/M5StickC/Class/Button/

https://lang-ship.com/reference/M5StickC/latest/

https://github.com/m5stack/m5-docs/blob/master/docs/ja/api/button.md

f:id:rkblog:20210228164917p:plain

図出典:M5StickC非公式日本語リファレンス

 

公式のGitHubをみると、ボタンクラスのAPIなどはM5stackシリーズ共通のようですね。

 

 

下記URLを参考にさせていただき、同じくAPIを試してみたいと思います。

https://lang-ship.com/blog/work/m5stickc-button-class/

https://github.com/m5stack/m5-docs/blob/master/docs/en/api/button.md

f:id:rkblog:20210228173313p:plain

長押しのpressedFor(xxmsec)を使ってみました。簡単に長押しの検出ができますね。

f:id:rkblog:20210228174242p:plain

 

なおupdateはボタンのステータスや時間データをRead()関数でを取りに行っているようです。

f:id:rkblog:20210228173841p:plain

また、pressedForの関数ではSWのステータスと時間により判断しているようです。

f:id:rkblog:20210228173609p:plain

とゆーことで使いながらこのボタンのクラスに慣れてい消えればと思います。