PIC单片机看门狗程序,关闭看门狗程序正常,打开后异常。请指点错误之处,谢谢 代码如下

PIC单片机看门狗程序,关闭看门狗程序正常,打开后异常。请指点错误之处,谢谢 代码如下,第1张

中断的占用时间过长,也就是清狗程序不够及时。建议不要用延时,想其他的办法去解决这个问题为好。本身单片机的速度就不快,还延时就让单片机的休息时间过多,效率自然就不高了。

就好比楼主请个人给你做事,本省这个人做事就不怎么快,你还让他经常休息,你说能帮你做好事情么?开个玩笑,帮助理解的!~

单片机中的看门狗指的是一个定时器电路,有一个输入和一个输出,其中输入叫做喂狗,输出连接到另外一个部分的复位端。

看门狗的功能是定期的查看芯片内部的情况,一旦发生错误就向芯片发出重启信号。看门狗命令在程序的中断中拥有最高的优先级。

在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成各种寄存器和内存的数据混乱,会导致程序指针错误,不在程序区,取出错误的程序指令等,都有可能会陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续正常工作,导致整个系统的陷入停滞状态,发生不可预料的后果。

扩展资料

工作原理

使用时,WDT将递增,直到溢出,或称“超时”。除非处于休眠或空闲模式,WDT 超时会强制器件复位。为避免WDT超时复位,用户必须定期用PWRSAV 或CLRWDT 指令将看门狗定时器清零。如果WDT 在休眠或空闲模式下超时,器件将唤醒并从PWRSAV 指令执行处继续执行代码。

在上述两种情况下,WDTO 位(RCON<4>)都会置1,表示该器件复位或唤醒事件是由于WDT超时引起的。如果WDT 将CPU从休眠或空闲模式唤醒,“休眠”状态位(RCON<3>)或“空闲”状态位(RCON<2>)也会置1,表示器件之前处于省电模式。

参考资料来源:百度百科-看门狗 (监控芯片)

参考资料来源:百度百科-看门狗定时器


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/7911258.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存