MAX813看门狗电路

合集下载

C51单片机看门狗电路及程序设计方案

C51单片机看门狗电路及程序设计方案

C51单片机看门狗电路及程序设计案院系:信息工程学院年级:2010级电子一班禹豪电子一班训虎电子二班邓启新一、引言在由单片机构成的微型计算机系统中,程序的正常运行常常会因为来自外界的电磁场干扰等原因而被打断,从而造成程序的跑飞,而陷入死循环。

由此导致单片机控制的系统无法继续工作,造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片或程序,俗称"看门狗"(watchdog)(1)看门狗电路基本原理看门狗电路的应用,使单片机可以在无人状态下实现连续工作,其工作原理是:看门狗芯片和单片机的一个I/O引脚相连**,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位。

*此处设计原理实际上为下文中硬件看门狗设计思路。

(2)看门狗电路一般设计式“看门狗”电路一般分为硬件看门狗与软件看门狗两种设计式。

硬件看门狗是利用了一个定时器,来监控主程序的运行,也就是说在主程序的运行过程中,我们要在定时时间到之前对定时器进行复位。

如果出现死循环,或者说PC指针不能回来,那么定时时间到后就会使单片机复位。

常用的WDT芯片如MAX813,5045,IMP 813等,价格4~10元不等.软件看门狗技术的原理和硬件看门狗类似,只不过是用软件的法实现(即利用单片机部定时器资源,通过编程模拟硬件看门狗工作式),以51系列为例:因在51单片机中有两个定时器,在利用部定时器资源来对主程序的运行进行监控时。

看门狗MAX705、706、813中文说明

看门狗MAX705、706、813中文说明

看门狗MAX705/706/8131 概述MAX705/706/813L是一组CMOS监控电路,能够监控电源电压、电池故障和微处理器(MPU或mP)或微控制器(MCU或mC)的工作状态。

将常用的多项功能集成到一片8脚封装的小芯片内,与采用分立元件或单一功能芯片组合的电路相比,大大减小了系统电路的复杂性和元器件的数量,显著提高了系统可靠性和精确度。

该系列产品采用3种不同的8脚封装形式:DIP、SO和mMAX。

主要应用于:微处理器和微控制器系统;嵌入式控制器系统;电池供电系统;智能仪器仪表;通信系统;寻呼机;蜂窝移动电话机;手持设备;个人数字助理(PDA);电脑电话机和无绳电话机等等。

2 功能说明2.1 RESET/RESET操作复位信号用于启动或者重新启动MPU/MCU,令其进入或者返回到预知的循环程序并顺序执行。

一旦MPU/MCU处于未知状态,比如程序“跑飞”或进入死循环,就需要将系统复位。

对于MAX705和MAX706而言,在上电期间只要Vcc大于1.0V,就能保证输出电压不高于0.4V的低电平。

在Vcc上升期间RESET维持低电平直到电源电压升至复位门限(4.65V或4.40V)以上。

在超过此门限后,内部定时器大约再维持200ms后释放RESET,使其返回高电平。

无论何时只要电源电压降低到复位门限以下(即电源跌落),RESET引脚就会变低。

如果在已经开始的复位脉冲期间出现电源跌落,复位脉冲至少再维持140ms。

在掉电期间,一旦电源电压Vcc降到复位门限以下,只要Vcc不比1.0V还低,就能使RESET维持电压不高于0.4V的低电平。

MAX705和MAX706提供的复位信号为低电平RESET,而MAX813L提供的复位信号为高电平RESET,三者其它功能完全相同。

有些单片机,如INTEL的80C51系列,需要高电平有效的复位信号。

2.2 看门狗定时器MAX705/706/813L片内看门狗定时器用于监控MPU/MCU的活动。

看门狗工作原理、应用和设计思路解析

看门狗工作原理、应用和设计思路解析

看门狗工作原理、应用和设计思路解析看门狗,又叫watchdog timer,是一个定时器电路, 一般有一个输入,叫喂狗,一个输出到MCU的RST端,MCU正常工作的时候,每隔一端时间输出一个信号到喂狗端,给WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就回给出一个复位信号到MCU,是MCU复位. 防止MCU死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。

