ESP32刷入MicroPython固件

背景介绍

乐鑫出品的ESP系列带WIFI功能的SoC有着强大的功能,近几年市场应用火爆。市面上能买到各种各样的模组或者开发板。无论是拿来做产品还是自己做点点玩意学习,都是不错的选择。

本人一直从事嵌入式方面的工作,相信和很多电子工程师一样。无论是MCU还是MPU(多跑嵌入式Linux操作系统),大多都使用C/C++编程。想要学学新编程语言,基本都得把平台搬到PC机或者卡片电脑(如RaspberryPi)上边了。

之前有使用ESP8266输入NodeMCU固件,在单片机上使用Lua语言开发让人眼前一亮(本文先不讲NodeMCU怎么玩,后续笔者会写一篇关于这块的博客,大家一起学习)。

老早就入手了几片ESP32的小开发板,之前一直都用跑C语言开发,随便玩玩。最近在网站瞎逛无意发现叫做MicroPython的组织。该组织的大神在CPython基础上衍生了专门运行于嵌入式平台的MicroPython。MicroPython官网笔者早就有学习Python语言的计划,结合实际工作,能跑嵌入式平台MicroPython的确适合不错的选择。特地做点笔记,写下此篇博客。

ESP32小板子介绍

笔者使用的ESP32开发板是随意淘宝过来的,不同的板子基本大同小异,可能最主要区别在于板载的晶振和SPI Flash区别,这个对于固件下载要选的参数有差异,后边的刷机章节会讲到。
在这里插入图片描述

MicroPython简介

这里主要以http://micropython.org/官网的介绍为主。
其他的介绍网上也很多介绍,笔者作为小白不过多班门弄斧。

下图就是官网首页的截图,主要分为 论坛、指南、快速参考、下载、应用商店和联系方式几个栏目。
DOCS: 挺重要,基本就代表着官方参考指南。可以收藏下,在实际开发查找功能模块很有用。
在这里插入图片描述
特别注意的是,出了乐鑫的ESP32之外,MicroPython官网也推出了PyBoard官方开发板。看介绍是基于STM32 M4或者M4平台的,有兴趣的朋友自行了解下。

获取ESP32的固件

在MicroPython官网首页,点击DOWNLOAD
目前MicroPython支持挺多种类的开发板。
出了能下载带编译好的固件,还能下载源码自行编译。
笔者使用的是ESP32,这里下载相应固件。如果要自己编译固件,需要先搭建ESP32开发环境,笔者日常使用的Ubuntu虚拟机作为开发使用,环境搭建并不难,有兴趣的朋友可以试着自己搭建。本文不作讲解。
在这里插入图片描述
在这里插入图片描述
ESP32模组有些是带有SPIRAM的,这里需要根据自己的板子下载,一般的使用Standard firmware即可

为ESP32刷入MicroPython固件

ESP32可直接在Linux下刷入固件,需要ESP_IDF带的工具esp_tool.py小工具。笔者习惯在Ubuntu虚拟机下编译程序,在Windows环境下编辑代码。这里就使用乐鑫官方的flash_download_tools,运行于Windows平台的固件烧录工具,当然该软件还有RF调试等功能。flash_download_tools下载链接
万事俱备,接下来就是烧录固件了。

配置

运行flash_download_tools_v3.6.7.exe,点击ESP32 DownloadTool,如下图。
在这里插入图片描述
说明:MicroPython固件是已经将Bootloader、APP、Partition合并成一个固件。在Flash中的偏移地址填入0x1000,晶振选择40M,笔者的小板子板载4MB Flash,相应勾选Flash Size。

下载

点击START,按下EN键重启,固件开始下载。。。
在这里插入图片描述

交互式脚本编程

脚本语言是动态语言,解释性语言,无需编译。我们烧录的固件,其实就是一个Python解释器+众多能直接使用的包、方法。

安装xshell

安装过程带过,网上都能收到安装包。
建立一个Serial会话:
在这里插入图片描述
按下板子的EN键,复位。打印一下Log,成功运行MicroPython。
在这里插入图片描述
来一个Hello World
在这里插入图片描述
ESP32刷入MicroPython就到这里。后续更新固件中自带包的使用,开启嵌入式平台跑MicroPython的学习之旅。

  • 5
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要给ESP32-CAMMicroPython固件,您可以按照以下步骤进行操作: 1. 首先,您需要下载ESP32-CAM所需的MicroPython固件。您可以从MicroPython官方网站(https://micropython.org/download)下载最新版本的固件。 2. 下载固件后,您需要安装一个串行通信程序,例如Picocom(Linux)或Tera Term(Windows),以便与ESP32-CAM进行通信。 3. 将ESP32-CAM连接到您的计算机。确保正确连接了ESP32-CAM的TX、RX、GND和3.3V引脚,并选择正确的串行端口。 4. 打开串行通信程序,并连接到ESP32-CAM的串行端口。在Linux中,您可以使用以下命令连接到串行端口: ``` picocom /dev/ttyUSB0 -b115200 ``` 在Windows中,您可以使用Tera Term打开串行端口。 5. 在串行通信程序中,按下ESP32-CAM上的复位按钮,然后您将看到一些启动信息。 6. 在串行通信程序中,输入以下命令来擦除ESP32-CAM的闪存: ``` >>> import esp >>> esp.flash_erase() ``` 7. 擦除完成后,将MicroPython固件烧录ESP32-CAM的闪存中。您可以使用esptool来完成这个任务。在命令行中执行以下命令: ``` esptool.py --port /dev/ttyUSB0 write_flash 0x1000 <path_to_firmware.bin> ``` 其中,`/dev/ttyUSB0`是您的ESP32-CAM的串行端口,`<path_to_firmware.bin>`是MicroPython固件的路径。 8. 写过程完成后,您可以重新启动ESP32-CAM。您可以在串行通信程序中按下复位按钮或执行以下命令: ``` >>> import machine >>> machine.reset() ``` 现在,您的ESP32-CAM应该已经成功上了MicroPython固件。您可以使用MicroPython的交互式解释器来编写和运行代码。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值