
子供も大人もmicro:bit!基本の操作と初めてのプログラミング
こんにちは、ポキオ(@pokiiio)です。
今回は巷で人気なマイコンボードのmicro:bitをプログラミングをしてみようと思います。
「 えっ、プログラミングって難しいんでしょ? 」って思われるかも知れません。
プログラミングと聞くと、
- 必要なソフトのダウンロードが面倒
- ソフトやドライバーのインストールが面倒
- プログラミングの知識が必要そう
と想像してしまいがちですが、micro:bitなら簡単にできてしまうんです!
micro:bitの故郷であるイギリスでは、11歳・12歳の小学生に教育目的で無償で配布されていて、プログラミングの知識がなくても簡単に始められるマイコンボードになっています。
小学生だけでなく、普段プログラミングをしない大人でもハマること間違い無しのmicro:bitを、サクッと触ってみましょう!
micro:bitとは?

micro:bitはBBC(英国放送協会)が開発したシングルボードコンピュータで、日本国内でも2000円前後で購入可能です。お父さんのお小遣いでも買えそうですね!
教育目的と謳っていますが、侮ることなかれ。思った以上に高性能です。
- CPU:ARM Cortex-M0
- インターフェイス:Bluetooth Low Energy(BLE)、USB
- 入出力:3つのI/Oリング、20ピンのエッジコネクター、25個の赤色LED、2個のボタン
- センサー:光、温度、加速度、磁力
スマホなどにも採用されている、低消費電力な通信方式であるBLEに最初から対応しているので、スマホと通信したり、micro:bit同士で通信を行ったりということも可能です。
また、端子(I/Oリング)はミノムシクリップを挟んで通電できるようになっているので、半田ごて不要で電子工作が楽しめます。また、LEDはマトリックス上に配置されていて、それをつかって文字やマークを表示させることも可能です。
入出力も豊富で拡張性が高い上に、各種センサー類も最初からついているので、micro:bitを買えば色々楽しめてしまうのです!
micro:bitを触ってみよう!
micro:bitにはデフォルトでサンプルプログラムが入っています。まずはそれを実行してみましょう!
(モバイルバッテリーをUSB接続をしたり、別売りのバッテリーモジュールを使って給電をしたりする方法がありますが、今回はPCとUSB接続することでPCから給電してみます。)

サンプルプログラムでは、下記のように、ボタンを使ったり、マトリックスLEDを光らせたり、micro:bitを傾けたり、micro:bitの主な機能を試すことが出来ます。
- マトリックスLEDが点滅した後「HELLO」と表示される
- Aボタンを押すように促されるので、Aボタンを押す
- Bボタンも押すように促されるので、Bボタンを押す
- 「SHAKE!」micro:bitを振る
- 「CHASE THE DOT!」micro:bitを傾けて点滅するドットを追う
- 「NOW GET CODING!」と表示されてチュートリアル終了
このサンプルプログラムですが、このページからダウンロード可能なので、いつでもMiro:bitを初期化することができます。
micro:bitのプログラミングをしてみよう!
次に、実際にプログラミングして、micro:bitを動かしてみます!
micro:bitのプログラミング方法は主に3つです。
- JavaScript Block Editor
- Python Editor
- スマホアプリ
今回は、環境構築不要で、ブラウザだけで簡単にプログラミングができる、JavaScript Block Editor を使ってみようと思います。
エディターを開いてみる
一般的なエディターは、ソフトをダウンロードして必要なものをインストールするなど、準備に時間がかかることがありますが、 JavaScript Block Editor はウェブブラウザでサイトにアクセスするだけでプログラミングが開始できます!
実際にアクセスして、エディターを開いてみましょう。

このサイトにアクセスすると、すぐに準備が完了します。
エディターは大きく3つのパートに分かれています。

まず、一番左側にあるのがエミュレーターです。エディターでプログラミングをすると、このエミュレーターで自動的にプログラムが実行され、プログラムの動作イメージを確認することができます。
LEDの光らせ方の確認はもちろん、マウスでエミュレーターをドラッグすると傾きを変えられたり、音を出すプログラムを書いたときは、その音の確認もエディター上で可能です。

次に、エディター中央にあるのがブロックの一覧です。誰でもプログラミングができるように、Micro:bitに命令ができる処理の塊が、ブロックという単位で表現されています。これらのブロックをつなげることで、シンプルなものから複雑なものまで、知識不要でプログラミングができるエディターなのです。

エディターの右側にあるエリアは、そのブロックを配置してプログラミングする場所です。初めから存在する 「最初だけ」 と 「ずっと」 というブロックに、他のブロックをつなげていくことでプログラミングができます。
この 「最初だけ」 は、一度だけ実行させたいブロックをつなげていき、 「ずっと」 は繰り返し実行させたいブロックをつなげます。
エディターでプログラミングしてみよう
それでは、簡単なプログラミングをしてみましょう。micro:bitのLEDにハートマークを表示させてみましょう。
まずエディターのメニューの[基本]から[アイコンを表示]というブロックを探します。
このブロックをプログラミングエリアの 「最初だけ」 のブロックにドラッグ・アンド・ドロップして、ブロックとブロックをつなげます。

アイコンを表示するという処理を、micro:bit起動時に一度だけ実行します。これにより、好きなアイコンをmicro:bitで表示できます。

ブロック同士が正しくつながると、エミュレーター上でハートマークが表示されているはずです。
デフォルトのアイコンはハートマークになっていますが、[アイコンを表示]のブロックのプルダウンメニューを開くと様々なアイコンを選択でき、それを表示することもできます。
プログラミングはこれで終了です。
作成したプログラムをmicro:bitで動かしてみよう
エディター下部の 「題名未設定」 と書かれているところに、プログラム名を自由に入力し、[ダウンロード]をクリックします。

すると、拡張子が.hexなファイルが自動でダウンロードされます。ファイル名には、さきほどのプログラム名が含まれます。このファイルをmicro:bitに転送します。

micro:bitをパソコンとUSB接続すると、 MICROBIT というドライブとして認識されます。ダウンロードしてきた.hexファイルを、このドライブ直下にコピーすることでプログラムの書き込みが行えます。

書き込みが完了すると、自動でmicro:bitが再起動します。すると、ハートマークを表示するプログラムが実行されます。
今回紹介したのはブロックを積み重ねることによってプログラムする方法でしたが、それをJavaScriptコードと相互変換したり、最初からJavaScriptやPythonを使ってプログラミングすることも可能です。
自分のレベルに応じたプログラミング方法も選べるのも、micro:bitの魅力の一つです。
まとめ
今回は、簡単なプログラムの作成と実行をしてみました。
micro:bitには、LED以外にボタンや種々のセンサー、またGPIOもあります。それらを使えば、「ボタンを押すとLEDで表示させているマークを変える」「micro:bitを振ったら文字を表示する」などの、すこし凝ったプログラミングも可能です。
また、スピーカーを端子に接続して音を鳴らしたり、モーターとモータードライバーを接続してラジコンを作ることだって可能で、無限の楽しみ方ができます。
次回はmicro:bitにスピーカーを接続して、音を鳴らしてみましょう!