此狗非彼狗工作原理:在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。

所以在使用有看门狗的芯片时要注意清看门狗。

硬件看门狗是利用了一个定时器,来监控主程序的运行,也就是说在主程序的运行过程中,我们要在定时时间到之前对定时器进行复位如果出现死循环,或者说PC指针不能回来。

那么定时时间到后就会使单片机复位。

常用的WDT芯片如MAX813 ,5045, IMP 813等,价格4~10元不等.软件看门狗技术的原理和这差不多,只不过是用软件的方法实现,我们还是以51系列来讲,我们知道在51单片机中有两个定时器,我们就可以用这两个定时器来对主程序的运行进行监控。

我们可以对T0设定一定的定时时间,当产生定时中断的时候对一个变量进行赋值,而这个变量在主程序运行的开始已经有了一个初值,在这里我们要设定的定时值要小于主程序的运行时间,这样在主程序的尾部对变量的值进行判断,如果值发生了预期的变化,就说明T0中断正常,如果没有发生变化则使程序复位。

对于T1我们用来监控主程序的运行,我们给T1设定一定的定时时间,在主程序中对其进行复位,如果不能在一定的时间里对其进行复位,T1 的定时中断就会使单片机复位。

在这里T1的定时时间要设的大于主程序的运行时间,给主程序留有一定的的裕量。

而T1的中断正常与否我们再由。

如何设计看门狗(硬件看门狗与软件看门狗)

如何设计看门狗(硬件看门狗与软件看门狗)

看门狗电路的概念和作用2007/08/05 15:26一般看门狗电路用来监视MCU内部程序运行状态,在程序跑飞或死锁情况下,可以自动复位。

不过由于厂家、型号不同可能有些差别。

看门狗电路的工作原理是:当系统工作正常时,CPU将每隔一定时间输出一个脉冲给看门狗,即“喂狗”,若程序运行出现问题或硬件出现故障时而无法按时“喂狗”时,看门狗电路将迫使系统自动复位而重新运行程序。

主要作用是防止程序跑飞或死锁看门狗电路其实是一个独立的定时器,有一个定时器控制寄存器,可以设定时间(开狗),到达时间后要置位(喂狗),如果没有的话,就认为是程序跑飞,就会发出RESET指令在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗"看门狗电路电路的应用,使单片机可以在无人状态下实现连续工作,其工作原理是:看门狗芯片和单片机的一个I/O引脚相连,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位.看门狗,又叫 watchdog timer,是一个定时器电路, 一般有一个输入,叫喂狗,一个输出到MCU的RST端,MCU正常工作的时候,每隔一端时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就回给出一个复位信号到MCU,是MCU复位. 防止MCU死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。

单片机看门狗(Watchdog)的工作原理及其应用

单片机看门狗(Watchdog)的工作原理及其应用

单片机看门狗(Watchdog)的工作原理及其应用2010年05月16日星期日 23:00在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环。

程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果。

所以,出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗"(watchdog)。

看门狗电路的应用,使单片机可以在无人状态下实现连续工作,其工作原理是:看门狗芯片和单片机的一个I/O引脚相连,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段进入死循环状态时,写看门狗引脚的程序便不能被执行。

这个时候,看门狗电路就会由于得不到单片机送来的信号。

便在它和单片机复位引脚相连的引脚上送出一个复位信号。

使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位。

看门狗,又叫 watchdog timer,是一个定时器电路。

一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到MCU的RST端,MCU 正常工作的时候,每隔一端时间输出一个信号到喂狗端,给 WDT 清零。

如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就会给出一个复位信号到MCU,是MCU复位,防止MCU死机。

看门狗的作用就是防止程序发生死循环,或者说程序跑飞。

工作原理:在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。

所以,在使用有看门狗的芯片时要注意清看门狗。

C51单片机看门狗电路及程序设计方案解读

C51单片机看门狗电路及程序设计方案解读

