Takunojiのプログラミング・プレイグラウンド(遊び場)

Javaプログラミングを基本にして、ゲーム作成に必要なことの調査結果、やったら面白そうなことなどを記載します。プログラミングのススメ的なことも記載します。プログラミングで楽しく遊ぶために色々と記載して行きます。

Microbit カウンターを作る〜リズムを取りたいが、カウンターになってしまった〜

よく、バンドなどで「ワン・ツー。。。ワン・ツー・スリー・For!」とカウントを取ると思います。このときに、このカウントのスピードでハートをドキドキさせようとやってみました、

ちょっとうまく行かない

Microbitで、カウントをとったときにそのスピードでリズムを刻む様に作成したいと思い、作成に着手してみたものの。。。ちょっと難しい。。。

何が難しいのか?というのは理論的に(「〜を〜してやれば良い」という考え)は間違っていないと思うけど、想定通りに動かないというところ。

結局、動かないということは間違っているのであろう。作成しているプロジェクトはこちらです。

f:id:Takunoji:20190929223004p:plain

全体のコード

このコードで、マイクロビットにデプロイして動かしてみたところ、テンポを取るのにハートをドキドキさせているのですが、ドキドキのスピードがあまり変わらない現象が起きています。

表示スピードの問題なのでしょうか?

これは、正直のところ値が想定通りか確かめる必要があります。

なのでコードを修正して、デバックしようと思います。

現状のコードは長いですが。。。

f:id:Takunoji:20191001203625p:plain

コード1

f:id:Takunoji:20191001203758p:plain

コード2

f:id:Takunoji:20191001203813p:plain

コード3

デバック方法としては、このコードのWhileに入る前にrithmの値を表示して確認することです。

それではやってみます、デバック用のコードを追加してやります。

f:id:Takunoji:20191001204115p:plain

デバックコード

やってみたところ、数字の表示が流れるため読み取れず。。。

仕方ないので、点滅させる方向で実装してみました。

 

正確なところはわからない、確実にテンポ「♩=XXX」の様にはわからないがそれっぽい感じではあります。やはり。。。


表示方法を変える

この方法でやることにします、現在、ハートをドキドキさせてテンポを刻んでいますがこれを下の様な形に変更します。

<表示方法を変える>

今回は、マイクロビットの「MakeCode」から実行してみようと思います。

そのために、「6G」(衝撃を与える)から「shake」(振る)に変更して動かします。

 変更したところ

ハートをドキドキさせているところを時計の針の様に動かすことにしました。

単純に点灯させるLEDの数が少ないので処理のスピードに影響が出ないであろうと考えました。

実行結果