【microbit】内蔵ボタンの使い方【ボタンが押されたとき】

※当サイトには広告が掲載されています。ご了承くださいm(_ _)m

本記事ではmicro:bitのボタンを使いこなせるようになることを目指して解説します。

本記事の内容
  • 【microbit】内蔵ボタンの使い方【ボタンが押されたとき】

実際のプログラム例と実行結果を示しながら解説します。

スポンサーリンク

【microbit】内蔵ボタンの使い方【ボタンが押されたとき】

micro:bitにはボタンAとボタンBの2つがあります。押したら自動で戻るタイプのボタンです。

裏にもリセットボタンがありますが、これはmicro:bitをリセットするためのボタンなので、動作をプログラミングすることはできません。

今回はボタンA/Bを押したときのプログラムの作り方を解説します。

内蔵ボタンを使ってできること

内蔵ボタンを使うと下記のようなことができます。

  • 押したボタンによって動作するプログラムを切り替える
  • ボタンを押し続ける間は音楽を鳴らす

上記のとおりです。ぜひ、使い方をマスターしましょう!

ボタン検出タイミング

まず、前提知識としてボタンが押されたことを検出するタイミングについて解説します。これはmicro:bitに限った話ではなく、世の中にあるボタン全般の話です。

ボタンが押されたことを検出するタイミングは次の3種類があります。

  • 押下おうか時:ボタンを押したとき
  • 短押したんおし時:ボタンを押して離したとき
  • 長押しながおし時:ボタンを押してしばらく時間が経って離したとき

普段は全然意識しないと思いますが、よく観察すると結構違いがあるんですよ。

そして、micro:bitは「短押し」と「長押し」を検出できます。

基本的には「短押し」を検出して動き出すプログラムを作っていきます。

ボタン検出の種類

micro:bitにはボタンAとボタンBの2つを搭載していますが、実は次の3パターンのボタン操作を検出できます。

  • ボタンAが押されたこと
  • ボタンBが押されたこと
  • ボタンAとBが同時に押されたこと

なので、例えば下記のようなプログラムを作ることができます。

  • ボタンAが押されたら処理Aを実行
  • ボタンBが押されたら処理Bを実行
  • ボタンAとボタンBが同時に押されたら処理Cを実行

どれも検出方法に違いはないので以降は「ボタンAが押されたこと」を例に紹介します。

「ボタンAが押されたとき」ブロック

この命令はボタンA/B/A+Bが押されたことをきっかけに動作するプログラム作る開始命令です。

開始命令なので、ブロックの間に様々な命令を書きます。

また、「A」の部分は「A」、「B」、「A+B」の3種類から選べます。

ちなみに、シミュレーター上は「A+B」のボタンがありますが、実物のmicro:bitではAとBを同時押しします。

例えば、次のようにすると「ボタンAが押されたときに♡マークを表示」します。

ただし、ボタンAを1秒くらい長押しするとこのプログラムは実行されません。ボタンを離したことを検出するはずなのですが、、、時間が経つと検出しないようです。

ちなみに、「ボタンAが押されたとき」ブロックは2つ置けません。どちらか一方は無効になります。どっちのプログラムを動かしたらいいかわからなくなるからですね。

「ボタンBが押されたとき」や「ボタンA+Bが押されたとき」ブロックは同時に置くことができます。

それぞれのボタンに処理を割り当てれば色々なプログラムが作れますよ。

ボタンAが押されたら♡マークを表示し、ボタンBが押されたら大マークを表示し、ボタンAとBが同時に押されたら表示を消すプログラムです。

「もしボタンが押されているなら」ブロック

この命令はボタンが押されていることを判定するときに使用する命令です。

これもボタンA、B、A+Bの3パターンを判定できます。

例えば、次のようにすると「ボタンAが押されているときに♡マークを表示し、押されていないと×マークを表示」します。

ここでポイントなのは「押されたとき」ではなく「押されているとき」と書かれている点です。

つまり、この判定部分が実行されるタイミングでボタンが押されないと処理は実行されません。なので、ボタンを押したタイミングで処理が実行されるとは限りません。

ちなみに、ボタンを押し続けている間は「ボタンが押されている」に一致するので、処理が実行されます。

どちらを使うか?

使い分けは次のようにするといいでしょう。

  • ボタンが押されたことをきっかけに処理を動かしたいとき
    「ボタンが押されたとき」ブロック
  • 別処理の途中でボタンが押されていることをチェックしたいとき
    「もしボタンが押されているなら」ブロック

上記のとおりです。

まとめ

本記事のおさらいです。

  • ボタンの検出タイミングは「押下時、短押し時、長押し時」の3種類
  • プログラミング可能なボタンは「ボタンA/B/A+B」の3種類
  • 「ボタンAが押されたとき」でボタン操作をきっかけにプログラムが動く
  • 「ボタンAが押されたとき」ブロックは2つ置けない
  • 「ボタンAが押されている」でボタンが押されていることを判定できる

上記のとおりです。

それでは、micro:bitを楽しんでください(^_^)/~

micro:bit講座一覧へ戻る

タイトルとURLをコピーしました