定期保存实时数据及程序复执起始地址
如果程序有主循环,可在每次循环后将现场数据保存在内存某处并加以校验和。当复位后判断出是看门狗动作,可校验保存的现场数据是否变动,如未变动,则可恢复现场,重新运行,当然,上次出错前的数据是无法完全恢复了,但对一些实时控制来讲,已经可以满足连续运转的要求了。
如果没有主循环,则可用定时中断处理程序保存现场数据和断点位置,当然还要包括寄存器内容。
这种方法不能保证百分之百恢复成功,实际使用中,90%以上可以恢复运行。
发表时间:2003年4月7日23:23:28