在 Keil 開發環境(如 Keil MDK)中,.axf
文件是一種 可執行文件格式,主要用于 ARM 處理器的嵌入式開發。它的作用類似于 ELF(Executable and Linkable Format)格式,包含了可執行代碼、調試信息、符號表等數據。
.axf
文件的擴展名來源于 ARM eXecutable Format(AXF),可以理解為 ARM 可執行文件格式。它是基于 ELF(Executable and Linkable Format) 的擴展,主要用于 Keil MDK 和 ARM 相關工具鏈,包含可執行代碼、調試信息、符號表等數據。
.axf 文件的作用
-
包含可執行代碼
.axf
文件由 Keil 編譯器(Arm Compiler) 生成,包含了目標程序的機器代碼,可以用于仿真和調試。 -
包含調試信息
.axf
文件通常帶有 符號表 和 調試信息,調試器(如 Keil μVision 或 J-Link GDB Server)可以使用它來進行 源碼級調試。 -
可轉換為其他格式
- 可以使用
fromelf
工具(Keil 提供)將.axf
轉換為二進制格式,如.bin
或.hex
:fromelf --bin -o output.bin input.axf
- 也可以轉換為反匯編文件,查看匯編指令:
fromelf --text -c input.axf > output.asm
- 可以使用
.axf 文件的生成
當你在 Keil 里 編譯 代碼時,連接器會將多個目標文件(.o
文件)鏈接在一起,生成 .axf
文件。通常這個文件會出現在 Output 目錄 或 項目配置指定的路徑 下。
如何使用 .axf
- 調試:在 Keil μVision 中,.axf 直接用于 仿真和調試。
- 轉換:如果要燒錄到目標設備,需要轉換成
.bin
或.hex
文件。
總結
.axf
是 Keil 生成的 可執行文件,包含 代碼、符號表和調試信息,用于 調試和程序轉換,但通常不會直接燒錄到硬件,而是轉換為 .bin / .hex 文件后再進行燒寫。