说明:
stm32有三种更新固件的方式,分别为(1)DFU模式( Development Firmware Upgrade 即“开发固件升级”);(2)SWD/JLINK 下载 (3)第三方bootload下载;
一、DFU模式
DFU模式原理主要依靠stm32自带bootload,也就是开机的时候,按住boot键,然后上电; 在驱动安装正常的情况下,查看设备管理器会出现STM32BOOTLOAD的设备;此时就可以通过USB或者串口直接烧录固件;
STM32CubeProg
这里介绍一款软件,也就是stm32自带的STM32CubeProg软件:
下载和安装
关于安装请参考这篇文章:
https://blog.csdn.net/Brendon_Tan/article/details/107686371
下载固件
首先将stm32按住boot键,然后插入USB连接电脑,检查设备管理器是否出现STM32BOOTLOAD; 如下如所示: (1)点击使用usb连接; (2)选择下载固件; (3)加载hex或者axf文件格式的固件; (4)点击烧录;
二、SWD/JLINK 下载
使用swd下载固件的可以使用STLINK软件或者是Keil等IDE,但是需要连接stm32的SWD两条线; 一般需要调试程序的时候就需要用这个方式,也主要是为了调试程序;
三、第三方bootload下载
第三方的bootload和第一种bootload的区别就在于,第一种是stm烧写到rom上的,芯片出厂就有的; 而第三方的bootload一般存在芯片的flash区,一般是0x8000000开始;也就是和固件放在同一个位置,可以理解就是固件的一部分; 但是第三方固件的好处就是下载的方式特别的灵活,可以使用任何一种通信接口进行固件更新,只要可以传输数据就行; 比如说网络升级、串口、can总线、spi、usb等等
|