陳拓 2022/06/11-2022/06/12
在《用MicroPython開發ESP32-固件燒寫與測試》
https://zhuanlan.zhihu.com/p/527291091
https://blog.csdn.net/chentuo2000/article/details/125231902?spm=1001.2014.3001.5501
一文中我們已經在ESP32上燒寫好了MicroPython固件,並且在串口調試助手的幫助下用命令做了一些簡單的測試,如果要進一步使用MicroPython進行ESP32開發還需要一個方便的開發工具。
Thonny是適合初學者的Python IDE (Python 集成開發工具)編程工具。
下面我們講述用micropython + Thonny進行ESP32開發。
用USB轉串口線連接PC和ESP32開發板,查看端口號:
串口端口號是COM3。
https://thonny.org/
我們在Win10系統下開發,選擇Windows:
當前版本是3.3.13。
雙擊thonny-3.3.13.exe
一路默認安裝。
運行Thonny,選擇語言
我們選擇簡體中文。
Let’s go!
進入Thonny界面
Thonny支持多種芯片我們選擇ESP32。
工具 > 設置 > 解碼器
選擇MicroPython(ESP32),並選擇串口端口號:
確認
Shell窗口的響應:
至此Thonny就安裝設置晚了。
Shell窗口是用來進行人機交互的,我們可用在這裡輸入命令,控制ESP32。
輸入命令print('Hello World'),回車:
ESP32響應Hello World
開發板上有一個藍色的LED燈接在引腳2上。
輸入命令:
import machine #導入machine模塊
pin2 = machine.Pin(2, machine.Pin.OUT) #用machine模塊的pin功能設置引腳2為輸出。
pin2.value(1) #將引腳2設置為高電平
你可以看到藍色的LED燈亮了。
輸入命令:
pin2.value(0) #將引腳2設置為低電平
可以關閉藍色的LED燈。
說明:
1) 在Python語法中#符號是注釋符,用來說明程序的功能,#號後面的部分是不執行的。
2) 高電平,低電平。在數字邏輯電路中,低電平表示0,高電平表示1。當引腳輸出高電平時,引腳上的電壓為芯片的供電電壓,這時就在LED兩端加上了電壓,LED有電流流過,燈就亮了;當引腳輸出低電平時,引腳上的電壓0,加在LED兩端的電壓消失了,這時燈就熄滅了,
命令交互方式只能做一些簡單的操作,對於復制的編程工作我們需要編寫Python程序。
計算機語言分為編譯型語言和解釋型語言。編譯型語言常見的有C、C++,解釋型語言常見的有Java、Python。
解釋型語言所寫的程序通常稱為腳本程序,所以Python程序稱為Python腳本程序。Python腳本程序文件的擴展名是.py。
我們把點亮和關閉LED燈的命令轉換成py程序文件。
在Shell命令窗口的上面是程序編輯窗口,我們在這裡寫Python腳本程序。
我們寫入下面的程序:
import machine
import utime
pin2 = machine.Pin(2, machine.Pin.OUT)
pin2.value(1)
utime.sleep(3)
pin2.value(0)
和命令方式不同的是我們加入了延時,延時功能在模塊utime中,要使用延時功能,先要導入utime模塊import utime
utime.sleep(3)表示延時3秒。
點擊運行按鈕,彈出程序保存位置窗口:
選擇將程序保存到MicroPython設備。
已經有一個程序boot.py,這是前面燒寫進去的系統系統啟動程序。
給我們的程序取個名字led_on_off.py。
確認。
可以看到LED燈點亮3秒鐘後自動熄滅。
在Shell窗口有程序運行的提示
因為程序已經寫入ESP32,以後就可以多次運行了
保存的程序文件可以反復使用。
下次開機從菜單選擇:文件 > 打開
選擇MicroPython設備:
確認,就可以再次打開文件led_on_off.py。
上面程序是在開發環境的控制下運行的,作為一個產品程序需要脫離開發環境,上電自動運行。
做的這一點很簡單,我們只要將程序名led_on_off.py改為main.py就可以了。
main.py是用戶程序運行的起點,上電時系統會自動找到main.py,並加載運行。
文件 > 另存為
選擇MicroPython設備:
確認。
現在按開發板上的RST鍵,或者重新上電,程序就會自動運行了。
在上面的窗口中右擊led_on_off.py
再點擊刪除就可以了。