早前接觸過樹莓派液荸,覺得貴瞻佛;
后來接觸便宜的Arduino(uno),不太喜歡它的IDE娇钱,也不習(xí)慣c++的編寫方式伤柄;
企圖入坑香橙派(Orange Pi),但對可找到的文檔數(shù)量擔(dān)憂文搂,最終沒敢試坑适刀;
最近才知道有esp32,便宜煤蹭,性能高笔喉,可以刷micropython,完美的一次滿足我3個愿望硝皂!
esp32簡介
esp32是一款流行的支持WiFi和藍(lán)牙的系統(tǒng)芯片(SoC)常挚,簡單說就是一臺帶藍(lán)牙,wifi的微型電腦稽物,多用于物聯(lián)網(wǎng)(IoT)領(lǐng)域奄毡。它可以刷Arduino系統(tǒng),還能刷micropython贝或。
話說~有micropython還要啥自行車吼过?
以下調(diào)試環(huán)境在Win10(64位)完成。
一咪奖、安裝刷機環(huán)境
1盗忱、安裝本地python環(huán)境
選擇簡單快捷的miniconda,下載地址:
https://docs.conda.io/en/latest/miniconda.html
2羊赵、安裝刷機工具esptool
該工具基于python運行趟佃,用于編輯esp32的固件,安裝命令:
pip install esptool
3昧捷、安裝傳輸工具adafruit-ampy
該工具基于python運行闲昭,用于往esp32上傳、下載文件料身,安裝命令:
pip install adafruit-ampy
4汤纸、安裝PuTTY客戶端
用于通過串口通信連接到esp32上,在上面執(zhí)行操作命令芹血,下載地址:
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
5贮泞、下載esp32適用的micropython固件版本(.bin文件)
下載地址:
http://www.micropython.org/download/esp32/
搞不懂為什么esp32的micropython固件還分idf3和idf4楞慈,但官方說了:搞不懂就選idf3。
二啃擦、清除esp32原固件
1囊蓝、USB線連接esp32和Windows10,Windows10會自動完成驅(qū)動安裝令蛉。
2聚霜、鼠標(biāo)移動到開始菜單,點右鍵珠叔,在彈出菜單中選擇設(shè)備管理器
蝎宇,在設(shè)備管理器窗口找到端口(COM和LPS)
,找到剛才裝好驅(qū)動的設(shè)備祷安,記下設(shè)備名最末的COM口編號姥芥,比如我的是COM4
,如圖:
3汇鞭、清除esp32原有的固件凉唐,執(zhí)行命令
esptool --chip esp32 --port COM4 erase_flash
其中,COM4換成你的端口號霍骄。
三台囱、寫入micropython固件
執(zhí)行命令:
esptool --chip esp32 --port COM4 --baud 115200 write_flash -z 0x1000 c:\esp32-idf3-20191220-v1.12.bin
其中,COM4換成你的端口號;c:\esp32-idf3-20191220-v1.12.bin是下載的固件文件,換成你的固件文件路徑。
如果發(fā)現(xiàn)寫入時界面卡在Connecting,甚至最后報time out錯誤鸯隅,則需要在Connecting出現(xiàn)時點擊一下esp32面板上的boot按鈕,即可順利寫入羡榴。
完成這一步后狠怨,mircopython已經(jīng)寫入成功。
四喻喳、管理esp32
1另玖、使用PuTTY連接到esp32進行操作
運行PuTTY,Category選中Session表伦,右側(cè)的界面中:
- Connection type選擇:Serial
- Serial line輸入:你的端口號
- Speed輸入:115200
一切就緒谦去,點擊Open按鈕,即連接進入esp32蹦哼。
看到如下界面鳄哭,即表示成功連接esp32了,是你熟悉的python命令行環(huán)境纲熏。
看看里面有什么文件妆丘,在PuTTY執(zhí)行命令:
import os
os.listdir()
看到只有一個文件 boot.py锄俄,這個py文件會在esp32通電后自動執(zhí)行,所以它是esp32的啟動程序入口勺拣,你可以編輯該文件達到通電后自動執(zhí)行程序的目的奶赠。
2、使用adafruit-ampy上傳药有、下載文件
在此之前需要先退出PuTTY毅戈,因為PuTTY占用了esp32端口的情況下,ampy無法使用該端口傳輸文件愤惰。
上傳文件命令苇经,例如上傳本地當(dāng)前目錄下的foo.txt到esp32的根目錄:
ampy --port COM4 put foo.txt
下載文件命令,例如下載esp32根目錄下的esp32file.txt到本地當(dāng)前目錄下的foo.txt:
ampy --port COM4 get esp32file.txt foo.txt
刪除文件命令宦言,例如刪除esp32根目錄下的foo.txt文件:
ampy --port COM4 rm foo.txt
其中塑陵,COM4換成你的端口號。ampy更多上傳蜡励、下載命令格式可以用--help參數(shù)查看:
ampy --port COM4 put --help
ampy --port COM4 get --help
3令花、其他常用操作
重啟設(shè)備可以按esp32板子上的RST
按鈕;
在PuTTY中:
如果要終止當(dāng)前python程序凉倚,可以按鍵Ctrl+C
兼都;
如果要重啟設(shè)備,可以按鍵Ctrl+D
稽寒;