用MicroPython开发ESP32-固件烧写与测试

本文介绍如何使用MicroPython在ESP32上开发应用,包括固件烧写步骤、基本的程序测试方法以及如何控制硬件。
Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

陈拓 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. 下载用于ESP32micropython二进制文件

  • 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.youkuaiyun.com/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.youkuaiyun.com/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

您可能感兴趣的与本文相关的镜像

Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晨之清风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值