2021/02/20

M5CORE2にはGPIOのボタンが無い

M5CORE2は全面がタッチパネルになっていて、ハードウェアのボタンは電源とリセットしかない。
LCDよりもタッチパネルの方が広くなっていて、LCDが無い部分に丸が描いてある。ここをボタンと見なせばいいんじゃないの、ということだろう。

image

for AWSにもソフトウェアボタンの実装がある。
初期化のところを見ると、左上の座標と幅x高さを与えれば、そこがボタン扱いになるようだ。つまり画面の下にある3つに固定されているわけではないということだ。

 

サンプルではボタンの読込をこんな感じで行っている。
for文の中でポーリングしているのだが、本体の方ではtaskが立ち上がっているようで、ポーリングのタイミングでタッチパネルの状態を見に行くのではなく、その時点で最後にtaskで更新されたデータを読むだけである。

状態が変わったタイミングでコールバックもらいたいと思ったが、コールバック関数をよくわからんtaskに登録してコンテキストがどうなってるか悩むことになるくらいなら、コールバックするためのtaskを別に立ち上げた方がよいだろうな。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。