程序以前一直跑都没问题,现在出现错误:
Sat Jul 10 11:58:55 2010: The stack 'CSTACK' is filled to 90% (928 bytes used out of 1024). The warning threshold is set to 90.%
请问怎么回事?为什么突然就这样了?
我把CSTACK改大之后,居然filled to 95%了 - -!
Sat Jul 10 14:15:30 2010: The stack 'CSTACK' is filled to 95% (1952 bytes used out of 2048). The warning threshold is set to 90.%
纠结啊。。。这是为什么啊!!!
嵌套层数不宜太多,不过2楼说局部变量不宜用太多,不太理解
局部变量是在栈空间,所以去检查一下你的各个函数,估计是你在某个函数中定义了一个很大的数组
程序没改过,运行的时候正常,就是设置断点的时候,会出来那个
7# txcy
程序没改过,运行的时候正常,就是设置断点的时候,会出来那个
IAR EWARM有时候在改过设置后,程序没改动,会出现这种情况。最好把整个项目恢复到原来的状态,应该就可以了。另外,注意一下EWARM有没有升级过。
呵呵,因为我把堆栈从1024加到了2048发现还是有这个警告,我就感觉不是被占用的问题
仔细检查发现有个全局数组访问的时候越界了
问题解决,结贴给分!谢谢大家