【小学8年生|F503i】キー入力の使い方【押下、短押し、長押し】

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

前回は「F503i」のキー入力の基本的な使い方に関して解説しました。今回はプチ応用編としキー(ボタン)全般の使い方と考え方を解説します。

本記事の内容
  • 【小学8年生|F503i】キー入力の使い方【押下、短押し、長押し】

世の中にあるキー(ボタン)には押し方が3種類あります。それぞれの違いと仕組みを解説しつつ、そのプログラミング方法を解説します。

スポンサーリンク

【小学8年生|F503i】キー入力の使い方【ボタンを押す】

F503iには数字キー0~9と記号キー*、#の全12キーがあります。押したら自動で戻るタイプのボタンです。

キー検出タイミング

まず、キー(ボタン)が押されたことを検出するタイミングについて解説します。これはF503iに限った話ではなく、世の中にあるキー全般の話です。

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

  • 押下おうか:キーを押したとき
  • 短押したんおし:キーを押して離したとき
  • 長押しながおし:キーを押してしばらく時間が経って離したとき
普段は全然意識しないと思いますが、よく観察すると結構違いがあるんですよ。

F503iはキーが押されたら1になるので、押下時が当てはまります。

この理屈がわかると押下時と長押し時は両立できないことがわかります。普段の生活の中でこういうことを観察しながらキーを押してみると面白いですよ。

3種類のキー入力を使ってできること

3種類のキー入力を使うと下記のようなことができます。

  • 押下時:キーを押したら音を鳴らす
  • 短押し時:キーを押すたびにLEDを点けたり消したりする
  • 長押し時:キーを長押しするとLEDが消える

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

「キー入力」の使い方例① ~押下時~

キーが押された瞬間に動き出すプログラム例です。

何も考えずにプログラミングするとこの動きになるはずです。

3キーが押されてない間は何もせず、3キーが押されたらLEDを3つとも点灯させます。(LEDの使い方はこちら)

実行結果は下記のとおりです。

この例は前回の記事でも書きましたが、3キーが押されたことを検知して動き出すプログラムなので「押下時」に当てはまります。

「キー入力」の使い方例② ~短押し時~

次はキーを押して離すことを検知するプログラム例です。

キーを押しっぱなしにするとプログラムは反応し続けるので、1度離さないと次の処理に進まないようにします。

6キーが押されるたびにログを表示し、6キーが押されてないならログを表示しないようにします。6キーを押しっぱなしの場合は最初の1回しか表示しないようにします。

実行結果は下記のとおりです。

if文で6キーが押されているかどうかを判定し、次のwait文で6キーが離されるまで待ちます。これで押し続ける場合に処理が継続しないようになっています。

「キー入力」の使い方例③ ~長押し時~

最後はキーを1秒以上押したら反応するプログラム例です。

なかなか良いやり方が見つからなかったので、複雑な処理になってしまいました。

これは0キーが押されたら変数を1ずつ増やしていき、変数の値が10を超えたらLEDを3つとも点灯させるプログラムです。1秒間をカウントする部分は変数を1ずつ増やすことで1秒相当の時間をカウントしています。

厳密には1秒にはなりませんので、擬似的に1秒の長押しを実現しています。

そして実行結果は下記のとおりです。

長押し時間を秒数で指定できないのでちょっとイマイチです。もっといい方法がないか考えてみてください。

まとめ

本記事のおさらいです。

  • キーの判定タイミングは「押下時、短押し時、長押し時」の3種類
  • 押下時はキーを押したときを検出
  • 短押し時はキーを押して話したときを検出
  • 長押し時はキーを押してしばらく時間が経って離したときを検出
  • 繰り返し処理で擬似的に時間をカウントできる

上記のとおりです。

他の使い方

他の使い方は下記の記事にまとめています。

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

created by Rinker
ノーブランド品
¥9,680 (2025/04/02 22:05:47時点 Amazon調べ-詳細)
created by Rinker
小学館
¥2,317 (2025/04/02 13:47:29時点 Amazon調べ-詳細)
タイトルとURLをコピーしました