C51单片机看门狗电路及程序设计方案院系:信息工程学院年级:2010级电子一班刘禹豪电子一班赵训虎电子二班邓启新一、引言在由单片机构成的微型计算机系统中,程序的正常运行常常会因为来自外界的电磁场干扰等原因而被打断,从而造成程序的跑飞,而陷入死循环。

由此导致单片机控制的系统无法继续工作,造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片或程序,俗称"看门狗"(watchdog)(1)看门狗电路基本原理看门狗电路的应用,使单片机可以在无人状态下实现连续工作,其工作原理是:看门狗芯片和单片机的一个I/O引脚相连**,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位。

(2)看门狗电路一般设计方式“看门狗”电路一般分为硬件看门狗与软件看门狗两种设计方式。

硬件看门狗是利用了一个定时器,来监控主程序的运行,也就是说在主程序的运行过程中,我们要在定时时间到之前对定时器进行复位。

如果出现死循环,或者说PC指针不能回来,那么定时时间到后就会使单片机复位。

常用的WDT芯片如MAX813,5045,IMP 813等,价格4~10元不等.软件看门狗技术的原理和硬件看门狗类似,只不过是用软件的方法实现(即利用单片机*此处设计原理实际上为下文中硬件看门狗设计思路。

内部定时器资源,通过编程模拟硬件看门狗工作方式),以51系列为例:因在51单片机中有两个定时器,在利用内部定时器资源来对主程序的运行进行监控时。

MAX705 706 813中文参考资料(详细)

MAX705 706 813中文参考资料(详细)

MAX705/706/813中文资料。

基本参数:工作电压范围:1.0~5.5V电源电流:150~350uA复位闵值:4.25~4.5V复位脉冲宽度:140~280(ms)输出电压:0.4V看门狗超时周期:1.6sec上拉电流:100.~600uAMR脉冲宽度:150(ns)MR输入闵值:0.8~2.0VPFO输出电压:-1.5~0.4V存储温度范围:-65°C ~160°C工作温度范围:-40°C ~ 85°C焊接温度范围:+300°C安装类型:表面贴装引脚图概述MAX705/706/813L是一组CMOS监控电路,能够监控电源电压、电池故障和微处理器(MPU 或mP)或微控制器(MCU或mC)的工作状态。

将常用的多项功能集成到一片8脚封装的小芯片内,与采用分立元件或单一功能芯片组合的电路相比,大大减小了系统电路的复杂性和元器件的数量,显著提高了系统可靠性和精确度。

该系列产品采用3种不同的8脚封装形式:DIP、SO和mMAX。

主要应用于:微处理器和微控制器系统;嵌入式控制器系统;电池供电系统;智能仪器仪表;通信系统;寻呼机;蜂窝移动电话机;手持设备;个人数字助理(PDA);电脑电话机和无绳电话机等等。

功能说明RESET/RESET操作复位信号用于启动或者重新启动MPU/MCU,令其进入或者返回到预知的循环程序并顺序执行。

一旦MPU/MCU处于未知状态,比如程序“跑飞”或进入死循环,就需要将系统复位。

对于MAX705和MAX706而言,在上电期间只要Vcc大于1.0V,就能保证输出电压不高于0.4V的低电平。

在Vcc上升期间RESET维持低电平直到电源电压升至复位门限(4.65V或4.40V)以上。

在超过此门限后,内部定时器大约再维持200ms后释放RESET,使其返回高电平。

无论何时只要电源电压降低到复位门限以下(即电源跌落),RESET引脚就会变低。

单片机复位看门狗电路

单片机复位看门狗电路

705系列复位电路#概述GC705/706/707/708/813L是一组CMOS微处理器监控电路,可用来监控微处理器系统供电异常、电池故障和工作状态。

和采用分立元件及多片IC组合成电路相比,明显减小了系统电路的复杂性和元器件的数量,并提高了系统的可靠性和精度。

GC705/706/813L具备以下四项基本功能:1)电源开机,关机及电源供电不足时给出复位输出。

2)内含独立的看门狗电路输出。

如看门狗电路输入在1.6秒内未得到翻转信号,看门狗电路输出端将变成低电平。

