这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » Keil如何生成bin文件【Keil生成Bin文件的方法】

共56条 1/6 1 2 3 4 5 6 ›| 跳转至

Keil如何生成bin文件【Keil生成Bin文件的方法】

高工
2013-02-21 20:31:11     打赏

使用过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标签页,并进行如下图一样的配置:

进入User页面

4. 根据User页的配置还要配置Output页面,具体如下:

Output页面设置

5. 点击OK确定,然后再重新编译则会按照上图中的配置路径生成.bin格式的文件了:

结果

结果

OK,打完收工…………希望对大家有点帮助!


pdf版本下载:

——回复可见内容——

 




关键词: 如何     生成     文件     方法     打印    

院士
2013-02-21 20:51:33     打赏
2楼

这个东西真高级。

我一直以为hex能够通吃呢!


高工
2013-02-21 20:58:00     打赏
3楼
执行是没有问题的,但是目前对远程更新了解的还不够深入,用的官方例程改的,用hex文件试过,有问题,然后用软件转也有问题,最后无奈就只有搜资料咯!

高工
2013-02-21 22:34:13     打赏
4楼
介绍的很是详细了,多谢分享

工程师
2013-03-07 11:00:26     打赏
5楼

学习了,又学会了一招


高工
2013-03-07 15:34:03     打赏
6楼

bin文件是最终可执行文件占用ROM的真实大小,hex文件却加了很多其他的信息,远大于程序所占ROM或Flash的大小。

LZ讲得很详细,


菜鸟
2013-06-19 15:13:37     打赏
7楼
xuexi

菜鸟
2013-10-02 12:09:22     打赏
8楼
KANKAN

菜鸟
2014-02-26 18:40:01     打赏
9楼
正好要用到

菜鸟
2014-03-19 10:16:23     打赏
10楼
看看看看…………学习学习……………

共56条 1/6 1 2 3 4 5 6 ›| 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]