下图电路作用是什么?看门狗电路的工作原理和作用是怎样的?

看门狗计时器:是用来防止万一单片机程序出错造成重大损失的计时器。防错的原理很简单,它在硬件上就是一个定时器,当它溢出的时候就会让单片机强制复位使程序重新开始执行。正常的情况下是不能让它溢出的,所以在程序上每隔一段时间要给他置一次值(俗称喂狗),只要程序中正常给它喂他就不会溢出。

电路,一般有一个输入,叫喂狗(kickingthedogorservicethedog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一端时间输出一个信号到喂狗端,给WDT清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),

定时超过,就会给出一个复位信 号到MCU,使MCU复位.防止MCU死机.看门狗的作用就是防止程序发生

,或者说程序跑飞。出于对单片机运行状态进行实时监测的考虑,产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗"(

))集成电路(MAX*9)的基础上,该电路提供了响应的输入脉冲流损失锁存故障指示。该电路可以监控风扇(上风扇的转速输出计算),

,或一个微处理器软件执行。

IC产生一个单一的,有限的输出脉冲持续时间当看门狗超时。这适用于触发复位或中断微处理器,但有些应用需要输出(故障指示灯)的

。一个简单的电路(图1)提供了响应的输入脉冲流损失锁存故障指示。在μP-supervisor/

集成电路(MAX*9)的基础上,该电路用于监测风扇(在风扇的转速输出计算),振荡电路,或一个合适的微处理器软件执行。

的稳定和复位超时时间到期。电容器C通过R,直到FET的

(电压VTH),它开启了

,使锁存能力。为了防止误触发,你应该设置RC延迟的时间远远超过了复位超时。

WDI输入(引脚6)必须按切换电容器CSWT设立最低速率。如果这没有发生,低电平有效复位变低,在

,在连接和低拉复位,从而锁定

复位。该电路仍然有效,直到你循环

或推开关在此条件。要么关闭FET的行动,并允许重置变高。

测速信号,从世界发展指标10kΩ的连接到VCC(引脚8)上拉电阻器。由于风扇需要一些时间来旋转起来,看门狗电路需要为一个短暂的延迟时间间隔停用。您可以通过将本延迟电容(C2)从对地复位。请注意,此延迟必须小于上述RC延迟,或

对于一个风扇监控,对CSWT值设置最大转速

根据公式5.06×106×CSWT,其中在几秒钟内CSWT。如果转速低于这个

时,低电平有效复位输出低和插销。

在正常操作期间,一次WDT超时溢出将产生一次器件复位。当器件处于休眠状态时,一次WDT超时溢出将唤醒器件,使其继续正常操作(即称作WDT唤醒)。对WDTE设置位清零可以永久性地关闭WDT。

分配完全是由软件控制,即它可在程序执行期间随时更改。为避免发生不可预测的器件复位,当从Timer0预分频器的分配改为WDT后分频器的分配时,必须执行下列指令序列。即使WDT被禁止,也要执行这个指令序列。

可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗"

看门狗电路电路的应用,使单片机可以在无人状态下实现连续工作,其工作原理是:看门狗芯片和单片机的一个I/O引脚相连,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段不进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位.

本回答由科学教育分类达人 尚秀秀推荐

看门狗,顾名思义,是帮你的程序看家,当你的程序有问题时,狗就要帮你复位了。复位电路只是作为外部手动复位的一种方式。而看门狗定时器的原理是,当你开启它后,它就会定时需要被设定一次,比如10ms,20ms等,称作喂狗,那么在程序正常运行时,正常喂狗了,它就会乖乖地,如果程序出问题,比如跑飞了,或者取指错误死机了,那么程序喂不了狗了,狗就会在定时时间到时认为你程序死了,就会自动进行复位了,其实一般小程序用不着看门狗,都是复杂的大程序用。

这么说,看门狗的作用就是实时监测,是一种动态复位咯?那复位电路的作用体现在哪里呢?看门狗不是已经可以实现复位了吗?为什么还要外部的复位电路呢?
 看门狗,是在你程序运行时用来监控程序的,是跟程序运行状态挂钩的。但是,你想想,除了这种情况下需要复位,你单片机系统刚通电的时候,需不需要复位,当你在调试的时候,需要让单片机重新运行程序,也需要复位吧?复位电路的输出信号就是RST,单片机一上电,复位电路中的电容开始充电,充电过程中,RST信号是使单片机复位的,充完电,RST就变成了高电平,复位信号取消,这就保证了在单片机一通电后从0000H地址开始运行程序的。有些复位电路里加了按钮,就是想通过按钮来改变RST电平使单片机复位。
总之,没有了外部复位电路,你的单片机上电后,都不知道使从哪里在运行程序,所有功能寄存器的值也就不确定,单片机就没法用了。因此复位电路是保证单片机可以运行的必要条件。

听你这么说,我感觉之前确实是对复位理解太狭隘了~~不过我对你说的那些关于RST信号高低什么的复位信号取消不取消什么的不是很理解耶~~不知道你是不是基于下面这个复位电路讲的呢?我用的就是这个复位电路哈~~

 那我就给你讲讲这个电路:
这个电路有两个功能:上电复位和按键复位。
上电复位:先不看按钮(就当它是开路),在单片机未上电时,VCC和地当然都不存在。现在,单片机上电,VCC有了,地也有了,但是RST瞬时应该是啥电平呢?因为电容两端的电压不能突变,所以RST瞬时值是VCC,也就是高电平,此时单片机进行复位,随着电容充电,慢慢的电势差被拉开了,RST端也逐渐接近地,也就是低电平,就不再起复位作用了。图中的电容、电阻值的选择就是为了让电容充电的时间满足单片机正常复位需要的高电平持续时间。
按键复位:现在,你的单片机程序已经正常运行了,当然由于电容的充电,RST端已经是低电平了,现在你需要复位一下单片机,怎么做?重新给单片机通电就可以,但是这种方法比较麻烦,为了方便,这里就加了一个按钮了。
当你按下按钮,RST端直接被R16电阻拉到高电平,进行复位,当释放按键时,RST又会被地拉回低电平,因此只要你按键时间够长,就产生了一个从高到低的电平变化区间,就复位了。一般复位时间记得好像是200个微秒就够了。

谢谢大神~~现在我已经彻底明白了复位电路的工作原理了~~但我就是不太清楚电容电阻值该怎么选取啊~~

  1. 假如我的晶振是11.0592MHz,那我该怎么选取电阻值和电容值呢?

  2. 加入我的晶振是12MHz呢?

  3. 电容一定要电解电容么?我好像用了非极性电容~~~

大神,最后一次追问了,希望能得到你的回答~~

 1、2、理论上,晶振越快,你的机器周期就越短,由于单片机复位需要RST上持续两个机器周期的高电平,因此需要的复位时间就越短。那么当晶振是12M时,需要2个微秒的高电平,是11.0592M时,需要2.17个微秒高电平。
复位电路的参数:R16只要能保证它在和R17分压时压降不多于0.5V就行.
R17和C13的组合严格的充放电计算公式比较复杂,但是可以用(3~5)RC来估算,你图中的参数是51复位常用的参数,时间远远超过了2个机器周期。
3、电容不一定非要电解电容,只要是能充放电、参数合适的电容都行,但是你用电解电容的话就得注意一定要把极性放对。

我要回帖

更多关于 看门狗电路的工作原理和作用 的文章

 

随机推荐