导航:首页 > 操作系统 > 单片机看门狗

单片机看门狗

发布时间:2022-02-25 15:16:01

1. 单片机中的看门狗是什么东西,有什么作用

看门狗(WDT)是一个定时器。看门狗是用来防止万一单片机程序出错造成重大损失的。防错的原理很简单,它在硬件上就是一个定时器,当它溢出的时候就会让单片机强制复位使程序重新开始执行。

正常的情况下是不能让它溢出的,所以在程序上每隔一段时间要给他置一次值(俗称喂狗),只要程序中正常给它喂他就不会溢出。

一旦程序跑飞了,有干扰或者进入死循环之类的情况时,不能正常执行程序了,那么就永远执行不到喂狗的指令了,但此时定时器是硬件控制的,仍然会走,所以溢出了,单片机就复位了。

一般安全性要求比较高的,系统跑飞了会造成重大事故的都会加一个“狗”保安全。

通常,看门狗的溢出时间越短越灵敏,跑飞之后复位的时间越短,也就越安全,但是,喂狗的操作也要更频繁。

(1)单片机看门狗扩展阅读:

看门狗工作原理:

使用时,WDT将递增直到溢出或“超时”。 除非处于休眠或空闲模式,否则WDT超时将强制器件复位。 为避免WDT超时复位,用户必须使用PWRSAV或CLRWDT指令定期清除看门狗定时器。 如果WDT在休眠或空闲模式下超时。

器件将唤醒并从执行PWRSAV指令的位置继续执行代码。 在以上两种情况下,WDTO位(RCON <4>)将被置1,表明器件复位或唤醒事件是由WDT超时引起的。

如果WDT将CPU从睡眠或空闲模式唤醒,则还将置位“睡眠”状态位(RCON <3>)或“空闲”状态位(RCON <2>),表明该设备先前已上电。 保存模式。

在正常操作期间,WDT超时将产生设备复位。 当设备处于睡眠状态时,WDT超时将唤醒设备以继续正常操作(称为WDT唤醒)。 清零WDTE设置位可以永久关闭WDT。 后分频器分配完全由软件控制,也就是说,可以在程序执行期间随时更改它。

为避免不可预测的器件复位,当从Timer0预分频器分配更改为WDT后分频器分配时,必须执行以下指令序列。 即使禁止了WDT,也必须执行该指令序列。

2. 关于单片机看门狗

喂狗啊 向这个0x7012单元中表示一个寄存器啊!写入一个数据时表示进行了一次喂狗。这样养就不会因为没有喂狗而导致系统复位。单片机的喂狗是很重要的,防止程序跑飞。

3. 单片机中说的看门狗是什么

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

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

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

(3)单片机看门狗扩展阅读

工作原理

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

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

4. 简述51单片机看门狗电路的功能

看门狗电路基本功能是在发生软件问题和程序跑飞后使系统重新启动。看门狗计数器正常工作时自动计数,程序流程定期将...

5. 单片机的看门狗怎么用

复位会清除端口和特殊寄存器,不会影响RAM,与断电不同。

6. (单片机)外部看门狗是怎么实现的

你应该看一看一款具体的外部看门狗芯片的内部结构图,比如MAX706,他有一个引脚WDI,是看门狗计数器输入引脚,看门狗芯片不会去统计单片机输出的脉冲数,而是只检测在这个引脚上是否发生了电平翻转。
单片机需要控制这个引脚的电平保持高低不停的跳变。
一但看门狗启用,看门狗芯片内部的1.6秒计数器开始计数,如果WDI引脚上现在了电平反转,则复位计数器,如果在1.6秒的时间内没有在WDI引脚上检测到电平反转,看门狗芯片就会在RST引脚上输出一个200ms的低电平,复位目标MCU,然后复位他自己的计数器,重新开1.6秒计数,然后以上过程无限重复。

7. 单片机的看门狗怎么用

首先,你要知道什么是看门狗?在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗"(watchdog)。其次,看门狗的工作原理是什么?在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。所以在使用有看门狗的芯片时要注意清看门狗(俗称喂狗)。下面这段程序是我成功调试过了的,看门狗寄存器的各位的具体的意义,你可以自己去看下单片机的PDF文档,里面有详细的介绍.#include52系列单片机头文件#defineucharunsignedchar#defineuintunsignedintsfrWDT_CONTR=0xe1;/*看门狗寄存器声明*/sbitled1=P1^0;/*接发光二极管*/voiddelayms(uintxms)/*延时函数*/{uinti,j;for(i=xms;i>0;i--)/*i=xms即延时约xms毫秒*/for(j=110;j>0;j--);}voidmain(){WDT_CONTR=0x35;led1=0;delayms(500);led1=1;while(1){delayms(1000);//WDT_CONTR=0x35;/*喂狗,如果这句话不加的话单片机就会一直复位,看到的现象是发光二极管闪烁,加上这句的话,发光二极管一直亮着,所以在实际工程应用的时候通常要在程序里面调用比较频繁的函数内部写上这句话*/}}/*******************************************************************喂狗的技巧:如果一个大循环少于看门狗益处时间,放在while(1)哪个地方都可以啊,如果大于,看下哪个地方停顿时间长就放哪*********************************************************************/

8. 为什么单片机内部有看门狗电路,还在外面接看门狗芯片

那要看是什么类型的看门狗,如果是独立看门狗,自己有内部的时钟,就算系统时钟停止,照样工作,独立看门狗启动了就关不掉,不喂狗一定会咬到人。
但是窗口看门狗就不同了,他的时钟来源于系统时钟,当系统休眠停机,系统时钟关闭,窗口看门狗不喂狗也不会咬。这个设计适合低功耗的设计。
你说的为什么还要看门狗芯片,那就是看看具体设计中需要怎样的看门狗功能了,可能是你那设计是需要独立看门狗这种能力,但是单片机却只有窗口看门狗而没有独立看门狗。

9. STC单片机怎么加看门狗程序

加到While循环的最前面就可以了。
define Pre_scale_Word 0x3c //0.68s
sfr WDT_CONTR 0xc1;
..................................
while(1)
{
WDT_COUNTR=Pre_scale_Word;
....................................
}

阅读全文

与单片机看门狗相关的资料

热点内容
linux文件操作命令 浏览:121
安卓手机图片文件夹加锁 浏览:776
steam提示音在哪个文件夹 浏览:337
项目开发全程实录pdf 浏览:530
单片机reset 浏览:595
pdf怎么是英文 浏览:969
旗云2压缩机保险 浏览:374
做程序员压力大吗表情包 浏览:312
pdf下拉 浏览:371
php去掉小数后面的0 浏览:954
阿里备案买什么服务器 浏览:261
网络驱动下载到哪个文件夹 浏览:481
达内程序员培训西安 浏览:505
人保送车主惠app上怎么年检 浏览:604
android手机开机密码 浏览:480
linux查看某个进程命令 浏览:529
闲置的腾讯云服务器 浏览:438
rar压缩包mac 浏览:628
php混淆加密工具 浏览:582
java把数字拆分 浏览:465