stm32f4 discoveryでMicroPython

ほんと、思い出したようにstm32F4 discoveryをいじっているので、いろいろ忘れている。
ブートローダーのコントロールのために、以前SB19をオープンにしていたので、BOOT1がHになっている。
そのため、DFUモードにするためには、P2のBOOT0を隣のVDDとショートさせてHにするだけでなく、P1のPB2(BOOT1)も隣のGNDとショートして、Lにしておく必要がある。
STのウエブから、DfuSe_Demo_V3.0.6_Setup.exeをダウンロードして、windows 7パソコンにインストール。
https://micropython.org/downloadから、STM32F4 discovery用のバイナリSTM32F4DISC-20181107-v1.9.4-683-gd94aa577a.dfuをダウンロード。
ボードをDFUモードにしたら、CN5(通信)、CN1(電源)の順にパソコンにUSB接続。
パソコンでDfuSeDemoを起動し、Upgrade or Verify ActionのChooseでdfuファイルを選択し、Upgrade。
2か所のジャンパーピンをはずし、電源を再投入。
Pybflashのドライブがマウントされる。
デバイスマネジャーで確認すると、Pyboard Virtual Comm Port in FS modeが追加されているので、ドライバを更新で、pybflashを参照してドライバをインストールすると、pyboard USB Comm Portが追加される。
あとは、9600bps, data bit 8, parity none, stop bit 1, flow control noのシリアル接続。
teratermでもよいが、いつものrloginなら、新規設定でエントリを入力、プロトコルでcomを選択。comボタンを押して、条件を選択するとServer Addressに表示される。
>>> pyb.Switch().callbacl(lambda:pyb.LED(2).toggle())
ユーザボタンを押すとLチカができる。
>>> help()
>>> help(‘modules’)
>>> import os
>>> help(os)
>>> os.listdir()
USBドライブに仮想シリアルまでついているなんて、すごすぎる。
boot.pyで、machineとpybはインポート済み。
これで遊べそうだが、まずは、MicroPythonの勉強だ。
ボードは違うが、以下のサイトが日本語でわかりやすそう。
https://microbit-micropython.readthedocs.io/ja/latest/index.html

コメント