前回は「F503i」のキー入力の基本的な使い方に関して解説しました。今回はプチ応用編としキー(ボタン)全般の使い方と考え方を解説します。
- 【小学8年生|F503i】キー入力の使い方【押下、短押し、長押し】
世の中にあるキー(ボタン)には押し方が3種類あります。それぞれの違いと仕組みを解説しつつ、そのプログラミング方法を解説します。
【小学8年生|F503i】キー入力の使い方【ボタンを押す】
F503iには数字キー0~9と記号キー*、#の全12キーがあります。押したら自動で戻るタイプのボタンです。
キー検出タイミング
まず、キー(ボタン)が押されたことを検出するタイミングについて解説します。これはF503iに限った話ではなく、世の中にあるキー全般の話です。
キーが押されたことを検出するタイミングは次の3種類があります。
- 押下時:キーを押したとき
- 短押し時:キーを押して離したとき
- 長押し時:キーを押してしばらく時間が経って離したとき
F503iはキーが押されたら1になるので、押下時が当てはまります。
3種類のキー入力を使ってできること
3種類のキー入力を使うと下記のようなことができます。
- 押下時:キーを押したら音を鳴らす
- 短押し時:キーを押すたびにLEDを点けたり消したりする
- 長押し時:キーを長押しするとLEDが消える
上記のとおりです。ぜひ、使い方をマスターしましょう!
「キー入力」の使い方例① ~押下時~
キーが押された瞬間に動き出すプログラム例です。
3キーが押されてない間は何もせず、3キーが押されたらLEDを3つとも点灯させます。(LEDの使い方はこちら)
実行結果は下記のとおりです。
「キー入力」の使い方例② ~短押し時~
次はキーを押して離すことを検知するプログラム例です。
6キーが押されるたびにログを表示し、6キーが押されてないならログを表示しないようにします。6キーを押しっぱなしの場合は最初の1回しか表示しないようにします。
実行結果は下記のとおりです。
「キー入力」の使い方例③ ~長押し時~
最後はキーを1秒以上押したら反応するプログラム例です。
これは0キーが押されたら変数を1ずつ増やしていき、変数の値が10を超えたらLEDを3つとも点灯させるプログラムです。1秒間をカウントする部分は変数を1ずつ増やすことで1秒相当の時間をカウントしています。
そして実行結果は下記のとおりです。
まとめ
本記事のおさらいです。
- キーの判定タイミングは「押下時、短押し時、長押し時」の3種類
- 押下時はキーを押したときを検出
- 短押し時はキーを押して話したときを検出
- 長押し時はキーを押してしばらく時間が経って離したときを検出
- 繰り返し処理で擬似的に時間をカウントできる
上記のとおりです。
他の使い方
他の使い方は下記の記事にまとめています。
それでは、F503iを楽しんでください(^_^)/~