{micro-flash} :: MicroPython/Python codes <=> .hex file ==>(flash) [BBC micro:bit]

動機:是否有離線指令可以將 micropython/python 程式直接燒寫至 BBC micro:bit 上呢?!

準備環境
1.BBC Micro:bit(需連接USB數據線)
2.Windows10/MacBook筆電
3.Python 2.7 or 3.3+(需先安裝)

實作步驟
1.安裝 uflash,如下指令
$ pip install uflash
如要更新,指令如下
$ pip install --no-cache --upgrade uflash

2.將 micro:bit 插入筆電USB埠,並確認 Device 有看到 MICROBIT

3.測試燒寫預設的 micropython.hex 檔案,指令如下
$ uflash

在Windows10筆電執行,如下圖

使用 Tera Term 測試REPL,如下圖
(可發現其 micropython version = MicroPython v1.7-9-gbe020eb)

從源碼 uflash.py 中,我擷取了 micropython.hex 檔案,如下
https://drive.google.com/file/d/1Fbjd4pqdtNdCSWy7TmpOIwZ5RE8dJcf9/view?usp=sharing

4.接著,寫一段測試程式碼並燒寫至 micro:bit,如下


指令如下(產生 micropython.hex 至 本機local)
$ uflash test.py .

指令如下(產生 micropython.hex 並直接燒寫至 MICROBIT)
uflash test.py

提取指令如下(從 micropython.hex 提取並顯示於終端機)
uflash -e micropython.hex

提取指令如下(從 micropython.hex 提取出 myscript.py)
uflash -e micropython.hex > myscript.py

執行畫面,如下圖

Tera Term執行畫面,如下圖
後記:有了 uflash 程式,就可以不用連線到 microbit 的 micropython網站,或是使用 Mu離線版軟體,直接使用文書編輯器(ex.Notepad++)編寫 micropython程式並產生 .hex檔案及燒寫flash至 MICROBIT...
十分適合習慣CLI模式的使用者...同時,也可以研究 uflash.py 的源碼...
真心感恩Nicholas Tollervey大神!!


參攷
1.ntoll/uflash, https://github.com/ntoll/uflash
2.Programming microbit using uflash on VPS, http://internetbasedhomemonitor.blogspot.tw/2017/11/programming-microbit-using-uflash-on-vps.html

留言