看门狗,顾名思义就是 实时监测单片机的程序是否允许正常,我是这样理解的,狗都会吃饭,正常情况下我们都会定时喂狗,写程序也一样,加入看门狗的时候,程序里面也需要喂狗(即清除看门狗定时器),一旦程序跑飞了,看门狗得不到清楚(饿了),就会发飙,这是单片机就会自动复位。又从跑飞状态进入正常状态了。


在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个 系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗" 为了防止程序跑飞或者死机,设置的复位电路,有硬件看门狗,也有软件看门狗,原理是隔一段时间要喂狗,如果程序跑飞或者死机将不能喂狗,从而产生复位,单片机从头开始执行程序.看门狗电路的应用,使单片机可以在无人状态下实现连续工作,其工作原理是:看门狗芯片和单片机的一个I/O引脚相连,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段不进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位.

在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗".
为了防止程序跑飞或者死机,设置的复位电路,有硬件看门狗,也有软件看门狗,原理是隔一段时间要喂狗,如果程序跑飞或者死机将不能喂狗,从而产生复位,单片机从头开始执行程序.
由于水平有限,如果您发现参考答案中有错误或者有需要补充的,请将您的答案或者建议发送至:master@eepw.com.cn


回复
打赏帖 | |
---|---|
【Zephyr】MCXN947 Zephyr 开发入门适配shell被打赏20分 | |
【我要开发板】6.联合MATLAB记录数据被打赏50分 | |
【瑞萨RA2E1开发板】:使用ADC功能实现位移传感器采集方案被打赏20分 | |
【nRF7002DK】基于sht30的温湿度计被打赏20分 | |
【nRF7002DK】日志打印被打赏20分 | |
rtthread硬件加密-5hash加密分析被打赏10分 | |
【STM32F769】SD卡驱动及其调试经验分享被打赏32分 | |
【分享开发笔记,赚取电动螺丝刀】使用看门狗降低系统隐藏bug触发概率被打赏18分 | |
【STM32F769】调试SD驱动,由于其时钟配置不对引起的错误以及排查记录被打赏35分 | |
【分享开发笔记,赚取电动螺丝刀】MCUXpressoConfigTools配置外设时的异常解决被打赏24分 |