搞了半天,原来是AVR的堆栈溢出
今天调试AVR的一个程序,编译下载都没问题,但程序运行到某个阶段就复位了,经过一步步分析,原来是在运行到做一些复杂的运算时复位的,就怀疑是不是内存或堆栈溢出了,http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_608214F8XNUE.jpg(原文件名:未命名.jpg)
后来把这两个值改成64和32,果然就OK了。
这里想问下,这个手工设置的堆栈,太容易存在隐患了,有没有可以提前计算好,或者别的方法? 关注! 同上 补充一下,用的是IAR 5.3版本的环境! 我觉得,我程序中,有时候Ram变化了,可能也是这个默认值为 16 的问题。
页:
[1]