sinoway 发表于 2008-6-13 22:59:04

调用子函数时都提示: Stack Overflow at (0x00c7)

AVR Simulator: Uninitialized stack pointer used at 0x0502
AVR Simulator: Stack Overflow at 0x02cf
请问
我的128在仿真的时候
每次调用子函数时都提示:
AVR Simulator: Stack Overflow at (0x00c7)
用JTAG下载时,程序只能停在调用子函数之前
这是怎么回事
该怎么办
堆栈溢出?为何编译无提示呢?
烧录后程序运行也不正常。
各位大侠,请赐教啊!

machao 发表于 2008-6-14 12:54:45

1.堆栈是否溢出,通常编译系统无法知道,也就给不出提示.

2.根据你的描述,可能你的工程生成中配置有些问题,如芯片选择等.因为128的RAM算大了,一般不会溢出,除非你的程序中使用了深层的递归结构.检查你的堆栈指针设置,溶丝的配置等.

sinoway 发表于 2008-6-15 19:54:02

您太厉害了
是片子选择有问题
问题已经解决
谢谢您
页: [1]
查看完整版本: 调用子函数时都提示: Stack Overflow at (0x00c7)