Keil 生成 Bin 文件最正確的姿勢
魚鷹曾在《bin 和 axf 文件的生成》筆記中介紹了如何使用 keil 生成 bin 文件,也在 《功能強大的 HEX 開源轉換工具,你值得擁有》中介紹了如何使用第三方工具生成 bin 文件,為什么還要寫這篇筆記呢?
第三方工具功能強大,但 KEIL 自帶工具不需要額外安裝軟件,更加方便,但網(wǎng)上流傳的 keil 生成 bin 文件的方法都有一個缺點,那就是同樣的命令,如果 ROM 分了多個,那么將生成一個文件夾,里面包含了多份 ROM 的 bin 文件。
比如,你的配置如下:
如果你使用下面的命令將生成一個文件夾,而不是單獨的一個 out.bin 文件。(!L 代表當前工程目錄的 axf 文件,會根據(jù)目標的設置而自動更新)
fromelf.exe --bin -o ./out.bin !L
生成的文件是兩個單獨的,原本的 out.bin 應該是一個文件得,但由于有兩個 ROM ,所以生成了兩個 bin 文件用于兩個 ROM 的燒錄,但事實上,我們只有一個 ROM (flash),只是我們人為把它分成了兩個(比如 BootLoader 和 APP 部分)。如果我們想要一次性燒錄應該怎么辦呢?
一般遇到這種情況,有些道友會使用第三方工具將兩個 bin 文件進行合并。
但魚鷹今天想和道友分享的可不是這個,不然怎么能說是最正確的姿勢呢?
這個方法是魚鷹前兩天偶然看到的,非常好用,所以就此分享給大家,讓各位道友也能掌握該方法。
廢話不多說,直接上命令:
fromelf.exe --bin --bincombined --bincombined_padding=1,0xff --output outfile.bin !L
是的,你沒有看錯,還是使用 fromelf.exe 程序,不同的是,加入了額外的參數(shù),因此,你可以用它將 axf 文件直接生成一個 outfile.bin 文件(文件名可以任意),因為中間可能存在空白,所以需要參數(shù)設定空白填充的數(shù)據(jù),這里是 0xff。
默認生成路徑在工程文件所在文件夾下:
并且這個命令可以適用于一個 ROM 的情況,所以建議大家使用該命令生成 bin 文件。
你學廢了嗎?
*博客內容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。
透射電鏡相關文章:透射電鏡原理