打印
[应用相关]

IAR 生成的bin文件大于实际大小

[复制链接]
2866|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
feiqi1|  楼主 | 2018-10-31 20:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用CC debugger烧完仿真看flash,空间还有剩80+kb,但是生成bin之后就300+kb,之前有勾选options->linker->output->format的第一个选项,bin居然高达2M!我用的是CC2530,FLASH只有256K,怎么能让bin生成实际大小啊?
沙发
litengg| | 2018-10-31 20:15 | 只看该作者
你的format选择的是hex吧,编辑器打开观察内容

使用特权

评论回复
板凳
qiangweii| | 2018-10-31 20:17 | 只看该作者
因为bin文件不包含数据地址信息,所以要整个数据填充.

使用特权

评论回复
地板
shashaa| | 2018-10-31 20:19 | 只看该作者
程序从0开始100个字节,还有一部分从10000开始100个字节,那么生成bin会从0直接到10100,中间会填充无用的数据;而hex文件会指定位置;

使用特权

评论回复
5
xia00| | 2018-10-31 20:20 | 只看该作者
但是不应该呀,正常来说hex比bin多包含了一些地址信息,会导致hex比bin更大。

使用特权

评论回复
6
hfdy01| | 2018-10-31 20:22 | 只看该作者
现在不明白的是,FLASH是256KB的空间,明明用仿真器下载完还能剩余空间,生成的bin文件却大的离谱。

使用特权

评论回复
7
CallReceiver| | 2018-10-31 20:23 | 只看该作者
一般是地址空间不连续导致的 ,建议你先看看map的情况

使用特权

评论回复
8
boy1990| | 2018-10-31 20:26 | 只看该作者
一般hex比bin多包含了一些地址信息,所以应该是hex比bin更大的

使用特权

评论回复
9
sourceInsight| | 2018-10-31 20:27 | 只看该作者
这个具体的我就不太清楚的了,一般是直接生成.hex文件的

使用特权

评论回复
10
zhouhuanの| | 2018-10-31 20:29 | 只看该作者
我也是直接开启编译,开启优化,没注意这个问题。

使用特权

评论回复
11
handleMessage| | 2018-10-31 20:30 | 只看该作者
还有头文件在hex里面。

使用特权

评论回复
12
handleMessage| | 2018-10-31 20:32 | 只看该作者
因为flash不够啊,只有256k,bin和hex文件又太大

使用特权

评论回复
13
bbapple| | 2018-10-31 20:32 | 只看该作者
这个真不知道怎么弄的,是不是编译器问题?

使用特权

评论回复
14
wanglaojii| | 2018-10-31 20:34 | 只看该作者
bin文件里面都是有保存地址吧

使用特权

评论回复
15
laozhongyi| | 2018-10-31 20:35 | 只看该作者
只要不影响正常使用,不用调整bin格式。

使用特权

评论回复
16
Edisons| | 2018-10-31 20:35 | 只看该作者
bin不能生产下载的程序大小。

使用特权

评论回复
17
Edisons| | 2018-10-31 20:35 | 只看该作者
CC debugger烧写是需要读写地址的。

使用特权

评论回复
18
_gege| | 2018-10-31 20:36 | 只看该作者
这个是大小跟下载大小没有关系

使用特权

评论回复
19
Mozarts| | 2018-10-31 20:37 | 只看该作者
十进制的程序应该比下载的程序要大多了。

使用特权

评论回复
20
hanzhen654| | 2018-10-31 21:10 | 只看该作者
那HEX文件有多大?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

424

主题

1616

帖子

1

粉丝