マイクロビット内蔵の「5 x 5 LEDマトリクス」では、数字は1桁しか表示できません。
マイクロビットでゲームなどのプログラムをつくり、点数として2桁の数字を表示したいとき、私はよく「WhaleySans Font」という拡張機能を使いますが、それでも表示できるのは2桁まで、しかもその数字はやや見にくいものです。
先日、マイクロビットでゲーム用プログラムをつくっていて、点数をもっと見やすく表示したいと思う機会がありました。
これまでも同じように不満に思うことは多かったため、今回、外付けの「7セグメントLEDモジュール」を使ってみることにしました。
購入したのはこちらの7セグLEDモジュールです。
1個あたり200円ちょっとと非常に安価で、お気軽に使えそうです。
今回は「モータードライバー拡張ボード(KS4033)」を使って、マイクロビットに7セグLEDモジュールをつなぐことにします。
実は今回の用途では、7セグLEDモジュールの他にも多数の外付け部品をマイクロビットにつなごうと思っています。
もう未利用の入出力端子が残っていないので、今回はマイクロビットの5 x 5 LEDマトリクスは使わないこととし、LEDマトリクス用の端子に7セグLEDモジュールをつなぐことにします。
5 x 5 LEDマトリクス用として使われている入出力端子は「P3」「P4」「P6」「P7」「P9」「P10」です。今回はこのうち「P3」「P4」を使うことにします。
以下のように接続します。
7セグLEDモジュール | モータードライバー拡張ボード(KS4033) |
---|---|
GND | G |
VCC | 3V |
DIO | P4 |
CLK | P3 |

以下のような簡単なプログラムをつくります。

「Grove」拡張機能を使います。中にある「変数 4digit を[Grove – 4桁ディスプレイ] 端子 P3 と P4 にする」ブロックで7セグLEDモジュールの接続先を定義し、「4digit [Grove – 4桁ディスプレイ」XXXX を表示する」で数字を表示します。

なお、「モータードライバー拡張ボード(KS4033)」には、電源端子として「3V」と「5V」の2系統があります。
7セグLEDモジュールに供給する電源を3Vから5Vに変更しても、問題なく点灯しました。


今回の「モータードライバー拡張ボード(KS4033)」を使う場合、電源として5Vを使う方がケーブルの接続先が同じところにまとまり、工作の出来がスッキリしそうです。
今回つくろうと思っているゲームでは、フォトインタラプタにハネを取り付け、ハネが回転すると点数が増えるようなものをつくろうとしています(関連記事は こちら)。
フォトインタラプタも組み合わせたプログラムをつくりました。

ハネを回すと7セグLEDモジュールに表示されている数字もどんどん増えていきます。

いかにもゲームっぽく、いい感じに表示させることができました。
なお、私がマイクロビットの使い方を習得するのにあたっては、以下の書籍を参考にさせていただきました。
初心者向けから、比較的高度なものまで、さまざまな情報が記載されているだけでなく、子供向けの作例も多数掲載されていますので、「プログラミング教育」のための題材さがしなどにもおすすめです。