天天看點

keil怎麼将c語言燒寫軟體下載下傳,Keil-MDK編譯完成後自動燒寫下載下傳

大多數人使用Keil調試程式都是先點編譯工程(Build),然後等編譯成功後再點下載下傳(Download)或者調試(Debug)。Keil本身可以選擇編譯完成後自動開啟調試,但是如果不想開啟調試而是直接下載下傳固件并運作就不行了,Keil并未直接提供該選項,還是要去點一下下載下傳(Download)。這樣對于我們這些“效率控“來說簡直難以忍受!

但是Keil提供了運作自定義程式的設定界面,上篇文章介紹了Keil-MDK編譯前後運作使用者自定義程式,在這個基礎上配合常用的J-link下載下傳器可以實作編譯完成後自動下載下傳固件到MCU。

keil怎麼将c語言燒寫軟體下載下傳,Keil-MDK編譯完成後自動燒寫下載下傳

像上面這樣在”Run User Programs After Build/Rebuild“裡添加一個DownloadHex.bat的腳本。然後在編譯完成之後就會自動調用這個腳本,自動開始下載下傳。

腳本内容如下:

1

echo Start Download Hex

2

"C:\Program Files (x86)\SEGGER\JLinkARM_V420p\JFlashARM.exe" -openprj"D:\STM32 Web Server\Code\STM32F103VE.jflash" -open"D:\STM32 Web Server\Code\Obj\WebServer.hex",0x0 -auto -exit

echo Start Download Hex:顯示一個開始下載下傳的提示。

“C:\Program Files (x86)\SEGGER\JLinkARM_V420p\JFlashARM.exe” -openprj”D:\STM32 Web Server\Code\STM32F103VE.jflash” -open”D:\STM32 Web Server\Code\Obj\WebServer.hex”,0x0 -auto -exit

“C:\Program Files (x86)\SEGGER\JLinkARM_V420p\JFlashARM.exe”:調用J-link的下載下傳程式FlashARM.exe,由于路徑中有空格是以在完整路徑前後加雙引号(下同)。

-openprj”D:\STM32 Web Server\Code\STM32F103VE.jflash” :加載工程檔案,這個檔案可以到J-link的安裝目錄下打開FlashARM.exe,然後建立一個工程,再設定好J-link工作模式、運作頻率、CPU型号等參數,并驗證可以正常下載下傳目标固件檔案後儲存得到。

open”D:\STM32 Web Server\Code\Obj\WebServer.hex”,0x0:加載固件檔案并設定固件在目标Flash中的起始位址,這個檔案需設定Keil輸出Hex,然後編譯完成後可以在Keil的輸出檔案夾裡找到。固件起始位址如無特殊需要一般都是設為0。

-auto:自動開始下載下傳,這個指令的具體内容在J-link工程的設定界面裡勾選需要執行哪些操作,如下圖。

keil怎麼将c語言燒寫軟體下載下傳,Keil-MDK編譯完成後自動燒寫下載下傳

-exit:關閉J-link下載下傳界面。

附:J-flash完整指令行指令

keil怎麼将c語言燒寫軟體下載下傳,Keil-MDK編譯完成後自動燒寫下載下傳

5

1

vote

Article Rating