maleon 发表于 2008-12-19 08:21:12

急,求教一下这个ICC编译错误【恢复】

编译错误提示如下:

D:\iccv7avr\bin\iccavr  -e -D__ICC_VERSION="7.14C" -DATMEGA -DATMega64  -l -g -Mavr_enhanced  -e:0x10000 -ucrtatmega.o -bfunc_lit:0x8c.0x10000 -dram_end:0x10ff -bdata:0x100.0x10ff -dhwstk_size:30 -beeprom:0.2048 -fihx_coff -S2 main-24.c  -lcatmega

The instruction at 0x0045a316 referenced memory at 0x00000004.The memory could not be read.iccavr: can't execute ~D:\iccv7avr\bin\iccomavr.exe'

Done: there are error(s). Exit code: 100. Fri Dec 19 08:07:09 2008



偶的是M64,原来编译通过,大约占用了70%左右的资源,后来偶又添加了一些,估摸着也就5、6K左右吧,就出现这个错误提示,看英文提示说是该指令在0X0045A316引用内存0X00000004,该处内存不能为读,偶找了一天加大半夜也不知道是在哪,不像语法提示错误在哪行什么的比较好确定,忘高手赐教,急谢谢了~~~~



ICC是7.14C的版本,COMPILER OPTIONS 里偶都是默认选项,INTERNAL SRAM,偶也怀疑是不是超出容量限制什么的,拿M128编译也是这个错误提示,而原来没添加后写的几K程序的老程序在64和128下都可以编译通过。

maleon 发表于 2008-12-19 10:25:10

好像不行啊,偶换成M640或M1281,除了提醒一些寄存器设置错误外,还是有那句内存错误的提示,偶现在只能找回原来的文件,编译通过是占用了71%,偶现在只能慢慢加进一些后来添加的子程序进去,慢慢编译看到底到哪才出错了,唉

mingyuexin1981 发表于 2008-12-19 09:05:15

是不是ram资源不够了?m128和m64的人ram一样啊

你可以看看.mp文件,看看ram费用量,问题多半在这
页: [1]
查看完整版本: 急,求教一下这个ICC编译错误【恢复】