[应用相关] IAR 生成的bin文件大于实际大小

[复制链接]
 楼主| 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文件会指定位置;
xia00 发表于 2018-10-31 20:20 | 显示全部楼层
但是不应该呀,正常来说hex比bin多包含了一些地址信息,会导致hex比bin更大。
hfdy01 发表于 2018-10-31 20:22 | 显示全部楼层
现在不明白的是,FLASH是256KB的空间,明明用仿真器下载完还能剩余空间,生成的bin文件却大的离谱。
CallReceiver 发表于 2018-10-31 20:23 | 显示全部楼层
一般是地址空间不连续导致的 ,建议你先看看map的情况
boy1990 发表于 2018-10-31 20:26 | 显示全部楼层
一般hex比bin多包含了一些地址信息,所以应该是hex比bin更大的
sourceInsight 发表于 2018-10-31 20:27 | 显示全部楼层
这个具体的我就不太清楚的了,一般是直接生成.hex文件的
zhouhuanの 发表于 2018-10-31 20:29 | 显示全部楼层
我也是直接开启编译,开启优化,没注意这个问题。
handleMessage 发表于 2018-10-31 20:30 | 显示全部楼层
还有头文件在hex里面。
handleMessage 发表于 2018-10-31 20:32 | 显示全部楼层
因为flash不够啊,只有256k,bin和hex文件又太大
bbapple 发表于 2018-10-31 20:32 | 显示全部楼层
这个真不知道怎么弄的,是不是编译器问题?
wanglaojii 发表于 2018-10-31 20:34 | 显示全部楼层
bin文件里面都是有保存地址吧
laozhongyi 发表于 2018-10-31 20:35 | 显示全部楼层
只要不影响正常使用,不用调整bin格式。
Edisons 发表于 2018-10-31 20:35 | 显示全部楼层
bin不能生产下载的程序大小。
Edisons 发表于 2018-10-31 20:35 | 显示全部楼层
CC debugger烧写是需要读写地址的。
_gege 发表于 2018-10-31 20:36 | 显示全部楼层
这个是大小跟下载大小没有关系
Mozarts 发表于 2018-10-31 20:37 | 显示全部楼层
十进制的程序应该比下载的程序要大多了。
hanzhen654 发表于 2018-10-31 21:10 | 显示全部楼层
那HEX文件有多大?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

424

主题

1616

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部

424

主题

1616

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部