
看门狗电路的应用,使单片机可以在无人状态下实现连续工作,其工作原理是:看门狗芯片和单片机的一个I/O引脚相连,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段
进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位。
编辑本段基本原理
看门狗,又叫
watchdog
timer,是一个定时器电路,
一般有一个输入,叫喂狗(kicking
the
dog
or
service
the
dog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给
WDT
清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT
定时超过,就会给出一个复位信号到MCU,使MCU复位.
防止MCU死机.
看门狗的作用就是防止程序发生死循环,或者说程序跑飞。
工作原理:在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。所以在使用有看门狗的芯片时要注意清看门狗。
// WDRST = 0x1E// WDRST = 0xE1
这两句是喂狗指令,也只有AT89C52系列单片机才有这个指令。溢出时间是固定的,溢出会导致mcu复位,所以需要在程序中不断喂狗。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)