对于stm32来说,有几种烧录程序的方式,分别是isp,iap,sw-jtag。
其中的dfu模式就是属于isp模式的一种。这种模式一般就stm32f4以上或者互联网型的stm32f1支持。需要有usb接口。还需要自己写引导程序以及应用iap的方式去升级。对于大多数可以升级的产品来说,dfu升级是最简单快速的方法之一。
制作dfu文件,第一步就是要自己ide生成hex文件或者bin文件,之后用专用的软件将生成的hex或者bin文件生成dfu文件。这个专用的软件就是Dfu file manager。自己可以去官网下载。或者跳到以下链接,这是我自己上传的安装包 DfuSeDemo&&Dfu_File_Manager.zip
https://download.csdn.net/download/hugetree_bibi/19811715
方法详解
1,安装好之后找到这个软件
2,点开之后选择第一项,将bin文件或者hex文件变成dfu文件
3,按下图设置好之后点开 Muliti BIN那个按钮,选择bin文件
4,注意选择烧录地址一定要对,这个要根据具体工程代码来决定。我的工程代码里面我查看的时候好像没有偏移量,所以选择的是0x08000000,填好烧录地址后必须按Add to list这个按钮,最后点击ok。
5,最后生成dfu文件,点击生成后自主选择将dfu文件路径和命名。成功的标志是生成的dfu文件大小肯定跟bin文件大小一样的
记录:最后我用自己生成的去升级测试最后是成功了。但是我用hex去生成没成功。各位大佬有用hex文件生成并且烧录成功的可以在评论里说说自己是怎么做的。
win7好像识别不了stm32 dfu 模式。最好能用win10电脑来搞,win10电脑也要安装一个叫total usb devices的驱动,还有就是directx也要更新一下。我再找个时间写篇文章记录下。(这是我学习openffb的使用记录)