STM32 USB IAP 步骤

Posted on   蓝色星宇  阅读(6552)  评论(2编辑  收藏  举报

1.下载STM32_USB-FS-Device_Lib_V3.2.1.rar

2.安装DfuSe_Demo_V3.0_Setup.exe。

3.打开...\STM32_USB-FS-Device_Lib_V3.2.1\Project\Device_Firmware_Upgrade\MDK-ARM\DFU.uvproj

修改://#define ApplicationAddress 0x08003000为#define ApplicationAddress 0x08004000(因为要修改程序增加空间)

编译程序,用stlink/Jlink将程序下载到STM32中。

 4.用usb线连接STM32板,PC端出现发现新硬件。

5.安装驱动,如果第二步默认安装的话,选择驱动C:\Program Files\STMicroelectronics\Software\DfuSe\Driver

6.打开应用程序工程,

6.1) 编译选项设置 在IROM1 start处设置0x8004000;

6.2) 修改中断向量表偏移量:( VECT_TAB_OFFSET  0x0--->  0x04000)

#ifdef USB_DFU_MODE  //hy@
#define VECT_TAB_OFFSET  0x04000
#else
#define VECT_TAB_OFFSET  0x0 /*!< Vector Table base offset field.
                                  This value must be a multiple of 0x100. */
#endif

 6.3) 编译选项设置output 钩上create HEX File ok 设置好编译。

7.打开C:\Program Files\STMicroelectronics\Software\DfuSe\BIN\DfuFileMgr.选择 I want to generate a dfu file from s19 ,hex or bin ok 选择s19 or hex 选择应用程序工程生成的STM3210E-EVAL.hex 点击generate 保存为20120131.dfu

8.打开C:\Program Files\STMicroelectronics\Software\DfuSe\BIN\DfuSeDemo.exe如果驱动安装正确,会显示stm device in dfu mode 然后点击右下脚的choose,选择刚才生成的20120131.dfu 点击upgrade ok 固件烧写成功。

编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
历史上的今天:
2008-01-31 YUV422 --> RGB 代码
2008-01-31 YUV / RGB 格式及快速转换算法(转载)

随笔 - 54, 文章 - 0, 评论 - 21, 阅读 - 14万

Copyright © 2025 蓝色星宇
Powered by .NET 9.0 on Kubernetes

跟小D每日学口语 跟小D每日学口语
点击右上角即可分享
微信分享提示