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