为什么需要BIN文件呢?

  • 有些烧录器只支持BIN文件。
  • 进行OTA远程升级时,只能使用BIN文件。
  • 使用JLink脚本文件进行一键烧录时,只支持BIN文件。
  • BIN文件要比HEX和AXF文件小的多。

但Keil默认生成的是AXF和HEX文件格式,那BIN怎么来生成呢?

Keil配置生成BIN文件

Keil自带了一个小工具,可以通过执行指令来将AXF文件转换为BIN文件这就需要调用一个外部程序fromelf.exe来将AXF文件转换为BIN格式文件。

fromelf.exe文件的位置在安装目录 Keil_v5\ARM\ARMCC\bin 或者 Keil_v5\ARM\ARMCC_505u2\bin 目录下。

****在工程配置菜单中,User选项卡,编译后执行的命令,设置为 fromelf --bin -o "$L@L.bin" "#L" ,当然也可以使用上面那种绝对路径的方式,需要看指定fromelf文件的路径,输出BIN文件的路径和生成的AXF文件的路径。

重新编译,可以看到在输出目录下已经生成了BIN文件。

其他开发环境如何将AXF文件转换为BIN文件?

当然如果你想把其他开发环境生成的AXF文件转换为BIN文件,也可以直接调用这个小工具来实现。

命令格式为:

[fromelf.exe文件路径] --bin -o [BIN路径} [AXF文件路径}

如:

E:/Keil_v5/ARM/ARMCC/bin/fromelf.exe --bin -o E:/Keil_Project/OneNET.bin E:/Keil_Project/OneNET.axf


历史精选文章:


欢迎大家关注我的个人博客

或微信扫码关注我的公众号

Keil开发环境如何生成BIN文件的更多相关文章

  1. KEIL下目标程序配置生成BIN文件

    圈中地址:E:\Program Files\keil4arm\ARM\ARMCC\bin\fromelf.exe --bin -o ..\OBJBIN\LY2030.BIN ..\obj\LY2052 ...

  2. keil MDK中如何生成*.bin格式的文件

    在Realview MDK的集成开发环境中,默认情况下可以生成*.axf格式的调试文件和*.hex格式的可执行文件.虽然这两个格式的文件非常有利于ULINK2仿真器的下载和调试,但是ADS的用户更习惯 ...

  3. 【Linux开发】【DSP开发】利用CCS6.1生成out文件的同时生成bin文件

    [Linux开发][DSP开发]利用CCS6.1生成out文件的同时生成bin文件 标签:[DSP开发] [Linux开发] 尝试在windows上安装的CCS6.1开发AM4378-Linux下的应 ...

  4. keil 生成bin文件

     在 User 配置页面中,提供了三种类型的用户指令输入框,在不同组的框输入指令,可控制指令的执行时间,分别是编译前(Before Compile c/c++ file).构建前(Before Bui ...

  5. webpack 开发环境与生成环境的 配置

    写在前面 最近学习react,之前做vue项目的时候,一直都是拿来主义,浑浑噩噩,感觉不太好,趁学习react的机会,在顺带学习一下webpack.一般配置文件分两份,为开发环境和生成环境.有此区分, ...

  6. STM32L152 Keil 开发环境 显示Internal command error Flash down

    使用Keil开发环境对STM32L Discovery进行开发,更新一次firmware后就不能连接目标板了,报错Internal command error Flash download faile ...

  7. KEIL_MDK生成Bin文件

    1.MDK配置 MDK是使用安装目录下的(formelf.exe)工具来生成bin文件,配置方法:勾选 "Run # 1",在后面输入框写入bin文件生成方式 2.绝对路径 &qu ...

  8. Linux环境崩溃生成core文件以及调试

    Linux环境崩环境溃生成core文件以及调试 gdb结合coredump定位崩溃进程 Linux 使用core file文件快速定位程序崩溃代码行 http://www.cnblogs.com/ha ...

  9. MDK(KEIL5)如何生成.bin文件 【转】

    最近要做个bin文件,网上找了好多都说的不够清楚,后来找到一篇实测可用,说明清楚的,转过来以便学习用. 参考传送门:https://blog.csdn.net/nx505j/article/detai ...

随机推荐

  1. Kotlin入门(28)Application单例化

    Application是Android的又一大组件,在App运行过程中,有且仅有一个Application对象贯穿应用的整个生命周期,所以适合在Application中保存应用运行时的全局变量.而开展 ...

  2. ERP口碑后付关于如何设置后厨小票打印时间的问题解决方法

    1. 2.

  3. HDFS客户端的权限错误:Permission denied

    报错:Permission denied: user=root, access=WRITE, inode="hadoop":hadoop:supergroup:rwxr-xr-x ...

  4. C#-枚举(十三)

    概念 枚举是一组命名整型常量 枚举类型是使用 enum 关键字声明的 例如定义一个变量,该变量的值表示一周中的一天: enum Days { Sunday, Monday, Tuesday, Wedn ...

  5. mssql sql server 其它系统函数 parsename 点语法字符串分割函数应用简介

    转自:http://www.maomao365.com/?p=4534 一. parsename函数功能简介 parsename函数的主要功能是:可以快速的使用”.”关键字分解字符串,并返回.分解后指 ...

  6. 利用系统函数模拟实现nginx 系统脚本启动的特殊颜色专业效果

    利用系统函数模拟实现nginx 系统脚本启动的特殊颜色专业效果/etc/init.d/nginxd {start/stop/restart/reload}利用if语句实现: ============= ...

  7. CSS2属性选择器和css3选择器的用法和区别

    兄弟们,这是我第一次写博客,希望对进来的人有用,写的不好别喷哈,谢谢. css2属性选择器: 1.[attribute] 例子:   [title] 解释:   选择含有  title  属性的所有元 ...

  8. C. Queen Codeforces Round #549 (Div. 2) dfs

    C. Queen time limit per test 1 second memory limit per test 256 megabytes input standard input outpu ...

  9. PHP防盗链的基本思想&&防盗链的设置方法

    PHP防盗链的基本思想&&防盗链的设置方法 网站盗链会大量消耗被盗链网站的带宽,而真正的点击率也许会很小,严重损害了被盗链网站的利益.本文主要介绍用PHP实现防盗链的方法以及基本思想, ...

  10. zabbix全网监控

    为什么要监控 运维的职责1.保障企业数据的安全可靠.2.为客户提供7*24小时服务.3.不断提升用户的体验. 在关键时刻,提前提醒我们服务器要出问题了 当出问题之后,可以便于找到问题的根源 拿到公司服 ...