使用過Keil的同鞋都知道,現(xiàn)在Keil中默認可以輸出.axf的調試文件和可以通過鉤選輸出的.hex可執(zhí)行文件,沒有bin(二進制)文件的輸出選項??墒瞧承r候需要或者習慣性的使用.bin文件來進行燒寫,下面各舉一例:
1.一直使用ADS的用戶習慣性的使用.bin文件;
2.某些燒寫器帶的應用軟件只支持.bin文件;
3.正如筆者遇到的情況,我在使用STM32公司提供的網絡更新固件程序的例程時,需要用到.bin文件(.hex文件通過網絡更新后遇到某些問題,而且用Hex2Bin軟件轉換后的也不行)。
其實Keil也自帶了工具軟件,只要進行適當配置便可以輸出bin文件了,不過在介紹具體方法前,請仔細閱讀下面這一段關于Keil中自帶的fromelf.exe工具說明:
該工具的語法為:fromelf[options]input_file
其中options中的選項及說明如下:
命令選項格式
命令
說明
--help
顯示幫助信息
--vsn
顯示版本信息
--outputfile
輸出文件(默認輸出為文本文件)
--nodebug
在生成的映像文件中不包含調試信息
--nolinkview
在生成的映像文件中不包含段的信息
二進制輸出格式
選項
說明
--bin
輸出plainbinary格式的文件
--m32
生成Motorola32位十六進制格式的文件
--i32
生成Intel32位的十六進制格式的文件
--vhx
面向字節(jié)的位十六進制格式的文件
--baseaddr
設置m32,i32格式文件的基地址
--text
顯示文本信息,文本信息標志如下:
-v打印詳細信息
-a打印數(shù)據(jù)地址(針對帶調試信息的映
像)
-d打印數(shù)據(jù)段的內容
-e打印表達式表
-f打印消除虛函數(shù)的信息
-g打印調試表
-r打印重定位信息
-s打印字符表
-t打印字符串表
-y打印動態(tài)段的內容
-z打印代碼和數(shù)據(jù)大小信息
講完了工具的語法,下面就講如何在Keil中運用該自帶的工具,以使在工程編譯后能生成.bin格式的文件:
1.打開一個建好的工程文件,就不舉例說明了。
2.打開OptionsforTarget‘工程名稱’對話框,可直接點圖標,如下圖:
3.選擇User標簽頁,并進行如下圖一樣的配置:
4.根據(jù)User頁的配置還要配置Output頁面,具體如下:
5.點擊OK確定,然后再重新編譯則會按照上圖中的配置路徑生成.bin格式的文件了:
OK,打完收工…………希望對大家有點幫助!