M5StickCの内蔵LEDを使う

いまさらですが、手を広げ過ぎたので基本機能をまず終わらせます。。。

現時点の情報ですので最新情報はM5StickC非公式日本語リファレンスを確認してください。

概要

M5StickCには赤色LEDが内蔵されており、光らせることができます。一般的にArduinoのプログラムを作る時には「Hello World」のかわりにLEDを光らせるLチカをすることが多いです。

注意事項

一般的なArduinoだとGPIO13とかにLEDがついていることが多いですが、開発ボードによって内蔵していなかったり、違うPINにつながっていたりします。

M5StickCは裏側を見ればわかるのですが、GPIO10に接続されています。また、LOWに落とすことでLEDが点灯しますので注意してください。

サンプルスケッチ

#include <M5StickC.h>
void setup(){
  M5.begin();
  // LED ON(GPIO_NUM_10 or M5_LED)
  pinMode(GPIO_NUM_10, OUTPUT);
  digitalWrite(GPIO_NUM_10, LOW);
}
void loop() {
}

非常にシンプルですが、最低限設定しないといけないものがpinMode()です。ここでOUTPUTに設定しないとdigitalWrite()の値をいくら変更してもLEDは光りませんでした。

また、一般的なLチカの場合、PINをHIGHにして、抵抗とLEDに接続したものをGNDに繋ぐことで点灯させています。こちらの回路の方がシンプルなのですが、ボードから電源供給できる量はあまり大きくありません。

M5StickCのように、外部の電源からボード側のGNDに流す回路の方が電源管理的に楽なんだと思います。

まとめ

名前はM5_LEDってのが定義されていますが、裏側の番号みて10を指定するほうがLEDって思えるより楽な気がします。

ただしM5StickCのLEDはLOWで点灯ってのは覚えておいてください。忘れても確かめれば大丈夫なんですが、pinMode()の設定をしていないとHIGHでもLOWでも点灯しないので気をつけてください。

コメント