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

用MicroPython開發ESP32-固件燒寫與測試

編輯:Python

陳拓 2022/06/10-2022/06/11

1. 簡介

用micropython進行ESP32開發。

進行ESP32開發,官方的標准開發環境是ESP-IDF,開發語言使用C語言。但無論ESP-IDF還是C語言對於新手來說都太難了。micropython的出現使得我們可以用Python語言操作ESP32,這樣那些非專業的EP32的愛好者甚至及少年兒童都可以通過micropython來體驗ESP32的開發,並從中找到樂趣。

MicroPython是Python 3編程語言的一種精簡高效的實現,它包括Python標准庫的一小部分,並經過優化,可以在微控制器和受限環境中運行。

MicroPython的目標是盡可能與普通Python兼容,以允許您輕松地將代碼從桌面傳輸到ESP32這樣的微控制器或嵌入式系統。

想在ESP32上運行micropython其實很簡單,只需跟隨我們做即可,以下的操作在Win10下進行。

2. 下載用於ESP32的micropython二進制文件

  • micropython官方網址

https://micropython.org/

 

  • DOWNLOAD

 

我們可以看到micropython可以用於很多種硬件設備,我們選擇ESP32。

  • 選擇ESP32

 

這樣的開發板在網上很容易買到,搜索esp32開發板就可以找到很多,價格也只需要10多元。

  • 下載用於ESP32的二進制bin文件

 

選擇最新的穩定版下載:

esp32-20220117-v1.18.bin

  • 安裝運行micropython

在ESP32上安裝運行micropython需要借助軟件工具,可用的工具有多種,我們使用flash_download_tool。

  • 下載Windows的Flash燒寫工具

從官方網站下載:

https://www.espressif.com/zh-hans/support/download/other-tools?keys=&field_type_tid%5B%5D=14

 

點擊下載:

flash_download_tool_3.9.2_0.zip

或者從百度網盤下載:

鏈接:https://pan.baidu.com/s/1QXssXcSlOf8wXI69NOeTRQ?pwd=k2ky

提取碼:k2ky

  • 解壓

 

  • 雙擊flash_download_tool_3.9.2.exe運行

 

選擇ESP32的develop開發者模式,OK

  • 用USB轉串口線連接PC和ESP32開發板

從設備管理器中查看USB-SERIAL的串口號,我這裡是COM3。

 

記住串口號。

  • 按下圖設置

 

  • 燒寫固件

點擊STOP,再點擊START:

 

等待下載完成…

  • 下載完成

 

4. 程序運行測試

用串口調試助手與ESP32交互,並查看程序運行結果。

  • 安裝串口調試助手

微軟串口調試助手的安裝使用請看《Win10使用CH340 USB-SERIAL串口》

https://zhuanlan.zhihu.com/p/343013801

https://blog.csdn.net/chentuo2000/article/details/112323488

  • 按開發板的RST鍵。

串口顯示:

 

至此就可以使用python操作硬件了。

5. 交互操作

  • 尋求幫助

按照提示輸入:

 

注意,help()後面要有回車。

點擊發送按鈕:

 

串口終端會顯示一些說明。

 

以及基本的Wifi配置

 

  • 交互命令hello world

輸入:

print ('hello world')

發送,串口響應:

 

  • 點亮一盞燈

開發板上有一個藍色的LED燈接在引腳2上。

按照help()的提示輸入命令:

import machine

pin2 = machine.Pin(2, machine.Pin.OUT)

pin2.value(1)

發送,你可以看到藍色的LED燈亮了:

 

輸入命令pin2.value(0)可以關閉藍色的LED燈。

  • micropython模塊

micropython控制ESP32硬件需要驅動模塊的支持。在上面的命令中machine是micropython的外部設備驅動模塊,包括pin,i2c,spi,uart,adc,dac,pwm等。除了machine模塊還有網絡模塊network,以及esp32等等其他模塊。可以用命令help ('modules')查看模塊列表:

 

要查看某個模塊的功能也可以用help命令,例如查看前面我們用過的模塊machine可以用命令help(‘machine’)

 

更多的功能請參考micropython的官方文檔。

  • 官方文檔

https://docs.micropython.org/en/latest/esp32/quickref.html

參考文檔

  1. 在ESP32上運行micropython
    https://zhuanlan.zhihu.com/p/124059889
  2. ESP32 MicroPython開發之旅 基礎篇① ——搭建環境,運行Helloworld
    https://blog.csdn.net/weixin_44614230/article/details/121641451?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7EPayColumn-1-121641451-blog-105306366.pc_relevant_blogantidownloadv1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7EPayColumn-1-121641451-blog-105306366.pc_relevant_blogantidownloadv1&utm_relevant_index=1


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