3)内含门限1.25V的检测器,用于掉电报警,电池欠电监测和监测加错电源的状况(以+5V为准)。

4)手动复位时,给出确定脉宽的负向复位脉冲GC707/708和GC705/706基本功能一致,区别只在于GC705/706芯片中的第8脚正脉冲的复位(RESET)输出取消了,换成了看门狗定时器,原第6脚空脚被用做看门狗电路的输入端。

GC813L则除了第7脚输出正脉冲的RESET外,其它功能和GC705/706完全一样。

这几种电路的管脚功能定义和差异详见管脚定义图和管脚说明附表。

#应用范围计算机,微处理器和微控制器系统;嵌入式控制器系统;智能仪器仪表;通信系统;工业自动化系统;电池供电手持设备等等。

# 电气参数 除非特殊说明,Vcc =4.75V~5.5V (GC705/GC707/GC813), Vcc=4.5V~5.5V (GC706/GC708),T A = T MIN to T MAX参数符号 测试条件最小值典型值 最大值 单位GC705、706、707、708 1.0 5.5电源电压范围 Vcc GC813 1.1 5.5VGC705、706、813 150 350电源电流IccGC707、70850 350uAGC705、707、8134.50 4.65 4.75 GC706、708 4.25 4.40 4.50 复位门限 V RT GC706T 3.00 3.08 3.15 V复位门限迴差40 mV复位脉冲宽度 t RS 140 200 280 ms I SOURSE =800uAVCC-1.5 I SINK = 3.2mA 0.4GC705~708,VCC=1V ,I SINK =50uA 0.3GC707\708,I SOURCE =800uAVCC-1.5GC707\708,I SINK = 1.2mA 0.4 复位输出电压GC813,I SOURCE =4uA,V CC =1.1V 0.8V看门狗计时长度 t WD GC705\706\813 1.00 1.60 2.25 秒 WDI 脉冲宽度 t WPVIL =0.4V ,VIH =(VCC)(0.8) 50 ns 下限 0.8WDI 输入阈值 上限 GC705\706\813 V CC =5V3.5 VGC705\706\813,WDI =VCC 50 150WDI 输入电流 GC705\706\813,WDI =0V -150 -50uAGC705\706\813,I SOURCE =800uA VCC-1.5WDI 输出电压 GC705\706\813,I SINK =1.2mA 0.4VMR 上拉电流MR =0V100 250 600 uA MR 脉冲宽度 t MR150 ns 下限 0.8MR 输入阈值 上限2.0VMR 到RESET 的延迟 t MD250 ns PFI 输入阈值 VCC =5V V PFI 输入电流-25 25 nAI SOURCE =800uA VCC-1.5PFO 输出电压I SINK =3.2mA0.4V#极限参数源跌落),RESET引脚就会变低。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

看门狗电路设计在工业现场运行的单片机应用系统,由于坏境恶劣,常有强磁场、电源尖峰、电火花等外界干扰,这些干扰可能造成仪表中单片机的程序运行出现“跑飞”现象,引起程序混乱,输出或显示不正确,甚至“死机”。

系统无法继续正常的运行,处在一种瘫痪状态,它的硬件电路并没有损坏,只是内部程序运行出现了错误,这时,即使干扰消失,系统也不会恢复正常,这就需要采取一些措施来保障系统失控后能自动恢复正常,“程序运行几天来视系统”(Watchdog看门狗)就是常用的一种抗干扰措施,用以保证系统因干扰失控后能自动复位。

为了提高仪表可靠性及抗干扰能力,通常在智能仪表中采用“看门狗”技术。

看门狗电路它实质上是一个可由CPU复位的定时器,它的定时时间是固定不变的,一旦定时时间到,电路就产生复位信号或中断信号。

当程序正常运行时,在小于定时时间隔内,单片机输出一信号刷新定时器,定时器处于不断的重新定时过程,因此看门狗电路就不会产生复位信号或中断信号,反之,当程序因出现干扰而“跑飞”时,单片机不能刷新定时器,产生复位信号或产生中断信号使单片机复位或中断,在中断程序中使其返回到起始程序,恢复正常。

