[求助]老天,救救我吧!!! 由于干扰因素,中断陷入了死循环。
假设更高优先级的中断发现了这种情况,应该如何处理呢?
为了不至于mcu管脚状态发生变化,所以不能用软reset。
怎么才能使程序放弃死循环的中断,而重新从0x00执行呢

you'll use a Watchdog.
硬件wdt会使管角状态发生变化,现在的问题就是使用软件wdt时遇到的。
硬件复位
我来答你。
不是太明白你的意思?| 以下是引用WWONGKEN在2004-7-8 7:05:40的发言: 我来答你。必须加上硬件看门狗。 (1)如果你担心在复位的时候将引脚的状态复位而引起误动作, 硬件设计时请注意I/O复位的初始状态设计。 //什么意思?你是说在管脚上加电容滤波么? (2)如果你不想因复位而将引脚的运行状态改变,你必须再加上 非易失性的存储器,将运行的状态保存下来,以便在复位的时候 及时恢复它。 //这个对我的程序影响不大,我的程序运行到一定的位置,状态会自动跑到正确的状态。 |
这个问题应该是处理MCU抗干扰的最基本的问题了, 请大家帮帮忙啊!
楼上朋友说的对
这个嘛~
管脚状态我可以保存,但又有什么用呢?
滤波电容?
我不是在上个帖子说得很清楚么?reset后,未初始化前管脚状态为默认初始态。
可不可以尝试在高级别的中断里修改堆栈的中
这个嘛~
楼主不是说有高级别的中断嘛?!
这个嘛
没有碰到过。我想除非程序修改了中断设置或
中断允许位也是可能被干扰得,可以采用相互依赖得处理方式来避免跑飞
除非程序特意置位,否则中断允许位全部是由
啊,对不起,我想说的是中断请求位。至于您
勉强有了解决办法只是判断中断是否被挂起,大家是否有有效的方法呢?
旁生的一个问题,如何把$的常量表达式分两次压入堆栈呢? 用asm。