看门狗技术
看门狗技术
计算机控制系统容易受干扰而出现死机。虽然概率很小,但是危害极大。
写控制程序时,首先要排除逻辑错误。如果程序本身有隐含错误,则后续的手段只是为不好的基础补补台而已。若故障频繁,在复杂运行环境中,难免顾此失彼,影响效率,甚至不能正常运行。
在程序充分验证后,需要加上看门狗(WDT)技术。程序根据运行的不同阶段,根据所需要的运行时间,合理喂狗,至少下次喂狗之前,狗不至于饿着。也不能喂太饱,万一程序飞了,狗不饿,就不会叫,等它饿了,一切都太晚了,系统因为未能及时恢复而失效。
这里的狗,就是一个时钟完全独立于CPU的一个器件。设置看门狗定时器,定时喂狗,就是基本的动作。找工作时,有的考官会问,应该在那里喂狗?答案给两个选择:主循环或中断。答中断的都错了,因为很多情况下,即使主程序飞了,中断依然能够到达,于是看门狗就形同虚设。
看门狗的关键学问,是要在程序运行的每个步骤中,记录当前的状态和参数,使得看门狗复位后,知道恢复得起点。
成功的系统,不是不死机,而是总能在没人察觉的情况下,又从死机状态恢复。
死机是小概率事件,但是,小概率不等于不发生。但是,既然是小概率问题,它就不会老是发生,因此采取措施后,总能达到满意的效果。
早年做答辩秘书,老师问,计算机死机后怎么办?哥们答:“按复位键!”。几位老师大笑。
在连续控制中,是不可以的依赖人工按复位键的。要人盯着的系统,不能算真正的自动控制系统。因此,许多系统甚至不设复位键。 没有复位键的麻烦是,如果手机死机,并且没有电源开关,我们总要把电池抠出来,但是不会致命。
PMIC看门狗的应用
广州周立功单片机科技有限公司
文库资料
©2018 Guangzhou ZHIYUAN Electronics Stock Co., Ltd. 文章源自广州周立功单片机科技有限公司,转载或引用请注明出处 1 NXP PMIC 看门狗的应用 PMIC(Power Management IC)集成了电源管理、系统控制、电池管理、接口和音频功能及其他系统专用功能,可为各种设备提供最佳集成,其采用高性能处理技术,提供可延长电池使用时间并降低功耗的高效解决方案。 电源是系统的重要组成部分,电源的调试又是工程师们最头痛的问题之一,读者中有没有遇到过棘手的问题呢?最近,小编在调试某平台时,遇到一个很诡异的现象:PMIC输出几秒,突然又断开几秒,紧接着又开始输出,如此循环,并且很有规律性。 小编在分析问题之前,先展示一下这颗非常具有潜力的PMIC-FS8530器件。PMIC最高支持ASIL-D的安全等级,其具有故障安全输出机制,支持多输出轨、输出电压可配置及工作频率和上电时序可设置,并且支持看门狗监控等体现安全的功能。 三路低压Buck,两路线性稳压器(LDO); 通过SPI或I2C接口进行配置和诊断执行; 通过OTP编程进行配置; 广州周立功单片机科技有限公司
文库资料 ©2018 Guangzhou ZHIYUAN Electronics Stock Co., Ltd. 文章源自广州周立功单片机科技有限公司,转载或引用请注明出处 2 NXP VPRE同步降压控制器,带有外部MOSFET,可配置的输出电压,开关频率,最高10A峰值的电流能力; 低压集成同步BUCK1/2转换器。可配置的输出电压,电流能力高达3.6A峰值。BUCK1/2的多相功能可在单轨上将电流能力扩展至7.2A峰值; 具有独立监控电路的ASIL-D,用于MCU监控的专用接口,具有watchdog,复位和中断,内置自检,故障安全输出功能。 回归正题,继续文章开始的问题。开始排查了PMIC的Reset,Wake等信号,都没发现异常,鉴于输出波形的规律性,经过小编的苦苦研究,问题终于找到,原因出现在这里: 由于OTP时启用了Challenger watchdog监视功能。Challenger watchdog基于MCU的question/answer流程。在FS8530中通过LFSR(Linear Feedback Shift Register)实现生成16位伪随机字。MCU可以在INIT_FS阶段发送LFSR的seed或使用FS85生成的LFSR,并执行预定义的计算。在watchdog OPEN窗口期间通过SPI / I2C发送,并由FS8530验证结果。当结果正确时,将重新启动watchdog程序窗口并生成新的LFSR。当结果错误时,watchdog错误计数器递增,watchdog窗口重新启动并且LFSR值不会改变。 在初始化阶段(INIT_FS)期间,MCU发送LFSR的seed,或使用由WD_SEED寄存器中提供的FS8530(0x5AB2)生成的默认LFSR值。使用此LFSR,MCU根据以下公式执行简单计算,并将结果发送到WD_ANSWER寄存器。 watchdog错误策略适用于Challenger watchdog和Simple watchdog。watchdog错误计数器在设备中实现,用来过滤不正确的watchdog刷新。每次发生watchdog故障时,器件将此计数器递增2;每次正确刷新watchdog时,watchdog错误计数器将递减1。此原则可确保循环“OK / NOK”行为收敛到故障检测。为了实现应用程序的灵活性,此计数器的最大值可在INIT_FS阶段使用WD_ERR_LIMIT [1:0]位进行配置。 根据以上原因分析,解决该问题有两个方法: 1、使用Debug模式,此时,看门狗窗口完全打开,故障安全状态机的深度故障保护请求(DFS = 1)被屏蔽,RSTB引脚的8s定时器监控被禁用,不需要看门狗刷新(仅限于调试时使用); 2、MCU/CPU通过I2C/SPI在INIT_FS阶段发送LFSR的seed或使用FS8530生成的LFSR,并执行预定义的计算,避免watchdog错误次数达到预定值而复位,导致断断续续输出。 在清晰了PMIC工作的机制后,解决问题就水到渠成了。在往常,看门狗一般应用于主控MCU的安全性监控,但随着汽车设计安全性的需求越来越高,节点系统的各个部分将拥有越来越多的安全机制,我们将在后续的文章中一一为大家呈现。
基于单片机“看门狗”抗干扰技术的探讨
2006年8月 第23卷第8期 湖北教育学院学报 Journal of Hubei Institute of Education Aug.2006 V01.23 No.8
基于单片机“看门狗"抗干扰技术的探讨
黄晓明
(湖北教育学院物理与电子工程系,武汉430205)
摘要:在实验中开发出来的各种控制小系统经常会出现运行不稳定、死机或停不了机即程序跑飞等现象,这是由于恶 劣的工业现场环境如大功率感性负载的干扰所至。基于单片机的“看门狗”技术能解决这个问题。本文将通过应用 实例,分别介绍用软件和硬件来实现“看门狗”技术。为技术人员在单片机开发过程中出现的干扰现象提供一个有效 的解决思路。 关键词:AT89C2051;CD4060;单片机抗干扰;“看门狗”技术
中图分类号:F746.6 文献标识码:A 文章编号:1007—1687(2006)08—0055—02 作者简介:黄晓明,男,讲师。
目前在工业生产中广泛使用工业控制单片机AT89C2051 来进行生产设备的智能控制,由于在工业现场存在着大功率 感性负载的干扰,因此单片机在运行过程时,很容易出现死 机、停不了机即程序突然跑飞等非正常的不安全工作情况。 为了解决这个问题,一般分别采用软件或硬件(CD4060)的手 段来实施“看门狗”技术,从而实现单片机安全、可靠的工作。
本文将通过应用实例分别对软件“看门狗”和硬件“看门狗” 技术作一个探讨。 1软件“看门狗”技术的实现 当系统的CPU部件受到干扰信号的作用时,将使系统失 控。最典型的故障是破坏程序计数器Pc的状态值,导致程序
在地址空间内“乱飞”,或者陷入死循环。本文重点讨论“看门 狗”技术对此类干扰现象的消除功能。 软件“看门狗”技术的原理是因为在一般情况下,程序跑 飞或者陷入“死循环”时,中断功能可能不受影响,CPU仍然像 正常运行时一样响应和执行中断子程序。这时如果仅在中断 子程序中插有“喂狗”指令,则“看门狗”定时器始终处于正常 无溢出状态,无法对已经混乱的单片机系统重新启动以回复 到正常运转状态。若将“喂狗”指令单独插在主程序中显然又 是不够的。我们可以将“喂狗”指令分解开来,将取反指令变 成置位和清零两种指令(即SETB P1。0和CLR P1.0),将置位 指令插在主程序中(利用T1监控),而将清零指令插在中断子 程序中(利用110监控),这样将两者结合起来,缺一不可。因 此无论是主程序运行失效,还是中断请求失效,都不能完成完 整的“喂狗”指令,从而造成“看门狗”动作,确保了系统安全
基于FPGA的快速响应看门狗电路设计
基于FPGA的快速响应看门狗电路设计
随着信息技术的快速发展,人们对计算机技术的要求越来越高,尤其是对计算机的可靠性和稳定性要求也越来越高。随着计算机系统的规模和复杂度的不断增加,其稳定性和可靠性越来越成为一个关键的问题,因此,为了保证计算机系统的稳定性和可靠性,在计算机系统中引入了看门狗电路(Watchdog
Circuit)。
看门狗电路是一种在计算机系统中用于监视系统正常工作的状态的电路,如果系统在设定的时间内没有收到看门狗的重置信号,就会自动重启。看门狗电路的主要作用是在系统出现异常或死机时,通过自动重启系统,恢复其正常工作。看门狗电路的原理非常简单,就是在系统上增加一个外部硬件电路,这个电路在系统正常工作时,定期向系统发送维持信号,如果系统在设定的时间内没有收到看门狗的维持信号,就会自动重启系统。
在基于FPGA的快速响应看门狗电路设计中,我们需要考虑到以下几点:
1、看门狗电路的超时时间设定要合理。超时时间的设定是看门狗电路设计的关键一步,一般来说,超时时间的设置要根据系统的响应时间以及稳定性来设定。
2、看门狗电路的维持信号要稳定可靠。看门狗电路的维持信号是用来判断系统是否正常工作的关键信号,因此,维持信号的稳定性和可靠性非常重要。
3、看门狗电路的复位时间要合理。看门狗电路的复位时间是指在系统发生异常时,看门狗电路自动重启系统的时间,一般来说,复位时间的设定要根据系统的工作需求和实际情况来合理分配。
基于FPGA的快速响应看门狗电路设计,其实现过程包括设计、仿真和测试。设计阶段主要包括硬件电路设计和软件程序设计两个部分,硬件电路设计主要是设计看门狗电路的超时时间、复位时间、维持信号等关键性能参数;而软件程序设计主要是编写看门狗电路的控制程序,实现看门狗电路的正常工作。仿真阶段主要是对设计的看门狗电路进行仿真验证,测试阶段则是将设计的看门狗电路进行实际测试,检验其性能表现。
总的来说,基于FPGA的快速响应看门狗电路设计,可以有效提高计算机系统的稳定性和可靠性,在计算机系统出现异常或死机时,自动重启系统,恢复系统正常工作。同时,基于FPGA的快速响应看门狗电路设计还具备响应速度快、适用范围广、可定制性强等优点,是一种值得推广和应用的电路设计方案。
MAX813L芯片中文资料(看门狗及复位专用芯片)
. . .
. . . . . MAX813L芯片中文资料(看门狗及复位专用芯片)
1 MAX813L芯片及其工作原理
1.1 MAX813L芯片特点
· 加电、掉电以及供电电压下降情况下的复位输出,复位脉冲宽度典型值为200 ms。
· 独立的看门狗输出,如果看门狗输入在1.6 s未被触发,其输出将变为高电平。
· 1.25 V门限值检测器,用于电源故障报警、电池低电压检测或+5 V以外的电源*。
· 门限电压为4.65V
· 低电平有效的手动复位输入。
· 8引脚DIP封装。
1.2 MAX813L的引脚及功能
1.2.1 MAX813L芯片引脚排列见图1—1
1.2.2 引脚功能及工作原理说明 . . .
. . . . . (1)手动复位输入端()
当该端输入低电平保持140 ms以上,MAX813L就输出复位信号.该输入端的最小输入脉宽要求可以有效地消除开关的抖动。与
TTL/CMOS兼容。
(2)工作电源端(VCC):接+5V电源。
(3)电源接地端(GND):接0 V参考电平。
(4)电源故障输入端(PFI)
当该端输入电压低于1.25 V时,5号引脚输出端的信号由高电平变为低电平。
(5)电源故障输出端()
电源正常时,保持高电平,电源电压变低或掉电时,输出由高电平变为低电平。
(6)看门狗信号输入端(WDI)
程序正常运行时,必须在小于1.6 s的时间间隔向该输入端发送一个脉冲信号,以清除芯片部的看门狗定时器。若超过1.6 s该输
一文读懂STM32f030c8t6单片机ADC模拟看门狗的使用
一文读懂STM32f030c8t6单片机ADC模拟看门狗的使用
STM32f030c8t6单片机ADC模拟看门狗使用
根据st官方手册提供描述不难看出,ADC模拟看门狗其实就是用户可以设置一个AD值上下限值,然后打开此模拟看门狗中断开关,那么就会在检测到当IO输入转换AD值小于下限值或大于上限值时进入相应的中断函数。大致就是这么一个功能实现过程。
根据表63可以看出,模拟看门狗可以设置为多通道和单通道模式,即可以通过设置相应的寄存器位来选择某一通道或多通道打开模拟看门狗检测。
那么明白了以上这些基础规则,那么我就要根据官方提供的库文件及里面的使用说明来配置相应函数来使用模拟看门狗。
打开此文件后下一步:
看!在这个官方提供的.c文件里面已经有介绍关于模拟看门狗使用的详细介绍的,只要理解了英文描述的意义,结合之前看数据手册关于ADC模拟看门狗的描述就会很快的完成模拟看门狗的配置程序。
下面即是完成的模拟看门狗配置函数:
最后还不要忘记加入打开看门狗中断的函数:
ADC_ITConfig(ADC1,ADC_IT_AWD,ENABLE);
完整的配置过程如下:
voidNVIC_Config(void)
{
NVIC_InitTypeDefNVIC_InitStructure;
NVIC_InitStructure.NVIC_IRQChannelPriority=3;//先占优先级1级
基于CPLD技术的看门狗电路的设计
电子工程师 .28 No.8 2002
基于CPLD技术的看门狗电路的设计 The Design of a Watchdog Circuit Based on CPLD 南京集成电路研究所 (南京210017) 王大海
1引言 2工作原理 随着现代电子技术的发展,带有各种微处理的现 代电子设备已广泛应用于国民生产的各行各业中。但 随着设备功能越来越强大,程序结构越来越复杂,指令 代码越来越长,加之现场工作环境的干扰,设备失控, 程序“走飞”,各功能模块“死机”的概率也同样成倍地 增加。对此,常见的解决方法是在电路设计时放置一片 硬件看门狗(Watchdog)电路,其目的是在系统“走死” 后能强制系统复位并返回初始化程序。随着CPLD器 件被广泛应用于各种仪器、仪表设备的设计中,而且 CPLD几乎可模拟任何一种逻辑电路,所以,现在在设 计时已完全没有必要再放置一片独立的看门狗器件, 而完全可以将硬件看门狗电路整合于CPLD器件中, 从而节省成本,降低系统的设计风险。下面具体介绍这 种基于CPLD技术的看门狗电路的设计。 CPLD是英文Complex Programmable Logic Device的缩写,中文名称为复杂可编程逻辑器件,因 其具有工作效率高、内部延时小、可预测延时等特点, 而被广泛应用于计数器、逻辑电路、控制电路和复杂的 状态机等功能的实现,而看门狗电路的核心就是一个 计数定时电路,所以,利用CPLD特点将能很好地实 现看门狗电路的功能。看门狗电路的原理框图如图1 所示。它在结构上可分为分频电路、计数定时电路和复 位电路三大部分,其工作方式是将一个32768Hz的方 波时钟输入分频电路,分频后的方波再输入到计数定 时电路中进行计数,同时与已设置好的计数时间常数 相比较,当CPU在指定的时间内没有通过改变CS端 状态来将计数定时器清零,一旦计数值与预先设定的 值相一致,计数定时电路将产生一个高电平给复位电
C51单片机看门狗程序优化设计
龙源期刊网
C51单片机看门狗程序优化设计
作者:窦群
来源:《中国新技术新产品》2013年第14期
摘 要:影响单片机构的微型计算机系统正常运作的原因很多。比如外界电磁场干扰导致微型计算机程序运行不稳定,从而导致程序的不合理运行,从而导致了运作环境的不稳定,不利于单片机控制系统的正常运行。为了实现单片机运行状态的良好监控,我们需要看门狗进行监控,确保其单片机程序的正常运行。
关键词:看门狗;程序设计;管理深化;方案优化
中图分类号:TJ43 文献标识码:A
经济的发展,促进了科学技术的不断延伸,C51系统的单片机也在不断的发展,这大大满足了实际工作的需要,也不可避免的带来了一些弊端。比如单片及芯片的抗干扰现象,这种现象不利于智能型仪表单片机系统的稳定运行。本文就看门狗硬件电路及其设计方案展开分析,通过采取相应的措施,解决问题。
1关于看门狗的电路系统分析
在实际工作中,看门狗的电路系统的应用范围是比较广泛的,它实现了单片机系统的内部相关环节的稳定运行,确保了无人监控下的程序的正常运作。看门狗电路系统的正常运行,离不开看门狗芯片与单片机的I/O引脚环节的正常运作。这就需要我们针对这一环节进行具体分析,I/O引脚环节的稳定性决定了看门狗系统的正常运行,该环节如果受到内外因素的干扰,是极易导致程序的不正常发展的,容易使系统陷入不良的循环中。为此我们要实现看门狗的引脚程序环节的稳定运行,从而保证单片机的有效复位,这样保障了程序的顺利执行,保证单片机的自动复位。
(1)为了保证看门狗电路系统的稳定运行,我们要进行看门狗电路设计方式的深化,它主要包括两种环节,硬件看门狗设计环节与软件看门狗设计环节。前者的正常运行,离不开对定时器的有效应用,从而确保主程序的有效监控,在主程序的运作过程中,我们要确保定时器的及时复位,避免下序环节出现运行故障。
看门狗芯片MAX813中文资料
看门狗芯片MAX813中文资料
1.1 芯片特点
· 加电、掉电以及供电电压下降情况下的复位输出,复位脉冲宽度典型值为200 ms。
· 独立的看门狗输出,如果看门狗输入在1.6 s内未被触发,其输出将变为高电平。
· 1.25 V门限值检测器,用于电源故障报警、电池低电压检测或+5 V以外的电源监控。
· 低电平有效的手动复位输入。
· 8引脚DIP封装。
1.2 MAX813L的引脚及功能
1.2.1 MAX813L芯片引脚排列见图1—1
1.2.2 各引脚功能及工作原理
(1)手动复位输入端()
当该端输入低电平保持140 ms以上,MAX813L就输出复位信号.该输入端的最小输入脉宽要求可以有效地消除开关的抖动。与TTL/CMOS兼容。
(2)工作电源端(VCC):接+5V电源。
(3)电源接地端(GND):接0 V参考电平。
(4)电源故障输入端(PFI)
当该端输入电压低于1.25 V时,5号引脚输出端的信号由高电平变为低电平。
(5)电源故障输出端()
电源正常时,保持高电平,电源电压变低或掉电时,输出由高电平变为低电平。
(6)看门狗信号输入端(WDI)
程序正常运行时,必须在小于1.6 s的时间间隔内向该输入端发送一个脉冲信号,以清除芯片内部的看门狗定时器。若超过1.6 s该输入端收不到脉冲信号,则内部定时器溢出,8号引脚由高电平变为低电平。
(7)复位信号输出端(RST)
上电时,自动产生200 ms的复位脉冲;手动复位端输入低电平时,该端也产生复位信号输出。
(8)看门狗信号输出端()
正常工作时输出保持高电平,看门狗输出时,该端输出信号由高电平变为低电平。
2 电路设计
2.1 基本工作原理
工业环境中的干扰大多是以窄脉冲的形式出现,而最终造成微机系统故障的多数现象为“死机”。究其原因是CPU在执行某条指令时,受干扰的冲击,使它的操作码或地址码发生改变,致使该条指令出错。这时,CPU执行随机拼写的指令,甚至将操作数作为操作码执行,导致程序“跑飞”或进入“死循环”。为使这种“跑飞”或进入“死循环”的程序自动恢复,重新正常工作,一种有效的办法是采用硬件“看门狗”技术。用看门狗监视程序的运行。若程序发生“死机”,则看门狗产生复位信号,引导单片机程序重新进入正常运行。
看门狗 原理
- 1 - 看门狗 原理
看门狗(Watchdog)原理是一种计算机软件或硬件的保护机制,用来在发生软件或硬件故障时重新启动系统或某个应用程序,而不需要人工处理。看门狗(Watchdog)原理具有检测功能以及处理功能,可以在系统检测到某种异常情况时采取合适的处理措施,避免造成进一步损害。
看门狗原理在类型上可分为硬件看门狗(HardwareWatchdog)和软件看门狗(SoftwareWatchdog),硬件看门狗是系统硬件板上安装的一种独立模块,而软件看门狗则是操作系统或应用程序中实现的一种保护机制。
硬件看门狗的工作原理主要是采用一个独立的定时计数器来控制系统中的动作时间,如果一段时间内没有收到来自处理器的某种信号,即认为处理器出现异常,立即重新启动系统。
软件看门狗的工作原理和硬件看门狗相似,也是运行在系统中的一种独立服务,其主要功能是检测系统的运行情况,如果发现系统或某个程序或数据处理器出现错误,就会进行重新启动。软件看门狗的优点是能够根据不同的需求,进行定制的设置,可以更好的满足不同的需求,而且不需要考虑硬件看门狗的空间限制。
看门狗原理是一种有效的系统保护机制,它能够及时发现系统故障,采取相应的处理措施,防止系统崩溃,损坏数据,从而节省人力物力投入和时间成本,让系统更加安全可靠,降低用户的风险。
看门狗的作用和原理
看门狗的作用和原理
看门狗(Watchdog)是一种用于监控计算机系统正常运行的硬件或软件装置,其作用是在系统出现故障或崩溃时,能够自动重启系统,以保证系统的稳定性和可靠性。看门狗的原理是通过定时检测系统的运行状态,一旦系统出现异常情况,如死机、卡死等,看门狗会及时检测到并进行相应的处理,以恢复系统的正常运行。
看门狗通常被应用在一些对系统稳定性要求较高的场合,比如工业控制系统、嵌入式系统、服务器等。它可以监控系统的运行状态,一旦系统出现异常,就能够自动进行重启,从而减少系统因故障而停机造成的损失。下面将详细介绍看门狗的作用和原理。
首先,看门狗的作用主要体现在系统的监控和保护方面。它可以定时对系统进行检测,确保系统一直处于正常运行的状态。一旦系统出现异常,比如程序死锁、死循环、硬件故障等,看门狗就能够及时检测到,并进行相应的处理,比如重启系统,以恢复系统的正常运行。这样可以有效地保护系统不因故障而停机,提高系统的可靠性和稳定性。
其次,看门狗的原理是基于定时检测系统的运行状态。它通常会设置一个定时器,定时对系统进行检测。如果系统在规定的时间内没有收到看门狗的喂狗信号,就会认为系统出现了故障,从而触发相应的处理措施,比如重启系统。这种原理可以有效地监控系统的运行状态,及时发现并处理系统的异常情况。
总的来说,看门狗在计算机系统中起着非常重要的作用,它可以保护系统的稳定性和可靠性,减少系统因故障而停机造成的损失。通过定时检测系统的运行状态,一旦系统出现异常,看门狗就能够及时进行处理,确保系统能够持续稳定地运行。因此,在对系统稳定性要求较高的场合,如工业控制系统、嵌入式系统、服务器等,都会广泛地应用看门狗技术,以保证系统的正常运行。 综上所述,看门狗的作用和原理是非常重要的,它可以有效地监控系统的运行状态,保护系统的稳定性和可靠性。在实际应用中,我们可以根据具体的系统需求,选择合适的看门狗装置或软件,并合理设置参数,以达到最佳的系统保护效果。希望本文能够对大家对看门狗的作用和原理有所了解,有助于在实际应用中更好地保护系统的稳定性和可靠性。