它的工作原理如同图3-4所示的两个计时周期不同的定时器T1和T2是两个时钟源相同的定时器,设T1=1.0s,T2=1.1s,而用T1定时器的溢出脉冲P1同时对T1和T2定时器清零,只要T1定时器工作正常,则定时器T2永远不可能计时溢出。

当T1定时器不在计时,定时器T2则会计时溢出,并产生溢出脉冲P2。

一旦产生溢出脉冲P2,则表明T1出了故障。

这里的T2即是看门狗。

利用溢出脉冲P2并进行巧妙的程序设计,可以检测系统的出错,而后使“飞掉”的程序重新恢复运行。

图3-4 看门狗工作原理示意图看门狗电路的应用,使单片机可以在无人关态下实现连续工作。

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

“看门狗”技术既可由硬件实现,也可由软件实现。

在系统成本允许的情况下,就选择专门的看门狗芯片或片内带看门狗的单片机。

若条件不允许,应加软件“看门狗”。

所谓软件“看门狗”,就是对程序中可能出现这种条件不满足而无法退出的一个模块、一个非正常结束的任务等,在运行时间上进行约束,将理论计算得到的最大时间跨度,作为这个模块或任务的最大执行时间,如果超过了这个时间跨度,则强制退出(结束)本模块、本次任务,把MCU的时间交给下一个模块或恢复有关资源的初始状态,供下一次任务使用。

“看门狗”电路可以分为内“看门狗”和外“看门狗”电路两大类。

内“看门狗”电路是指“看门狗”的硬件电路包含在单片要内部。

对于没有内“看门狗”定时器的单片机或认为内“看门狗”不可靠时,可以采用外部“看门狗”定时器。

外部“看门狗”电路既可以用专用“看门狗”芯片,也可用普通芯片搭成。

专用硬件看门狗是指一些集成化的或集成在单片机内的专用看门狗电路,它实际上是一个特殊的定时器,当定时时间到时,发出溢出脉冲。

从实现角度上看,该方式是一种软件与片外专用电路相结合的技术,硬件电路连接好以后,在程序中适当地插入一些看门狗复位的指令(即“喂狗”指令),保证单片机的RESET 引脚使单片机复位。

在这种方式中,看门狗能否可靠有效地工作,与硬件组成及软件的控制策略都有密切的关系。

目前常用的集成看门狗电路很多,如MAX705~708、MAX791、MAX813L、X5043/5045等。

/////////////////////////////////////// 本系统采用MAX813L看门狗电路监控单片机的工作,如果单片机工作不正常,看门狗电路在规定时是内得不到刷新复位,就输出信号强制单片机复位重新启动工作,保证仪器正常工作。

////////////////////////////////////////////////1.MAX813L芯片功能原理MAX813L主要有以下几个功能:(1)上电、掉电以及降压情况下具有RESET输出。

(2)独立的“看门狗”电路。

“看门狗”定时时间为 1.6s。

/////////////////////////(3)1.25V门限检测器,用于低压报警,适时监视+5V以外的电源电压。

(4)具有手工复位输入端。

MAX813L是MAXIM公司推出的低成本微处理器监控芯片,封装形式为8脚双列直插式(DIP)和小型(SO)式封装,引脚图如图3-5所示。

MAX813L引脚说明如下:○1脚():手动复位输入端(),当该端输入低电平保持140ms以上,MAX813L就输出复位信号。

该输入端的最小输入脉宽要求可以有效地消除开关的抖动。

与TTL/CMOS兼容。

○2脚(VCC):5V电源。

////////////////////////////////////////////////////○3脚(GND):电源地。

////////////////////////////////////////////////////// ○4脚(PFI):电源检测输入端。

可将需要检测的电源连接于此,不用时接地或电源。

○5脚():电源检测输出端。

被检测电源正常时,输出高电平,否则输出低电平。

○6脚(WDI):“看门狗”输入端,俗称“喂狗”信号。

程序正常运行时,必须在小于1.6s的时间间隔内向该输入端发送一个脉冲信号,以清除芯片内部的看门狗定时器。

