IAR中文网站 > 新手入门 > IAR怎么导出二进制文件 IAR生成二进制文件格式异常如何调整
教程中心分类
IAR怎么导出二进制文件 IAR生成二进制文件格式异常如何调整
发布时间:2026/09/28 16:03:38

  工程编译成功后,输出目录里常会先看到一个.out文件。若烧录工具要求BIN,不能直接把它改名为.bin:IAR需要先完成链接,再通过输出转换器生成指定格式。动手前最好看一眼烧录工具要求的是BIN还是HEX,以及它是否要求单独填写写入地址。下面以IAR Embedded Workbench for Arm为例说明。

  一、IAR怎么导出二进制文件

 

  .out文件可用于调试,交付给烧录工具的文件则要按其要求转换。IAR的输出转换器提供原始二进制、Intel HEX等格式选项;转换设置分别保存在工程的构建配置中,因此也要留意当前选择的是Debug还是Release。

 

  1、确认本次构建的工程

 

  ①在顶部配置列表选择【Debug】或【Release】。

 

  ②右键点击目标工程,选择【Set as Active】。

 

  ③点击【Project】→【Rebuild All】,确认编译和链接均已完成。

 

  2、设置二进制输出

 

  ①选中工程名称,依次点击【Project】→【Options】→【Output Converter】。

 

  ②勾选【Generate additional output】。

 

  ③在【Output format】中选择【Raw binary】。

 

  ④需要自定名称时,勾选【Override default output file】,填写【Output file】。

 

  ⑤点击【OK】,再次执行【Project】→【Rebuild All】。

 

  3、找到并核对文件

 

  ①进入【Project】→【Options】→【General】→【Output】,查看输出目录。

 

  ②打开该目录,核对BIN文件的名称和修改时间。

 

  ③在【View】→【Messages】→【Build】中查看转换步骤有无报错。

 

  ④保留本次生成的.out文件,便于之后核对链接结果。

 

  二、IAR生成二进制文件格式异常如何调整

 

  先看具体异常:文件类型不被识别、BIN突然变大、烧录位置不对,查的设置各不相同。原始BIN只保存连续的字节,不携带写入地址;转换范围内若存在没有内容的地址空档,IAR会在文件中用零字节补齐。

 

  1、文件后缀与内容对不上

 

  ①返回【Output Converter】,确认【Generate additional output】已勾选。

 

  ②烧录工具要求BIN时,将【Output format】选为【Raw binary】。

 

  ③烧录工具要求HEX时,将【Output format】选为【Intel Extended hex】。

 

  ④检查【Output file】的扩展名是否与所选格式一致,重新构建。

  2、BIN文件明显偏大

 

  ①进入【Project】→【Options】→【Linker】→【List】,勾选【Generate linker map file】。

 

  ②重新构建,打开映射文件,查看有效数据所在的地址范围。

 

  ③若地址段相距很远,进入【Linker】→【Config】核对链接配置文件。

 

  ④需要按地址段分别输出时,使用ielftool的范围转换选项生成文件。

 

  ⑤保留原BIN,不要手工删除其中的零字节后直接用于烧录。

 

  3、烧录后内容或位置不对

 

  ①在映射文件中找到目标程序的加载地址。

 

  ②核对烧录工具中填写的BIN起始地址。

 

  ③若烧录工具需要从文件读取地址,返回【Output format】选择【Intel Extended hex】。

 

  ④工程含引导程序和应用程序时,核对本次选用的文件及对应地址范围。

 

  4、拿到的仍是旧文件

 

  ①在顶部配置列表核对当前【Debug】或【Release】。

 

  ②检查【Output file】是否设置了另一文件名。

 

  ③点击【Project】→【Clean】,再点击【Project】→【Rebuild All】。

 

  ④返回输出目录,核对文件修改时间和【Build】窗口中的转换结果。

 

  三、二进制文件导出后怎样核对

 

  文件能生成,还要确认它符合接收工具的要求。尤其是同一工程会输出多份固件时,文件名相近,单看扩展名很容易拿错。核对内容时应以本次链接结果和目标板的内存布局为依据。

 

  1、核对格式与文件大小

 

  ①将文件扩展名与【Output format】中的设置对照。

 

  ②用十六进制查看工具打开BIN,检查开头的数据。

 

  ③对照映射文件的有效地址跨度,查看BIN体积是否合理。

 

  ④体积突然增加时,重点检查两段有效数据之间的地址空档。

 

  2、核对烧录参数

 

  ①在烧录工具中选择本次生成的文件。

 

  ②使用BIN时,填写与目标程序对应的写入起始地址。

 

  ③使用HEX时,检查烧录工具是否按文件内地址记录加载。

 

  3、留下可复核的版本信息

 

  ①记录工程配置、输出格式、文件名和写入地址。

 

  ②将映射文件与对应固件保存在同一版本记录中。

 

  ③下次构建前,对照上次记录检查【Linker】和【Output Converter】设置。

  总结

 

  生成BIN后,不能只凭后缀判断它能否直接烧录。文件中的字节、覆盖的地址范围,以及烧录工具采用的写入地址需要对得上。把转换设置和映射文件随固件一起留存,之后比较版本或排查文件体积变化时,也能找到明确依据。希望这篇关于“IAR怎么导出二进制文件IAR生成二进制文件格式异常如何调整”的内容对大家有所帮助;如有IAR相关需求,欢迎联系我们咨询。

135 2431 0251