首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

请教XDT256程序运行中遇到的疑难问题

请教XDT256程序运行中遇到的疑难问题

本帖最后由 zones 于 2010-1-9 09:43 编辑

最近用XDT256写了一个编译前大约130K的程序,实际运行过程中,有时出现异常情况.发现主程序在调用子程序时,没有按照规定的顺序调用,例如下面的例子,当程序运行到C时,本来应该接着运行D程序,但是却没有继续运行,程序又回到了for循环之外重新初始化然后再进入A开始继续运行.郁闷啊,请高手帮忙.
mai()
{
...
...
for(;;)
{
A();
B();
C();
D();
E();
}
}
请高手帮帮啊
有可能是函数C的格式中有问题,也有可能是执行函数C时堆栈溢出。你可以将函数C改写成一个简单的函数试试。
海纳百川  有容乃大
本帖最后由 zones 于 2010-1-11 23:00 编辑

首先,感谢版主!
调试过程中总提示C函数:
SP debug info incorrect because of optimization or inline assembler

函数C 打印出来,大约是占4页纸,而且是用SWITCH(){}
编写的.

请问版主是否跟这有关呢?
明显是堆栈溢出,你那个函数是否里面有类似的递归调用呢,
mc9s12xdt256cag 原装香港现货价格38元 有兴趣欢迎联系 深圳金信通 罗晓娜0755-82709601 QQ:727610097
www.hkkct.com QQ727610097 XILINX FREESCALE
本帖最后由 mcu2007 于 2010-3-17 11:40 编辑

还有你的编译设置是不是有问题的,我以前用的PIC时也出现过这样的问题,有可能在C函数的下方加个空指令就好了;但是程序在编译后的确是有问题的。
返回列表