Board logo

标题: [求助]关于堆栈的问题! [打印本页]

作者: wangnan    时间: 2008-7-4 22:22     标题: [求助]关于堆栈的问题!

目前在设计故障处理中断程序,希望在中断程序中直接跳转的主程序的某行运行,实现故障后重启的功能。只是不知道,在中断程序中直接跳转离开中断程序,堆栈应该如何处理?

或者,请大家指点下,有没有更好的方法实现我说的触发中断后,直接引起系统软复位的好办法!


作者: wangnan    时间: 2008-7-7 22:18

我想了个笨办法,不知道是否可行?将相邻堆栈的内容弹出后进行比较,直到相等则认为堆栈已经清空,此时可以使用goto语句强制跳转。

抛砖引玉,希望大家说说自己的处理方法,让新人们也学习一下。谢谢!


作者: strongchen    时间: 2008-7-8 10:16

既然这个故障中断并非复位,说明不是严重的问题,那么系统不一定需要重启,进行相应的处理就可以了。

如果一定要重启,那要看是否要进行硬件的复位。如果需要,可以采用看门狗,或错误指令复位等方法。


作者: wangnan    时间: 2008-7-8 22:47

采用看门狗和错误指令等等这些复位都是CPU复位,整个程序重新运行,我需要的是从程序的某个特定位置开始重新运行啊。因为还有与另一个CPU之间的一些数据交换,通过硬线(IO口)实现的,如果CPU复位的话,这些IO状态不受控,出现错误数据传送啊!




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0