看门狗的工作原理

[复制链接]
3998|24
 楼主| wangpe 发表于 2021-8-14 13:17 | 显示全部楼层 |阅读模式
有哪位大虾懂单片机看门狗的工作原理的
wangzsa 发表于 2021-8-14 13:20 | 显示全部楼层
软件看门狗
利用单片机片内的定时器/计数器单元作为看门狗,在单片机程序中适当地插入“喂狗”指令,即适时对定时器/计数器清零;当程序运行出现异常或进入死循环时,无法及时对定时器/计数器清零,则进入中断响应程序,在中断响应程序中将程序计数器赋予初始值,即强制性地使程序重新开始运行。
zhuww 发表于 2021-8-14 13:23 | 显示全部楼层
硬件看门狗
硬件看门狗是指一些集成化的专用看门狗电路,它实际上是一个特殊的定时器,当定时时间到时,发出溢出脉冲。从实现角度上看,该方式是一种软件与片外专用电路相结合的技术,硬件电路连接好以后,在程序中适当地插入一些看门狗复位的指令,即“喂狗”指令,保证程序正常运行时看门狗不溢出;而当程序运行异时,看门狗超时发出溢出脉冲,通过单片机的RESET引脚使单片机复位
jlyuan 发表于 2021-8-14 13:24 | 显示全部楼层
看门狗是抗干扰用的,但程序跑飞,它就回复位.
juventus9554 发表于 2021-8-14 13:26 | 显示全部楼层
曾经看到过有人这样形容看门狗:“看家的,谁不听话咬谁”  o(∩_∩)o...哈哈
wyjie 发表于 2021-8-14 13:28 | 显示全部楼层
看门狗  在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗"(watchdog)
 楼主| wangpe 发表于 2021-8-14 13:33 | 显示全部楼层
嗯,知道了
lium 发表于 2021-8-14 13:35 | 显示全部楼层
看门狗,又叫 watchdog timer,是一个定时器电路,一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就会给出一个复位信号到MCU,使MCU复位. 防止MCU死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。
工作原理:在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位,所以在使用有看门狗的芯片时要注意清看门狗。
stly 发表于 2021-8-14 13:37 | 显示全部楼层
MA805 如何精确定时,如1ms 或10ms
dingy 发表于 2021-8-14 13:40 | 显示全部楼层

啥意思啊
wuhany 发表于 2021-8-14 13:43 | 显示全部楼层
MA805的程序编译时,会先把C语言转化成汇编或机器语言
zhanghqi 发表于 2021-8-14 13:45 | 显示全部楼层
你可以根据你的晶振周期与机器语言关系应该可以计算出精确时间
gongche 发表于 2021-8-14 13:48 | 显示全部楼层
看门狗本身就是一个定时器的
chuxh 发表于 2021-8-14 13:50 | 显示全部楼层
只不过的我们需要在其定时器的时间点到来之前重新设置定时时间点的,不让定时器时间满足的
chuxh 发表于 2021-8-14 13:53 | 显示全部楼层
否则就会调起看门狗定时中断里面的复位程序的
chuxh 发表于 2021-8-14 13:56 | 显示全部楼层
这个没啥难度的哈
shimx 发表于 2021-8-14 13:58 | 显示全部楼层
硬狗跟软狗还是有一定的区别的
renyaq 发表于 2021-8-14 14:00 | 显示全部楼层
这个介绍比较详细的,,推荐下的
yszong 发表于 2021-8-14 14:05 | 显示全部楼层
只可意会而不可言传啊
renyaq 发表于 2021-8-14 14:07 | 显示全部楼层
用好了不容易啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

938

主题

9837

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部