micro:bitのハードウェアのブロック図を描いてみた

microbit-block-diagram.png

micro:bitにはCPUが2つとセンサーとLEDが搭載されていますが、それぞれがどのようにつながっているのか一目で解る図が無かったので、作ってみました。(ちなみにこの図はdraw.ioで描いています。)

micro:bitの回路図はこちらに掲載されています。

bbcmicrobit/hardware: Hardware designs for the BBC micro:bit

ただ、これはちょっと見づらいので、以下に掲載されているリファレンスデザインの回路図を参考にしました。

microbit-foundation/microbit-reference-design: micro:bit Reference Design

メインのCPUはnRF51822のほうで、それに対してKL26Zはプログラマとして動作します。

nRF51822は5×5(内部的には3×9)のLED、I2C経由でセンサ2つに接続されており、KL26ZとUARTで通信できます。また、SPIが拡張コネクタに引き出されています。
拡張コネクタのピン配列は以下のページにあります。ただしP1, P2,…の番号はコネクタのピン番号で、nRF51822のポート番号ではありません。

Schematics

一方、KL26ZはUSBポートに対してmbedとして動作し、nRF51822をSWD(Serial Wire Debug)信号でプログラムします。KL26Zの信号線は拡張コネクタには接続されていません。
また、KL26ZはUARTでnRF51822と通信しますが、この通信はUSBポートのUSBシリアルインタフェースへそのまま受け渡されます。
詳細は以下のページに解説があります。

DAPLink and the USB Interface

micro:bitはターゲットCPUとプログラマCPUが同居しているという点ではArduino UNOに似ています。
また、プログラムの書き込み方法や、オンラインでプログラムをコンパイルできるという点はmbedの資産を活用しています。
Arduinoとmbedの良いとこ取りを狙った構成と言えそうです。

コメント