見出し画像

micro:bitでフリフリ計測ゲームをつくってみる①タイマー機能編

こんにちは。E研究員です。
こちらの記事でも紹介しましたが、micro:bit で「決まった時間の中で振った回数を競うゲーム」を作ってみます。
(久しぶりのmicro:bit プログラミング記事です)

イメージとしては

・ボタンAを押すとゲームスタート(時間計測スタート)
・micro:bit を振ると、振った回数が表示される(振るほど数字が増え続ける)
・ゲームスタートから20秒経ったらゲーム終了。それ以上振っても数字が増えない
・ボタンBを押すとリセット

というようなものを作ろうと思います。

ここで重要なのは、「時間を計測する」「決まった時間が経ったらゲームを終了する」機能です。

調べてみると、micro:bit は電源を投入してからの時間を内部でカウントしているようです。
こちら と こちらのwebサイトを参考にしました。

今回は「回数」「フラグ」「開始時間」という3つの変数を作ります。
【ボタンAが押されたとき、変数「開始時間」を「稼働時間(ミリ秒)」にする】
という記述をつくることで、ボタンAを押した瞬間の時間を記録します。

「稼働時間(ミリ秒)」というのは、電源を入れてからの時間をずっと計測している値のため、電源を入れている間は増え続けています。

そのため、「稼働時間(ミリ秒)」「開始時間」(=ボタンAを押した時間)の差が20000ミリ秒(=20秒)になったかどうかを判断すれば、ボタンAを押してから20秒を過ぎたかどうかを判断できます。

今回は時間を計測する方法について説明しました。後日、振った回数を数えて表示する方法や、プログラム全体を作っていきます。

また、CoderDojo 港北ニュータウン第1回 イベントの参加者を絶賛募集中です。
ぜひお気軽にご参加ください。それでは。



無料のプログラミングクラブCoderDojoを運営するにあたり寄付を受け付けています。お金は会場費・Wifiの費用・教科書に使用します。