博主是在 win10环境下,将MicroPython固件烧录到stm32F407开发板上。因为博主想学一波STM32F407,有python基础,但c语言基础一般,觉得学库函数觉得太过复杂,且以后方向可能不太搞嵌入式硬件,所以就用MircoPython做硬件。

文章目录

  • ​​1.USB线方式​​
  • ​​资源准备​​
  • ​​软件准备​​
  • ​​固件准备​​
  • ​​硬件连接​​
  • ​​固件烧录​​
  • ​​2.ST-Link方式​​
  • ​​资源准备​​
  • ​​软件准备​​
  • ​​固件准备​​
  • ​​硬件准备​​
  • ​​固件烧写​​
  • ​​验证固件是否烧写成功​​

MicroPython——将固件烧写到STM32开发板上_固件

1.USB线方式

资源准备

软件准备

必备:

  • 准备DfuSe Demonstration,用于将dfu文件烧写进开发板中。

非必备:

  • 准备​​Dfu file manager​​软件;(若读者已有.dfu格式的固件,可使用该软件将.dfu格式的固件库转换为.hex格式)
固件准备
  • 准备MicroPython的STM32F4固件:(博主已经将固件资源整理到了gitee上,方便读者下载)
#固件官方网址:http://micropython.org/download/all/(下载速度极慢,不推荐)
#博主的码云MicroPython_firmware仓库
https://gitee.com/irving_gao/MicroPython_firmware.git

下载固件库并找到自己的开发板,将自己的开发板对应的固件解压即可。

硬件连接

  • 任意STM32系列开发板(这里博主以STM32F407核心板为例,进行固件的烧写)
  • 将开发板的BOOT0置1(高电平)
  • 将开发板与电脑相连

固件烧录

​PYB利用USB线刷入固件​

2.ST-Link方式

资源准备

软件准备

必备:

  • 准备​​ST-link Utility​​软件;(用于STM32开发板的hex文件烧写)

非必备:

  • 准备​​Dfu file manager​​软件;(若读者已有.dfu格式的固件,可使用该软件将.dfu格式的固件库转换为.hex格式)
固件准备
  • 准备MicroPython的STM32F4固件:(博主已经将固件资源整理到了gitee上,方便读者下载)
#固件官方网址:http://micropython.org/download/all/(下载速度极慢,不推荐)
#博主的码云MicroPython_firmware仓库
https://gitee.com/irving_gao/MicroPython_firmware.git

下载固件库并找到自己的开发板,将自己的开发板对应的固件解压即可。

硬件准备
  • 任意STM32系列开发板(这里博主以正点原子的STM32F407探索者开发板为例,进行固件的烧写)
  • ST-Link仿真器

固件烧写

固件烧写将通过ST-link Utility软件实现:

  • 将板子上电并通过​​ST-Link​​和电脑连接;
  • 连接开发板
    连接并读取STM32内部FLASH及芯片信息;
  • 打开程序(hex)
    打开固件文件夹下的hex文件;
  • 下载程序(hex)
    弹出信息确认窗口,如hex文件路径、验证方式等,确认信息无误后点击“Start”开始下载程序。
  • 下载成功
    下载过程时间长短与程序大小有关,一般都很快,出现“Verification…OK”,说明下载成功。

    到这里就完成固件烧写过程,接下来对烧写情况进行验证。

验证固件是否烧写成功

  • 将开发板的USB接口和电脑连接,出现​​PYFLASH​​盘符:
  • MicroPython——将固件烧写到STM32开发板上_git_02


  • 远程连接Putty:
  • MicroPython——将固件烧写到STM32开发板上_git_03

  • 打印​​Hello MicroPython​​:
  • MicroPython——将固件烧写到STM32开发板上_git_04

  • 如果读者在使用putty过程中遇到黑屏问题,参考文章:通过putty实现实时交互和调试(包含putty界面黑屏bug解决方法)

如果读者也跟博主成功烧写固件,那就三连一下吧~

参考文章:

  1. ​http://www.stmcu.org.cn/module/forum/thread-614680-1-1.html​