前言
2025/01月份,在使用keil MDK5时,遇到如下几个问题,目前均已解决,故作此记录。
01、如何在Keil MDK中生成 .axf(ARM Executable File) 文件;
02、如何利用生成的 .axf 文件生成 .bin 二进制文件;
03、如何利用生成的 .axf 文件生成 .dis 反汇编文件;
04、keil工程中各个文件的作用说明
问题01-如何在Keil MDK5中生成 axf 文件
【问题现象】
打开正点原子官方给的例程源码,进行全编译,发现并没有日志中并没有提示生成axf文件,如下图xx所示,并且全编译后查看工程各个文件夹(OBJ、HARDWARE、SYSTEM、USER)都没有看到axf文件

【参考资料】
01、P3:如何在Keil编译的工程里面生成反汇编代码
02、【STM32】keil5 如何生成反汇编文件
03、使用Keil-MDK生成*.bin格式可执行文件
04、keil5生成bin文件 简单明了(利用keil5自带的fromelf.exe直接生成)
05、keil5生成bin文件和axf文件
【解决方案】
利用参考资料03,对于生成axf文件,操作如下图xx所示

问题02-如何利用生成的 .axf 文件生成 .bin 二进制文件
【问题现象】
同图xx,编译日志中没有显示生成 .bin 文件,且工程目录中也没有找到 .bin 文件
【参考资料】
同问题01
【解决方案】
利用参考资料01,对于生成 .bin 文件,操作如下图xx所示

问题03-如何利用生成的 .axf 文件生成 .dis 反汇编文件
【问题现象】
同图xx
【参考资料】
同问题01
【解决方案】

问题04-keil工程中各个文件的作用说明
【参考资料】
01、Keil 一些常见文件类型的作用和功能说明
02、Keil 项目/生成的各种文件类型(.AXF、.D、.crf、.exf)说明
03、keil5中各后缀的意义
04、三、keil文件类型及相关描述
05、嵌入式开发八:STM32启动过程分析
【解决方案】
实则综合参考以上几篇资料,我们在初步接触时暂时可以先了解个大致。大致有这么几类文件:
(1)工程文件;
(2)源代码文件,如 .c .s .cpp等;
(3)目标文件,一般是 .o,由相应的.c .s文件编译而来;
(4).lst、.map、.axf(或者.elf):链接相关的文件,其中.axf(或者.elf)是由多个.o文件链接而成


