重工电子论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 6387|回复: 4
打印 上一主题 下一主题

如何用Kiel 生成.bin 文件(相信会用到嘚)

[复制链接]

16

主题

75

帖子

863

积分

版主

Rank: 7Rank: 7Rank: 7

积分
863
QQ
跳转到指定楼层
楼主
发表于 2016-1-22 11:05:04 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 程浥 于 2016-1-25 08:52 编辑





如图所示:
fromelg.exe --bin -o @p.bin @p.axf

找寻些许资料,特此补上:

1 - HEX文件(ASCII文件)是包括地址信息的,,BIN文件(二进制文件)只包括了数据本身 , 在烧写或下载HEX文件的时候,一般都不需要用户指定地址,因为HEX文件内部的信息已经包括了地址。而烧写BIN 
         文件的时候,用户是一定需要指定地址信息的。例如烧写mini2440时,没得烧写器,指定地址0x30000000,.

2- 很多编译器的支持生成HEX格式的烧录文件,尤其是Keil c。但是编程器能够下载的往往是BIN格式,因此HEX转BIN是每个编程器都必须支持的功能。

3- 除此方法外,还有HEX2BIN、BIN2HEX软件,HEX可以直接转换为BIN文件,但是 BIN要转化为HEX文件必须要给定一个基地址。

4- Intel HEX文件是记录文本行的ASCII文本文件,在Intel HEX文件中,每一行是一个HEX记录,由十六进制数组成的机器码或者数据常量,Intel HEX文件经常被用于将程序或数据传输
存储到ROM、EPROM,大多数编程器和模拟器使用Intel HEX文件。
记录格式
一个Intel HEX文件可以包含任意多的十六进制记录,每条记录有五个域,下面是一个记录的格式。
: llaaaatt[dd。。。]cc
每一组字母是独立的一域,每一个字母是一个十六进制数字,每一域至少由两个十六进制数字组成,下面是字节的描述。
: 冒号 是每一条Intel HEX记录的开始
ll 是这条记录的长度域,他表示数据(dd)的字节数目。
aaaa 是地址域,他表示数据的起始地址
<如果是数据记录,这表示将要烧录的这条记录中的数据在EPROM中的偏移地址, 对于不支持扩展段地址和扩展线性地址的,如89C51,这就是此条记录的起始地址>
tt 这个域表示这条HEX记录的类型,他有可能是下面这几种类型
00 —-数据记录
01 —-文件结束记录
02 —-扩展段地址记录
04 —-扩展线性地址记录
dd 是数据域,表示一个字节的数据,一个记录可能有多个数据字节,字节数目可以
查看ll域的说明
cc 是效验和域,表示记录的效验和,计算方法是将本条记录冒号开始的所有字母对 <不包括本效验字和冒号> 所表示的十六进制数字 <一对字母表示一个十六进制数,这样的一个十六进制数为一个字节> 都加起来然后模除256得到的余数最后求出余数的补码即是本效验字节cc。
<例如:
: 0300000002005E9D
cc=0×01+NOT((0×03+0×00+0×00+0×00+0×02+0×00+0×5E)%0×100)=0×01+0×9C=0×9D >
数据记录
Intel HEX文件由若干个数据记录组成,一个数据记录以一个回车和一个换行结束<回车为0×0d换行为0×0a>
比如下面的一条数据记录
: 10246200464C5549442050524F46494C4500464C33
10 是此行记录数据的字节数目
2462 是数据在内存<将要烧写的eprom地址>中的起始地址
00 是记录类型00(是一个数据记录)
464C 到 464C 是数据
33 是此行记录的效验和

5- BIN文件就是直接的二进制文件,内部没有地址标记。一般用编程器烧写时从00开始,而如果下载运行,则下载到编译时的地址即可。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1
回复

使用道具 举报

12

主题

66

帖子

538

积分

高级会员

Rank: 4

积分
538
QQ
沙发
发表于 2016-1-23 09:36:17 | 只看该作者
来给我们讲讲hex文件和bin文件的详细区别吧!
回复 支持 反对

使用道具 举报

299

主题

684

帖子

6998

积分

学生管理组

Rank: 8Rank: 8

积分
6998
板凳
发表于 2016-1-23 21:47:38 | 只看该作者
对头 这个用在哪里?
回复 支持 反对

使用道具 举报

16

主题

75

帖子

863

积分

版主

Rank: 7Rank: 7Rank: 7

积分
863
QQ
地板
 楼主| 发表于 2016-1-26 08:35:36 | 只看该作者
张金权-11级电子 发表于 2016-1-23 09:36
来给我们讲讲hex文件和bin文件的详细区别吧!

补充了下,
回复 支持 反对

使用道具 举报

12

主题

66

帖子

538

积分

高级会员

Rank: 4

积分
538
QQ
5#
发表于 2016-1-26 09:42:14 | 只看该作者

看起来Bin文件大小小于Hex文件
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|cqutlab ( 渝ICP备15004556号

GMT+8, 2024-12-22 01:24 , Processed in 0.185075 second(s), 31 queries .

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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