R1.11.17 マイクロビットとArduinoIDE

 マイクロビットのプログラミング開発にはいろんなプラットフォームがあるのだけれど、主に使っているのはブロックエディタだ。簡単だし。ただ、便利なツールがあるので使うことがあるのはArduinoIDE。他にもMuなんてのもPCにはインストールしているが、前2者が多い。

 プログラミングする上では当然デバッグする必要があるのだが、プログラミングの結果を見る上ではマイクロビットの5×5のLED画面では役に立たない。そこで有用なのがOLED液晶だ。あまりたくさんの表示はできないものの、結果を見ることができる。思う通りにプログラミングが進んでいるか確認できるわけだ。OLED液晶のコントローラがSSD1306であれば、ブロックエディタでも使える。拡張機能をダウンロードできるからだ。また、ブロックエディタではソフトウェアシリアルが使えるので、ブロックエディタでプログラミングしながら、ArduinoIDEを立ち上げておき、そのシリアルモニタにシリアルデータとしてプログラミングの途中データを表示させ、うまくいっているか確認することもできる。マイクロビットでGPSユニットを使った時にはこれを活用した。PCとの連携にシリアル通信。GPSユニットからのやり取りにシリアル通信、というわけだ。マイクロビットでは、シリアル通信に使うことができる端子が、USBでつながるTXとRX以外に9本あるのだ。

 しかし、この2つのプラットフォームにはそれぞれ長短があり、どちらか一方に重きを置くことはできないのだった。

 種類が多いOLED液晶だが、ブロックエディタではSSD1306というコントローラを使っているものしか使えない、今のところ。ところが、ArduinoIDEではu8g2というライブラリを使えばほとんどのコントローラをカバーしてくれる。

 どちらでも不便はないのだが、GPSユニットをマイクロビットで使い、そのデータをマイクロビットで表示するときに困るのだった。ArduinoIDEでは、Arduinoで使えるsoftwareserialが、マイクロビットではエラーになる。ネットで調べてみると、「できる」ということで方途が記載されていた記事があったが、私には実現できなかった、今のところ。従って、止まっている。残念。