iar下生成的bin文件和烧写如flash的信息局部有出入

2019-07-24 15:30发布

我用iar8.20生成的bin文件,输出的格式我选过raw-binary和simplecode,但是里面的信息有一部分跟用cc-debuger调试器直接烧写的不一样,甚至有缺漏。
偶然看到有个帖子说是生成的bin被加密了,请问如果真是这样该怎么关闭啊?
如果不是,那怎么生成正确的bin呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
dirtwillfly
1楼-- · 2019-07-24 15:44
 精彩回答 2  元偷偷看……
m503022388
2楼-- · 2019-07-24 17:06
dirtwillfly 发表于 2015-12-2 15:01
一般生成的bin文件都没问题的。只是因为链接顺序不同,包含的信息不同,优化的不同,造成不同的开发环境生 ...

我查看过我的bin档,发现里面每32k有效数据中间都有固定长度的一段信息,对比了下发现其中除了一个字节的表示序号以外其他都一样。不懂怎么搞得。。。iar生成bin都会这样吗?还是说编译的配置xcl文件不同导致的?
我现在是只能先编译生成hex然后用其他工具转换成bin,再手动剔除一大段0xff,勉强算是调通了。。。
xyz549040622
3楼-- · 2019-07-24 19:01
m503022388 发表于 2015-12-2 17:26
我查看过我的bin档,发现里面每32k有效数据中间都有固定长度的一段信息,对比了下发现其中除了一个字节的 ...

好牛逼的做法。用CCS试试,只要程序能调通,管他bin中塞进去什么东西了呢,这是编译器干的事情。
dirtwillfly
4楼-- · 2019-07-25 00:04
xyz549040622 发表于 2015-12-3 08:53
好牛逼的做法。用CCS试试,只要程序能调通,管他bin中塞进去什么东西了呢,这是编译器干的事情。 ...

是这理。楼主能力太强,编译器已经不是他的对手了;P
m503022388
5楼-- · 2019-07-25 00:43
xyz549040622 发表于 2015-12-3 08:53
好牛逼的做法。用CCS试试,只要程序能调通,管他bin中塞进去什么东西了呢,这是编译器干的事情。 ...

我觉得是编译器在生成hex的时候把空间扩大了一倍,导致每32k正确代码中间都有32k填充了0xff。而最后一页的那四行代码虽然看不懂,但是如果缺失就跑不了程序了,就是只能从boot LJMP到应用的main,但是main里面的东西就实现不了。这应该是编译配置文件搞的鬼,我功力太浅还不会改xcl文件,目前只能用这方法了,或者在原机上用读写flash的办法把数据全部扣出来。
xyz549040622
6楼-- · 2019-07-25 05:20
 精彩回答 2  元偷偷看……

一周热门 更多>