644|0

324

帖子

5

TA的资源

纯净的硅(中级)

楼主
 

【得捷电子Follow me第3期】任务1:使用MicroPython系统 [复制链接]

  本帖最后由 HonestQiao 于 2023-11-10 22:59 编辑

得捷电子Follow me第3期的任务,要求使用MicroPython来完成,那么首先,就需要给Seeed Studio XIAO ESP32C3开发板刷上MicroPython系统。

要给ESP32C3刷上MicroPython系统,可以用官方推荐的esptool命令行工具。

不过现在都3202年了,如果不是要搞esp-idf之类的开发,其实完全可以不必用到esptool命令行操作。

要给ESP32C3刷MicroPython系统,最简单最好用的,莫过于使用Thonny开发工具了,开发烧录一条龙服务,省心省力。

下面就分享具体的过程。

 

一、安装Thonny开发工具

可以从 

链接已隐藏,如需查看请登录或者注册
 下载Thonny最新版本(4.1.3)安装,目前支持Windows、Linux、macOS,常见操作系统都可用。

 

 

二、让 Seeed Studio XIAO ESP32C3开发板 进入烧录状态

要让ESP32开发板进入烧录状态以便烧录固件,需要配合BOOT按键,所以我们首先需要了解板子上的按键:

 

 

从上图可以得知,板子上底部(USB口朝上)的两个按键,左边是BOOT按键,右边是RESET按键。

 

让Seeed Studio XIAO ESP32C3开发板近路烧录状态,可以用以下的两种方法:

1. 没有连接到电脑的情况下,直接按住BOOT按键,再使用Type-C数据线连接到电脑,最后再松开BOOT按键。

2. 已经连接到电脑的情况下,按住BOOT按键不放手,然后按一下RESET按键(按下,然后松开),最后再松开BOOT按键。

 

 

将开发板连接到电脑后,再Thonny的右下角,点击后,可以看到可能的设备列表:

 

以上界面是在macOS下截图的,在Windows、Linux系统上类似。

 

三、烧录MicroPython

在上一步的最后,点击弹出列表最后一项:配置解析器

 

 

进入到解析器设置界面:

 

从这里可以看到,实际上,Thonny也是使用esptool来进行固件烧录的,但是不需要我们手动操作esptool。

 

点击 安装或更新MicroPython 后,会进入具体的串口和版本配置界面:

  给 Seeed Studio XIAO ESP32C3开发板 烧录MicroPython,直接使用标准的Espressif ESP32-C3版本即可。

 

如果因为网络原因,这里没有列出可用的family、variant等,可以直接用浏览器下载对应的版本,然后手工指定烧录镜像文件:

 

 

设置完成后,点击安装,就会自动下载对应的固件:

 

下载完成,会自动进行清理Flash:(如果是更新的话,则上一步不要勾选Erase all)

  然后烧录:

 

烧录完成后,会显示 Done:

 

此时,MicroPython系统就烧录好了。

 

 

安装过程中,可能会遇到错误,常见错误如下:

1. 没有进入烧录状态:

这个表示,没有进入烧录状态,请安装 第二部分的操作,通过BOOT按键,进入烧录状态。 

 

2. 插在扩展底板上烧录固件:

将开发板插在扩展底板上,进行固件烧录的时候,有可能会遇到问题。

 

我在烧录的过程中,偶然遇到,听到蜂鸣器在咔咔咔咔咔的响,然后出现下面的错误:

  此时,断开数据线,将开发板从扩展底板取下来,再单独连接到电脑进行烧录,则一切正常。

 

烧录完成后,关闭设置窗口,断开数据线,将开发板插到扩展底板上,并再次连接到电脑。

然后再次点击Thonny右下角,在弹出列表上,选择ESP32即可:

 

最终,Shell窗口,输出了当前的MicroPython版本号,以及使用的开发板类型,这就表示安装成功了。

 

 

四、运行python语句

在Shell窗口,可以直接输入Python语句指令运行,那我们就先输出一个Hello World!

 

不过,需要注意的是,如果电脑本身有Python环境,这里又选择了电脑的Python,这里也能正常运行。

 

所以一定要确保,连接后,显示的是MicroPython环境。

另外,也可以用Python语句,确定当前的环境,例如:

1. 使用import machine:

machine在micropython环境中才有,如果没有,则会导入失败:

  

 

2. 使用os.uname()语句查看系统类型:

当连接的是ESP32的MicroPython环境,则结果如下:

 

如果连接的是电脑本身的Python环境,则结果如下:

 

以上两图,显而易见,MicroPython环境中,显示出来是在esp32环境。

 

3. 使用文件功能

首先从视图->文件,打开当前环境的文件目录窗口:

 

 

如果是在MicroPython环境,则右则有MicroPython设备的文件列表:

 

如果是本机Python环境,则没有MicroPython设备的文件列表。

 

通过Shell窗口,能够成功在MicroPython环境运行Python语句指令后,就可以使用编辑窗口进行开发了:

 

编写后,可以点击保存,选择保存到本地还是开发板上:

 

 

也可以点击绿色运行按钮直接运行测试。

 

五、获取系统和存储情况

最后,使用一小段程序,来获取系统的具体情况:

import os
import gc
import time

try:
    import micropython
    import esp
    IS_MPY = True
except (Exception) as e:
    IS_MPY = False    

try:
    import board
    import espidf
    IS_CPY = True
except (Exception) as e:
    IS_CPY = False    

BOARD_NAME = os.uname().machine

gc.collect()

statvfs_fields = ['bsize','frsize','blocks','bfree','bavail','files','ffree',]
ss = dict(zip(statvfs_fields, os.statvfs('/')))

print("运行系统:%s" % "micropython" if IS_MPY else "circuitpython")
print("开发板:%s" % BOARD_NAME)
print("剩余内存: %0.2fM" % (gc.mem_free()/1024/1024))
print("剩余存储: %0.2fM" % (ss['bsize'] * ss['bfree'] / 1024 / 1024))

if IS_MPY:
    ts = esp.flash_size()
    print("总计存储: %0.2fM" % (ts / 1024 / 1024))
    print("内存使用:", end="")
    micropython.mem_info()

 

最终的运行结果如下:

 

上述脚本,在CircuitPython环境,也可以运行。

 

六、总结

现在,MicroPython系统已经在开发板上,欢快的跑起来了,开始你的愉快编程之旅吧。

另外,大家也可以参考Seeed Studio官方的指导文章学习在ESP32-C3开发板上,进行基于MicroPython的开发:MicroPython for ESP32C3 | Seeed Studio Wiki

 

点赞 关注
 
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表