收藏官网首页
查看: 7881|回复: 4

Keil如何生成bin文件

65

主题

123

帖子

787

积分

高级会员

Rank: 4

积分
787
跳转到指定楼层
楼主
发表于 2016-2-26 16:52:52 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
教您5分钟接入机智云,实现傻瓜式开发
使用过Keil的同鞋都知道,现在Keil中默认可以输出.axf的调试文件和可以通过钩选输出的.hex可执行文件,没有bin(二进制)文件的输出选项。可是偏偏某些时候需要或者习惯性的使用.bin文件来进行烧写,下面各举一例:
1. 一直使用ADS的用户习惯性的使用.bin文件;
2. 某些烧写器带的应用软件只支持.bin文件;
3. 正如笔者遇到的情况,我在使用STM32公司提供的网络更新固件程序的例程时,需要用到.bin文件(.hex文件通过网络更新后遇到某些问题,而且用Hex2Bin软件转换后的也不行)。
其实Keil也自带了工具软件,只要进行适当配置便可以输出bin文件了,不过在介绍具体方法前,请仔细阅读下面这一段关于Keil中自带的fromelf.exe工具说明:
该工具的语法为:fromelf [options] input_file
其中options中的选项及说明如下:
命令选项格式


命令                                         
说明                                         
--help
显示帮助信息                                         
--vsn                                         
显示版本信息                                         
--output file                                         
输出文件(默认输出为文本文件)                                         
--nodebug                                         
在生成的映像文件中不包含调试信息                                         
--nolinkview                                         
在生成的映像文件中不包含段的信息
二进制输出格式

选项                                         
说明                                         
--bin                                         
输出plain binary格式的文件                                         
--m32                                         
生成Motorola 32位十六进制格式的文件                                         
--i32                                         
生成Intel 32位的十六进制格式的文件                                         
--vhx                                         
面向字节的位十六进制格式的文件                                         
--base addr                                         
设置m32,i32格式文件的基地址                                         
--text                                         
显示文本信息,文本信息标志如下:                                         
-v  打印详细信息                                         
-a  打印数据地址(针对带调试信息的映                                         
    像)                                         
-d  打印数据段的内容                                         
-e  打印表达式表                                         
-f  打印消除虚函数的信息                                         
-g  打印调试表                                         
-r  打印重定位信息                                         
-s  打印字符表                                         
-t  打印字符串表                                         
-y  打印动态段的内容                                         
-z  打印代码和数据大小信息
讲完了工具的语法,下面就讲如何在Keil中运用该自带的工具,以使在工程编译后能生成.bin格式的文件:
1. 打开一个建好的工程文件,就不举例说明了。
2. 打开OptionsforTarget ‘工程名称’对话框,可直接点图标,如下图:
3. 选择User标签页,并进行如下图一样的配置:
4. 根据User页的配置还要配置Output页面,具体如下:
5. 点击OK确定,然后再重新编译则会按照上图中的配置路径生成.bin格式的文件了:
摘自:http://forum.eepw.com.cn/thread/225710/1/

33

主题

67

帖子

361

积分

中级会员

Rank: 3Rank: 3

积分
361
沙发
发表于 2016-2-28 17:51:06 来自手机 | 只看该作者
很有用,在也不用担心我自己烧gokit了

3

主题

253

帖子

432

积分

中级会员

Rank: 3Rank: 3

积分
432
地板
发表于 2016-2-29 16:07:57 | 只看该作者
谢谢分享,学习了

9

主题

103

帖子

317

积分

中级会员

Rank: 3Rank: 3

积分
317
5#
发表于 2016-2-29 18:10:27 | 只看该作者
汉枫LPB120模块
多谢楼主分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表