STM32通過USB方式燒錄程式DFU詳解 ( 使用新版本的DFU工具 DfuSe_Demo_V3.0.5_Setup 測試ok 2018-7-27 改)
阿新 • • 發佈:2019-02-19
DFU的全稱是Device Firmware Upgrade,即裝置韌體升級。
============================================================
第一步:下載了官方DFU軟體後,安裝軟體包,安裝完畢後代開這個軟體的安裝路徑
需要再安裝下STM32的USB驅動。路徑如下(根據電腦系統選擇安裝X86還行x64):
第二步:USB驅動安裝上以後,用USB線將電腦和開發板連線,USB線接到開發板的這個USB口上:
第三步:讓開發板進入ISP模式,在電腦的資源管理器裡面可以看到已經識別出USB
第4步:開啟此路徑下的這個軟體:
選擇這個選項
開啟後後效果如下:
通過這個軟體將bin檔案,hex檔案或者S19檔案轉換成DFU檔案格式。實際測試新增hex
檔案的時候老是無法識別,彈出如何錯誤。
第5步:DfuFileMgr小軟體裡面有幾個引數需要大家填好。
(1)Vendor ID,Product ID,和Version ID需要通過如下小軟體進行獲取:
開啟軟體後,引數在這裡:
將其填寫到DfuFileMgr裡面:
(2)填寫Target ID,這裡填寫0即可(填寫其它數值的用途還沒有研究)
(3)Target Name選項裡面添寫個名字即可,這裡填寫了個LED
(4)點選此選項,新增bin檔案
(5)IAR和MDK工程生產bin檔案的方法看這個帖子:
http://bbs.armfly.com/read.php?tid=7097
(6)新增bin檔案:
(7)點選生產即可
特別注意,這個軟體似乎有bug,不管你將生成的dfu檔案儲存到哪裡,最終一定在安裝目錄的這個檔案裡面:
第6步:再次開啟小軟體DfuSeDemo,載入剛才的led.dfu。
第7步:提示載入完畢,並選擇這個選項:
最後一步,點選Upgrade按鈕:
重啟開發板就可以運行了。
注意下:如果想使用 .HEX 檔案轉成 DFU 檔案,建議下載另外的版本 DFU_Demo_v3.0.1 DFU file Manager 可以正常的轉換為 DFU
很奇怪的是 DFU_Demo_v3.0.1 版本的 Dfuse Demo下載程式後燒錄不成功,因此我是 v3.0.1 v3.0.4 兩個版本一起使用的
注:
20187-27 使用 DfuSe_Demo_V3.0.5_Setup 可以正常 使用 DFU file Manager , Dfuse Demo下載程式