若超过1.6s该输入端收到脉冲信号,则内部定时器溢出,8号引脚由高电平变为低电平。

○7脚(RESET):上电时自动产生200ms的复位脉冲;手动复位端输入低电平时,该端也产生复位信号输出。

○8脚():“看门狗”输出端“喂狗”信号在1.6s内不能及时送入时,该脚即产生1个低电平信号。

////////////////////////////////////////////////////////2.硬件实现电路图////////////////////////////////////////////////图3-6给出了MAX813L在系统中的线路图。

此电路可以实现上电、瞬时掉电以及程序运行出现“死机”时的自动复位和随时的手动复位;并且可以实时地监视电源故障,以便及时地保存数据。

本电路巧秒地利用了MAX813L的手动复位输入端。

只要程序一旦跑飞引起程序“死机”,端电平由高到低,当变低超过140ms,将引起MAX813L 产生一个200ms的复位脉冲。

同时使看门狗定时器清0和使脚变成高电平。

也可以随时使用手动复位按扭使MAX813L产生复位脉冲,由于为产生复位脉冲端要求低电平至少保持140ms以上,故可以有效地消除开关抖动。

该电路可以适时地监控电源故障(掉电、电压降低等)。

图3-6中RI的一端接未经稳压的直流电源。

电源正常时,确保R2上的电压高于 1.26V,即保证MAX813L的PFI输入端电平高于1.26V。

当电源发生故障,PFI输入端的电平低于1.25V时,电源故障输出端电平由高变低,引起单片机中断,CPU响应中断,执行相应的中断服务程序,保护数据,断开外部用电电路等。

3.软件设计(1)程序运行“死机”及相应对策///////////////////////////////////////////////////程序正常运行时,由主程序在小于1.6s的时间间隔内周期性地从P1.7端向MAX813L的P1.7输入端发送一个脉冲信号,以消除芯片内部的看门狗定时器。

实现指令为:若超过1.6s该输入端收不到脉冲信号,则内部看门狗定时器溢出,8号引脚由高电平变为低电平。

引起MAX813L产生一个200ms的复位脉冲。

同时使看门狗定时器清零和使8号引脚变成高电平。

需要引起注意的是,整个单片机系统完成复位后,在PC指针的指针下整个程序将从0000H地址处重新开始初始化运行,而这在很多情况下是不允许的(如连续的工艺流程),为此必须采取相应的措施。

首先在对单片机系统完成复位后,程序应该先判断是开机运行(冷启动)还是运行过程中“死机”之后的重新加载运行(热启动)。

因此一般情况下在这两种启动方式下,系统程序在进入主流程在进入主流程前所要做的工作往往不同。

如冷启动后,系统程序在初始化程序往往要进行系统资源的自检以及将各外围设备修改设置,只是对单片机系统本身的一些资源进行必要的设置工作。

其次,在大多数情况下,我们总可以把一个连续的过程分解开来,把它变成一个个独立的子过程(状态)组成的连续过程。

在主程序运行过程中,适时保存相应状态和该状态下的相关参数。

这样当程序运行出现“死机”,在MAX813L作用下系统复位和初始化后,将首先查询事先保存的状态参数,然后根据此参数决定程序的流向。

同时把该状态下事先保存的参数取出,对系统外围设备进行必要的恢复设置工作和引导程序继续运行。

根据这一思想设计的系统程序流程图如图3-7所示。

图3-7 看门狗软件流程图(2)电源故障及相应对策当电源发生故障时,引起单片机中断,CPU响应中断,执行相应的中断服务程序,保护数据,断开外部用电电路等。

为了做到这一点必须把中断优先级(PX0)设为最高,特别是系统中还有其它中断时,更应该如此。

中断优先级的设置可通过中断优先寄存器实现,此外还要设置中断允许寄存器的总允许位(EA)及外部中断0中断允许位(EX0)。

实现指令为:SETB IP.0:设置PX0=1SETB IE.7:设置EA=1SETB IE.0:设置EX0=1。

相关文档
最新文档