用IAR直接下載.out文件到Flash中:
.out文件在工程文件夾的exe文件夾下,體積比較大,能比.hex或.bin大十倍以上。
在DFU配置的工程下(左上角下拉菜單可選DFU 還是FLASH),菜單欄Project->Download->Download file… 可以下載.out文件到芯片中。
具體下到哪,在工程上點右鍵->linker->edit,這里可以設置中斷向量表(VectorTable)和程序存放地址(Memory Regions)。IAP程序(相當於bootloader)中斷向量表設在0x08000000程序起始地址設為0x08000044(多出來的0x44用來放大小為0x40的向量表);普通用戶程序(被引導的)分別設為:0x08003000,0x08003000。
本人親測,先將自己的程序下到0x08003000開始的區域,再將William給的DFU.out下到IAP區(0x08000000),重啟兩次后可以正確引導運行,而且原來進DFU模式的按鈕生效。
另外,貌似用Download and Debug 按鈕下載時只有設置成0x08000000才能調試。