用ICC AVR7.22重新编译一下前人的工程文件运行不正常

2019-03-24 20:21发布

以前用过其它单片机,没用过AVR,这次换了新工作,刚好有个项目需要做小改动。原来写这个项目的工程师已经离职,无法联系了。留下的源代码,我看了是ICC AVR的工程,型号是:Atmega128。他的程序我能看得懂,但是现在卡在编译这个地方。就是我用他留下的eep文件和hex文件烧录到板子里,就能正常工作。如果我用ICC AVR 7.22重新编译一下他的工程,代码即使不做任何修改。编译出来的eep文件和hex文件,烧录到板子里不能正常运行。发现我的hex文件跟他hex文件大小也不一样了,比他原来的要小6k,不知是怎么回事,项目紧急。请求大侠帮忙解答一下。我将感恩不尽。谢谢了。烧录时各项的配置都是严格按照他留下的烧录配置说明来操作的。他原来的文件烧录能用,我重新编译的烧录就是不能正常运行。另外,在ICC AVR选择器件那里有这样"ATMega128(Please see NOTES)" ,括号里的这个提示不知是要看哪里呢,我找不到,是不是这里还有什么要注意的呢。我用的是win7系统的。
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
dcexpert
1楼-- · 2019-03-25 03:33
 精彩回答 2  元偷偷看……
haozi100
2楼-- · 2019-03-25 06:55
dcexpert 发表于 2014-12-9 09:43
你的描述太简单了,不太好分析原因。
哪里没说清楚呢?
dcexpert
3楼-- · 2019-03-25 10:10
只有问题现象,没有问题的环境,以及相关的配置。这样是无法分析的。
haozi100
4楼-- · 2019-03-25 11:40
dcexpert 发表于 2014-12-9 11:53
只有问题现象,没有问题的环境,以及相关的配置。这样是无法分析的。
不好意思,刚接触ICC AVR.我的设置是这样的: 1111.PNG

我使用的是默认设置。他这个程序代码比较大,而且还牵涉到很多较为复杂的运算。不知还需要做哪些设置。帮我看一下。非常感谢。不知还需不需要其他的信息呢?
dcexpert
5楼-- · 2019-03-25 14:08
这个图看不出太多东西。可能需要注意的地方有:
  • 编译优化,这样造成的结果可能有一些区别;
  • 一些宏定义的设置。有时为了方便调试,会在程序中设置一些宏。调试时打开,最终产品时关闭。这样产生的代码也会不同
  • 编译器的版本,不同版本产生的结果往往不一样。
454358704
6楼-- · 2019-03-25 19:53
开始遇到了同样的问题,但是解决了。我忘记把project>options>target里的device configuration 设置为ATmega16。

一周热门 更多>