STM32几种特殊格式文件

介绍

下面是STM32代码编译生成的几种特殊格式的文件,开发中经常遇到,每种文件都有不同的作用

文件格式

rt-thread.axf是MDK IDE编译生成的带调试信息的可执行文件,里边记录了大量的函数、变量符号表等

rt-thread.elf 是GNU ARM编译生成的可调试程序文件,里边带有大量的调试信息符号表,可以使用objdump命令查看符号表

Plain 复制代码
arm-none-eabi-objdump.exe -a rt-thread.elf

rt-thread.map:内存映射文件,各种FLASH和RAM、函数以及变量的映射关系

rtthread.bin:单纯的二进制执行代码,甚至没有地址信息

rtthread.hex:带地址的十六进制可行性代码文件

rt-thread.lnp:链接文件,告诉链接器如何把各部分的二进制代码组织拼接起来

转换关系

首先axf和elf都是通过编译器链接生成的(下图是elf文件)

axf生成bin

axf通过FromELF生成hex,要手动勾选,hex文件一般在出厂烧录时有用

elf通过objcopy生成bin

区别

  1. hex和bin:前者带地址信息,后者没有
  2. axf和elf:都是带调试信息的可执行文件,前者是ARM定义的,后者是GNU定义的
  3. bin和elf,后者有调试信息,前者没有
相关推荐
liulilittle2 天前
无锁并发容器的设计与实现原理
开发语言·c++·set·map·并发·无锁·lock-free
lingran__5 天前
C++ STL map 与 set 底层剖析与模拟实现万字详解|基于红黑树,复刻 SGI-STL 泛型复用架构
开发语言·c++·stl·set·map·泛型编程·sgi-stl
lingran__9 天前
C++ STL 关联式容器万字详解:set、multiset、map、multimap|接口用法 + 易错点 + 力扣真题实战
开发语言·c++·stl·set·map·红黑树·关联式容器
CappuccinoRose22 天前
Rust学习文档(四)
开发语言·后端·学习·算法·rust·vector·map
布朗克1681 个月前
Go 入门到精通-09-复合类型之Map
开发语言·后端·golang·map
码上有光1 个月前
c++:map和set的底层实现
android·java·c++·set·map
星马梦缘1 个月前
机器学习与模式识别 第八章 MAP与偏方差 考点压缩
人工智能·机器学习·map·岭回归·mle·双重下降
星马梦缘1 个月前
机器学习与模式识别 第八章 MAP与偏方差 模拟卷及答案
人工智能·机器学习·map·岭回归·mle·双重下降
王光环2 个月前
hex格式介绍
hex