STM32刷Micropython固件指南
其实刷固件和普通的程序下载烧录无多大的差异,主要是其他因数的影响导致刷固件或刷完固件无法运行的情况和相关问题。
📑刷固件教程
- 固件下载。目前所支持的stm32型号有这些:
stm32f0, stm32f4, stm32f7, stm32g0, stm32g4, stm32h7, stm32l0, stm32l1, stm32l4, stm32wb, stm32wl
。(如果你的stm32芯片型号不在此列,那么可以不用看了,目前与Micropython无交集)
micropython固件下载地址:https://micropython.org/download/
- 🔰建议直接下载HEX的文件,可以直接通过
STM32CubeProgrammer
或者STM32 ST-LINK Utility
软件烧录,当然也可以下载dfu后缀的文件,需要用上面的软件进行烧录的话,还需要使用DfuSe
工具转换。 DfuSe
工具ST官方下载地址:https://www.st.com/en/development-tools/stsw-stm32080.html
- HEX文件烧录的话,直接使用
STM32CubeProgrammer
或者STM32 ST-LINK Utility
软件烧录。
ST-LINKvV2进行目标连接,烧录程序方式:
USB HID连接方式,进行烧录:(需要Boot0=1,Boot1=0,通过PA11,PA12与电脑USB连接):
STM32 ST-LINK Utility烧录方式:
- 刷完之后会显示一个虚拟串口和虚拟盘符。
📓刷完固件后,驱动设备显示带问号问题解决方法
- 🌿针对win10系统,刷完不显示。
还是需要将需要Boot0=1,Boot1=0,通过PA11,PA12与电脑USB连接,使用
zadig
软件进行驱动升级。
- 🌿选择
STM32 BOOTLOADER
设备,点击下面的UPDATE DRIVER
选项,我这里已经升级过了,所以显示是只能重新安装驱动方式。
- 🌿更新完驱动后,将Boot0调回到
0
,程序连接电脑即可识别到虚拟端口以及虚拟盘符。
⛳固件说明
- 🏳🌈所下载的固件一定要和自己手上的开发板外部晶振频率要一致,否则无法运行。不同的开发板所使用的外部晶振频率是不一样的。
- 📜参阅具体开发板的外部晶振参数:(
stm32fxxx_hal_conf.h
)
🔨duf文件格式转HEX
- 安装好DfuSe软件后,在电脑开始菜单中找到:
Dfu file manager
,并点开:
- 选择下面的选项:
- 加载下载好的duf后缀名的固件,选择转换后的格式
HEX
,点击Extract
,进行转换。
- 转换后的文件在原duf文件同目录下。
📚相关资源
- 🔨DfuSe软件(也可以去ST官网下载:
https://www.st.com/en/development-tools/stsw-stm32080.html
)
链接:https://pan.baidu.com/s/1sNra8SQE0o1vQdv6DcDykg
提取码:ezxz
- 🔧当前版本
zadig-2.8
软件,(也可以去官网下载:https://zadig.akeo.ie/
)
链接:https://pan.baidu.com/s/1wPWjBrN29aRRy4Rp-3JKQg
提取码:spip
- 🔧
STM32 ST-LINK Utility
:https://www.st.com/en/development-tools/stsw-link004.html
链接:https://pan.baidu.com/s/18mGKHIWwLFj3r-DS-KCmlQ
提取码:o2y2
- 📌
STM32CubeProgrammer
:https://www.st.com/en/development-tools/stm32cubeprog.html
🌼开发环境推荐
- 🌿基于VSCODE,安装
rt-thread micropyth
插件来开发。 - 🌿基于Thonny软件开发。