当前位置: 首页 > news >正文

STM32刷Micropython固件参考指南

STM32刷Micropython固件指南


其实刷固件和普通的程序下载烧录无多大的差异,主要是其他因数的影响导致刷固件或刷完固件无法运行的情况和相关问题。

📑刷固件教程

  1. 固件下载。目前所支持的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
  1. HEX文件烧录的话,直接使用STM32CubeProgrammer或者STM32 ST-LINK Utility软件烧录。
    ST-LINKvV2进行目标连接,烧录程序方式:在这里插入图片描述
    USB HID连接方式,进行烧录:(需要Boot0=1,Boot1=0,通过PA11,PA12与电脑USB连接):
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
STM32 ST-LINK Utility烧录方式:
在这里插入图片描述

  1. 刷完之后会显示一个虚拟串口和虚拟盘符。
    在这里插入图片描述

📓刷完固件后,驱动设备显示带问号问题解决方法

  • 🌿针对win10系统,刷完不显示。

还是需要将需要Boot0=1,Boot1=0,通过PA11,PA12与电脑USB连接,使用zadig软件进行驱动升级。
在这里插入图片描述

  • 🌿选择STM32 BOOTLOADER设备,点击下面的UPDATE DRIVER选项,我这里已经升级过了,所以显示是只能重新安装驱动方式。
    在这里插入图片描述
  • 🌿更新完驱动后,将Boot0调回到0,程序连接电脑即可识别到虚拟端口以及虚拟盘符。

⛳固件说明

  • 🏳‍🌈所下载的固件一定要和自己手上的开发板外部晶振频率要一致,否则无法运行。不同的开发板所使用的外部晶振频率是不一样的。
    在这里插入图片描述
  • 📜参阅具体开发板的外部晶振参数:(stm32fxxx_hal_conf.h
    在这里插入图片描述

🔨duf文件格式转HEX

  1. 安装好DfuSe软件后,在电脑开始菜单中找到:Dfu file manager,并点开:
    在这里插入图片描述
  2. 选择下面的选项:
    在这里插入图片描述
  3. 加载下载好的duf后缀名的固件,选择转换后的格式HEX,点击Extract,进行转换。
    在这里插入图片描述
  4. 转换后的文件在原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 Utilityhttps://www.st.com/en/development-tools/stsw-link004.html
链接:https://pan.baidu.com/s/18mGKHIWwLFj3r-DS-KCmlQ 
提取码:o2y2
  • 📌STM32CubeProgrammerhttps://www.st.com/en/development-tools/stm32cubeprog.html
http://www.lryc.cn/news/108369.html

相关文章:

  • 学生信息管理系统自动化测试
  • Java面向对象之toString()方法
  • MySQL(一)
  • 使用docker部署node和react应用
  • 对List集合、数组去重
  • AI相机“妙鸭相机”原理分析和手动实现方案
  • 关于计算机大学生秋招面试的那点事?(Golang篇)
  • Windows网络自学的第一天:创建线程
  • 正确的 Java 异常处理
  • RTT(RT-Thread)时钟管理
  • 基础实验篇 | uORB消息读写与自定义实验(二)
  • k8s pod数据存储Volumes
  • ZYNQ在Petalinux系统下双网口同网段的实现
  • 突破传统监测模式:业务状态监控HM的新思路 | 京东云技术团队
  • 7-16 验证“哥德巴赫猜想” (20 分)
  • GEE学习02 --设置Jupyter Notebook的打开路径
  • stm32与上位机电脑间最快的通信方式是什么?
  • pytorch学习——卷积神经网络——以LeNet为例
  • stm32 mpu6050 cubemx DMP法读取角度
  • .Net6 Core Web API 配置 log4net + MySQL
  • 校园跑腿小程序运营攻略
  • InfluxDB2如何求增量数据
  • Flink作业调度的9种状态
  • 8、Kubernetes核心技术 - ConfigMap
  • 音视频--DTMF信号发送及检测
  • 阿里云容器服务助力极氪荣获 FinOps 先锋实践者
  • C++ 通过time.windows.com获取时间
  • MPLAB加载c文件为什么不能添加到工程中的source files中
  • Tcp的粘包和半包问题及解决方案
  • 路由的hash和history模式的区别