程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

用MicroPython開發ESP32- 用Thonny寫程序

編輯:Python

陳拓 2022/06/11-2022/06/12

1. 簡介

在《用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開發。

2. 連接PC和ESP32開發板

用USB轉串口線連接PC和ESP32開發板,查看端口號:

 

串口端口號是COM3。

3. 下載安裝設置Thonny

  • Thonny的官方網址

https://thonny.org/

 

  • 下載

我們在Win10系統下開發,選擇Windows:

 

當前版本是3.3.13。

  • 安裝

雙擊thonny-3.3.13.exe

一路默認安裝。

  • 設置語言

運行Thonny,選擇語言

 

我們選擇簡體中文。

Let’s go!

進入Thonny界面

 

  • 設置MicroPython解碼器和串口端口

Thonny支持多種芯片我們選擇ESP32。

工具 > 設置 > 解碼器

選擇MicroPython(ESP32),並選擇串口端口號:

 

確認

Shell窗口的響應:

 

至此Thonny就安裝設置晚了。

4. 測試

Shell窗口是用來進行人機交互的,我們可用在這裡輸入命令,控制ESP32。

  • 命令交互

輸入命令print('Hello World'),回車:

 

ESP32響應Hello World

  • 點亮板載LED

開發板上有一個藍色的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兩端的電壓消失了,這時燈就熄滅了,

5. 寫py程序文件

命令交互方式只能做一些簡單的操作,對於復制的編程工作我們需要編寫Python程序。

計算機語言分為編譯型語言和解釋型語言。編譯型語言常見的有C、C++,解釋型語言常見的有Java、Python。

解釋型語言所寫的程序通常稱為腳本程序,所以Python程序稱為Python腳本程序。Python腳本程序文件的擴展名是.py。

5.1 第一個Python腳本程序

我們把點亮和關閉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,以後就可以多次運行了

5.2 程序復用

保存的程序文件可以反復使用。

下次開機從菜單選擇:文件 > 打開

 

選擇MicroPython設備:

 

確認,就可以再次打開文件led_on_off.py。

 

6. 讓程序在ESP32上電時自動運行

上面程序是在開發環境的控制下運行的,作為一個產品程序需要脫離開發環境,上電自動運行。

做的這一點很簡單,我們只要將程序名led_on_off.py改為main.py就可以了。

main.py是用戶程序運行的起點,上電時系統會自動找到main.py,並加載運行。

  • 將led_on_off.py另存為main.py

文件 > 另存為

 

選擇MicroPython設備:

 

確認。

現在按開發板上的RST鍵,或者重新上電,程序就會自動運行了。

  • 刪除led_on_off.py

在上面的窗口中右擊led_on_off.py

 

再點擊刪除就可以了。


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved