2016年5月9日月曜日

BBC micro:bitのMicroPythonをnRF51822で使う(オンライン編)

*** 注意:メモリ不足によりBLEは使えません ***
https://microbit-micropython.readthedocs.io/en/latest/ble.html

実行したいプログラムをBBC micro:bitのMicroPython new projectで入力します。
Hello,World表示、LEDチカチカなら次のようなプログラムになります。


Downloadボタンを押すとバイナリファイル(拡張子HEX)をダウンロードしますのでnRF51822に書込みます。
mbed HRM1017のようなマイコンならドラッグアンドドロップで簡単に書込みが出来るでしょう。

USBシリアル変換をP0.24(送信),P0.25(受信)に繋ぎます。ボーレートは115200bpsに設定します。
例えば、トラ技ライタの場合は次のようになります。
TG-LPC11U35-501nRF51822
p10(P0_18)TGT_TX(P0.24)
p9(P0_19)TGT_RX(P0.25)

nRF51822をリセットするとプログラミングが実行されます。
終了するプログラムなら対話モードに移行します。
無限ループに入っていても、CTRL-Cでプログラムを強制停止させて対話モードに移行できます。
CTRL-Dでプログラムを再実行できます。

micro:bitのようにLEDマトリックスを持っているのであればmicrobit.displayモジュールが使えます。

ドキュメント
https://microbit-micropython.readthedocs.org

ドキュメントに載っているpin0,pin1,pin2等はmicro:bitでの端子名P0,P1,P2等であって、nRF51822のピン名称ではないのに注意。
対応は次のようになります。
MicroPython(micro:bit)nRF51822
pin0 PAD1P0.3
pin1 PAD2P0.2
pin2 PAD3P0.1
pin3 COL1P0.4
pin4 BTN_AP0.17
pin5 COL2P0.5
pin6 ROW2P0.14
pin7 ROW1P0.13
pin8 PIN18P0.18
pin9 ROW3P0.15
pin10 COL3P0.6
pin11 BTN_BP0.26
pin12 PIN20P0.20
pin13 SCKP0.23
pin14 MISOP0.22
pin15 MOSIP0.21
pin16 PIN16P0.16
pin19 SCLP0.0
pin20 SDAP0.30
microbit-dal/inc/core/MicroBitComponent.h
bbcmicrobit/micropython
https://github.com/bbcmicrobit/micropython

(2016/5/9)
---


0 件のコメント: