「~なら」のプログラム
「もしスイッチを押したら」「明るくなったら」「時間がたったら」など、プログラムではいろいろな状況に応じて、処理を変える書き方がよく出てきます。この仕組みを「条件分岐」といいます。
今回は、micro:bitの2つのボタンを使って、「ボタンが押されたら」「LEDの表示を変える」プログラムを作りましょう。なお、完成したプログラムは上のダウンロードリンクからも入手できるので、そちらもチェックしてみてください。
プログラムは前回同様、MakeCodeで作成します。
MakeCodeについて
ここで紹介するmicro:bitのプログラミング環境「MakeCode」は、随時アップデートされているため、執筆時と表記などが異なるかもしれません。あらかじめご了承ください。
ボタンが押されたら何を表示しよう?
「最初だけ」のブロックは使わないので、まずは「ツールボックス」に戻しておきましょう。
ボタンが押されたかどうかを調べるブロックは「基本」カテゴリにあります。「ボタンAが押されたとき」の「A」の部分をクリックすると、「B」「A+B」がさらに選べます。せっかくなので、3通り全部使ってみましょう。
ブロックを右クリックして「複製する」を選択すると、コピーできます。
それぞれのブロックの中に、LEDを表示するブロックを入れてみましょう。「ずっと」ブロックにも入れましょう。自分で画像を作ってもいいですし、すでにある画像アイコンから選んでもよいでしょう。全部で4通りの画像が試せますね。
下の画像は「基本」カテゴリより、画像アイコンのブロックを選んだ例です。
動かしてみるとよくわかりますが、LEDの表示が切り替わるタイミングは、実は「ボタンを押して、元に戻る」タイミングなのです。ボタンが戻ったあとに画像が変わり、しばらくして「ずっと」ブロックの表示に戻りますね。
サンプルプログラム
このプログラムはサンプルプログラムの「microbit-3つのスイッチ.hex」と同じものです。