「赤色LEDを蛍のように光らせてみよう。」では、シールド経由でmicro:bitに接続した赤色LEDモジュールを「Microsoft MakeCode for micro:bit」(以下 MakeCode)で蛍のように、徐々に明るくなったり暗くなったりするプログラムを作成します。
はじめに
「micro:bitとキットで始める計測・制御」では、micro:bit V2(以下 micro:bit)と市販のセンサーキットの「KEYESTUDIO 37センサースターターキット micro:bit V2付」(以下 キット)を使って計測・制御の基本を実習します。
実習はkeyestudio.comが投稿しているwiki(KS0361(KS0365) keyestudio 37 in 1 Starter Kit for BBC micro:bit)を二次利用して行います。
ライセンス
図やソースコード(ブロック)等、すべての内容はCC BY-SA 4.0ライセンスに従います。
実習準備
実習に必要な機器とキットの部品を準備します。
機器
「micro:bitとキットで始める計測・制御:micro:bitをMakeCodeで使ってみよう。」記事で書きましたmicro:bitと、MakeCodeをインストールしたWindows11搭載のパソコンを準備します。
部品
赤色に発光する赤色LEDモジュールを、Micro bit Sensor Shield V2(以下 シールド)にワイヤーで接続して使います。
▶️赤色LEDモジュール
赤色LEDモジュールには3本のピンが用意されており、「Gまたは-」ピンはシールドのグランド(GND)に、「Vまたは+」ピンはシールドの電源(VCC 3.3-5V)に、Sピンにはシールドの信号を接続します。
SピンをHighレベルまたはLowレベルに設定することで、LEDの点灯、消灯を制御することができます。

▶️ジャンパーワイヤー(メスーメス) 20cm
40本が一束になっていますので、接続する本数だけ分けて使います。

配線
配線のためのジャンパーワイヤーは、必要な本数を分けてください。
配線するときは、micro;bitのUSBケーブルを取り外して行ってください。
配線図
赤色LEDモジュールとシールドをジャンパーワイヤーで接続します。

配線リスト
白色LEDモジュール | シールド | 備 考 |
Gまたは-ピン | G-2ピン | |
Vまたは+ピン | V1-1ピン | |
Sピン | S-0ピン |

プロジェクト
「赤色LEDを蛍のように光らせてみよう。」はシールドに接続した赤色LEDモジュールを徐々に明るくしたり、暗くしたりするプロジェクトです。
LEDの明るさは、加えているアナログ電圧を変えることで、供給される電流が変化し制御できますが、micro:bitの出力ピンはアナログ電圧を変えることができません。
代わりに、入力信号のHighとLowの時間を変化させる、PWM(Pulse Width Modulation:パルス幅変調)という機能を使って、供給する電流を変化させ、明るさを制御します。
一定周期内のHigh(5V)とLow(0V)の時間が同じ(50%)であれば、電流が半分になるためLEDの明るさは通常の明るさの半分になります。
一定周期内のHigh(5V)とLow(0V)の時間を時間配分を変えることで、徐々に明るくしたり、暗くしたりすることができます。
PWM(Pulse Width Modulation:パルス幅変調)の簡単な説明はこちらを参考にしてください。
「赤色LEDを蛍のように光らせてみよう。」では、LEDを徐々に明るくしていく場合、0~512に間で、1ミリ秒ごとに0から1ずつ増加させた値をHighの時間として、LEDのS端子に出力します。
反対にLEDを徐々に暗くしていく場合は、512~0に間で、1ミリ秒ごとに512から1ずつ減少せた値をHighの時間として、LEDのS端子に出力します。
言葉によるの流れの説明
作成したプログラムの流れを言葉で示します。
手 順 | 説 明 |
1 | micro:bitのLEDディスプレイを非表示にします。 |
2 | 明るさを制御する変数(val)を0に設定します。 |
3 | LEDが最も明るくない(val<512)場合、手順4を実行します。そうでなければ、徐々に暗くする処理を行うため、手順8を実行します。 |
4 | 徐々に明るくしていくため、valの現在値に1を加えます。 |
5 | val値に応じたアナログ値を、P0端子に出力します。 |
6 | 徐々に明るくしていく時間を調整するため、1ミリ秒待ちます。 |
7 | 手順3~7を繰り返し実行します。 |
8 | LEDが最も暗くない(val>0)場合、手順9を実行します。そうでなければ、徐々に明るくする処理を行うため手順3を実行します。 |
9 | 徐々に暗くしていくため、valの現在値から1を引きます。 |
10 | val値に応じたアナログ値を、P0端子に出力します。 |
11 | 徐々に暗くしていく時間を調整するため、1ミリ秒待ちます。 |
12 | 手順8~12を繰り返し実行します。 |
図(フローチャート)による流れの説明
流れを図(フローチャート)で示します。

プロジェクトの作成
配線したmicro:bitにUSBケーブルを取り付け、MakeCodeを起動します。
「新しいプロジェクト」をクリックして、プロジェクト(mb003-LED-Hotaru)を作成します。
keyestudioより「microbit-Project-14_Breath.hex」として、完成版が公開されていますので参考にしてください。(mb003-LED-Hotaruとは設定値が異なります。)
プロジェクトの作成手順やブロックの配置方法については、こちらを参考にしてください。

プロジェクトをmicro:bitへ転送
作成したプロジェクトをmicro:bitに転送して、実行できるようにします。
転送方法はこちらを参考にしてください。
コピーが完了すると、プログラムが起動し、赤色LEDモジュールが蛍のように、徐々に明るくなったり暗くなったりします。
まとめ
シールドに接続した赤色LEDモジュールを蛍のように、徐々に明るくなったり暗くなったりするプロジェクトをMakeCodeで作成し、実際に蛍のような点滅をすることができました。
PWM(Pulse Width Modulation:パルス幅変調)という機能を使って、LEDに供給する電流を変化させることで、明るさを制御できることを学びました。