文档库 最新最全的文档下载
当前位置:文档库 › 用CD4060制作看门狗报警电路

用CD4060制作看门狗报警电路

用CD4060制作看门狗报警电路
用CD4060制作看门狗报警电路

用CD4060制作看门狗报警电路

看门狗定时器(WDT, Watch Dog Timer)是单片机的一个组成部分,它实际上是一个计数器,

一般给看门狗一个大数,程序开始运行后看门狗开始倒计数。如果程序运行正常,过一段时间CPU应

发出指令让看门狗,重新开始倒计数。如果看门狗减到0就认为程序没

有正常工作,强制整个系统复位。

原理图:

CD4060芯片特性

1)电压范围宽,应该可以工作在3V?15V,输入阻抗高,驱动能力差外,跟74系列的功能

基本没有区别;

2)输入时,1/2工作电压以下为0,1/2工作电压以上为1 ;

3)输出时,仁工作电压;0=0V;

4)驱动能力奇差,在设计时最多只能带1个TTL负载;5)如果加上拉电阻的话,至少要100K电阻;

6)唯一现在使用的可能就是计数器,CD4060的计数器可以到14级二进制串行计数。

以AT89C51为例:

看门狗电路由14位二进制计数器 CD4060和三极管VT1、VT2等组成。

Vout 接单片机AT89C51的引脚输出口 P1.7,由单片机的CPU 向看门狗电路发送喂狗信 号一一正

脉冲,在两个正脉冲间隔内,

P1.7保持为低电平(此功能要结合软件才能实现,相

应的软件设计在下面介绍)。我们知道,单片机 AT89C51的I /O 口带灌电流负载的能力比较 大,每个引脚低电平时的吸入电流为

20 mA ,带拉电流负载的能力却很小,实测情况是,每

个引脚高电平时的输出电流仅 25卩A ,现在P1.7 口被设计成带拉电流负载的方式,为了提 高P1.7 口带拉电流负载的能力,所以,电路中设置了上拉电阻

R3。

14位二进制计数器 CD4060的计数脉冲由其内部振荡器和外接阻容元件

R1、R2、C1组

成的电路产生,振荡周期为

T0SC=2.2X R1X 6= 0.22 ms

振荡器产生的计数脉冲(矩形波)可以直接引出,同时还可以从

CD4060的10个输出端

Q4?Q10和Q12?Q14得到不同分频系数的方波输出,各方波输出信号的周期如表

1所示。

这样,如果CD4060得不到CPU 通过P1.7 口发送来的喂狗信号——正脉冲,

则CD4060的输

出端Q14在1.8S 内将产生一个完整周期的方波信号,而且低电平在前,高电平在后,其高 电平经三极管 VT1、VT2处理后形成单片机 AT89C51的复位信号,使单片机 AT89C51复位。 由此可见,单片机 AT89C51正常工作时,只要在 0.9S 内从P1.7 口送出一个正脉冲,便可及 时清零看门狗,输出端

Q14就不会产生定时溢出信号,从而使看门狗电路对单片机系统不

起作用。并且,从 CD4060的10个输出端Q4?Q10和Q12?Q14可以得到不同周期的方波 信号,经三极管VT1、VT2处理后形成单片机系统的复位信号, 可以适应不同用户应用程序,

从而该硬件看门狗电路可以适应不同的单片机应用系统。

________ 不閔卷世拳疹号的同期 ____________________ 篷出町 QU Q 】』

■甬T 厉H h 星住鮎汕吧1吃俛4帥扁0 £1】広4山005 6据 丽qa eg _ 心 _ V

FLO 甘舸

PI 」 ro.o til Ml PU ro.z Fl 4 KJ PU

ra.4 FM

KJJ

PI.7

WT

lltX D1P3 fl l \

VF (TXUtfJ 1

I^SEM

T26

i wk try* T2A

I RD IP 3

XI nt Vsi

P20

ra LOOM!

苦1看门狗越fl ;电訪用

福期T(秒Xi. oog El証odi 40氧006 7血W:环"匚矗丄加

对MCS-51 系列的单片机而言,它所需要的复位信号是高电平宽度大于 2 个机器周期的正脉冲,例如,单片机的时钟脉冲频率为12 MHz 时,则所需要的复位信号高电平宽度为 2 卩s以上就可以了,而由上面的分析可知,CD4060的Q14输出的是高电平宽度为0.9 s的方

波,如果让它直接作为单片机的复位信号,则单片机的复位时间势必在0.9 s以上,这样尽

管可以使程序跑飞的单片机复位,但是显然没有做到尽快地引导跑飞的程序到正确的轨道来,如果这样做的话,对于某些单片机应用系统而言可能带来非常严重的后果。图1 中的三极管VT1、VT2 及其周围阻容元件构成波形转换电路,把较宽的正脉冲变换为较窄的正脉冲,

从而较好地解决了上述的问题。三极管VT1、VT2构成的2级直接耦合放大器作为缓冲器使

用,它是CD4060的输出端Q14的灌电流负载,C2、R8是微分电路。

经分析后不难看出,电路中的R7、R& C2还具有单片机上电复位的功能。

2 上电复位与看门狗信号复位的不同处理过程

由于程序跑飞很可能会造成一些随机破坏事件,对某些系统而言,希望尽可能从断点处恢复运行,因此,有必要妥善解决跑飞的程序回复后的处理。

单片机应用系统上电时,上电复位电路会使得单片机处于复位状态,这一般称为冷启动,这种情况下,单片机处于复位状态表现为:

⑴程序计数器PC的值为0000H。

(2)1/O 口(P0、P1、P2、P3(1))为FFH状态,即准双向I/O 口的输入状态。

(3)堆栈指示器SP=07H,即堆栈底为片内RAM的07H单元。

(4)除上述状态外,所有特殊功能寄存器SFR的有效位均为0。

(5)上电复位时,由于是重新供电,RAM在断电时数据丢失,上电复位后为随机数。

单片机应用系统的程序跑飞时,看门狗产生复位信号,也会使得单片机处于复位状态,这一般称为热启动,这种情况下,单片机处于复位状态表现为:

(1)程序计数器PC的值为0000H。

(2)I/O 口(P0、P1、P2、P3)为FFH状态,即准双向1/O 口的输入状态。

(3)堆栈指示器SP=07H即堆栈底为片内RAM的07H单元。

(4)除上述状态外,所有特殊功能寄存器SFR的有效位均为0。

(5)复位信号使得单片机处于复位状态时,片内RAM 中的数据不受影响。

比较上面两种单片机复位方式可知,上电复位与信号复位不同之处是第(5)点,这正是我们区分两种单片机复位方式的根据。具体方法是设置上电复位标志,例如,片内RAM 的7EH 单元

和7FH单元分别为(7EH)=18H且(7FH)=81H时表示已完成上电复位。上面两种单片机复

位方式都使得程序从0000H入口。然而,上电复位后要进行系统的完全初始化,而程序跑飞回复后往往要求保留一些过程参数,不允许重新初始化,而且还要对一些关键参数进行检

查与修复。

因此,要根据不同情况进行不同的初始化处理。图2是上电复位与程序跑飞回复初始化

处理框图。0000H是MCU的复位人口,程序启动后,首先判断是上电复位(冷启动),还是程序跑飞回复(热启动)。上电复位是开机操作,要建立上电标志,并进行系统的完全初始化。程序跑飞回复应进行相关资源的检查与修复,以防止系统运行出错。另外,根据系统特点,需要保留一些过程数据,不得进行完全初始化。

1ir

陸比」电讯赴

1 r

图2凰序启动厉的不同初堆化过和

3喂狗指令插入原理与位置

单片机应用系统运行正常时,单片机的CPU应在0.9 s内从P1.7 口送出一个正脉冲,使

看门狗及时清零,也就是说,CPU要在0.9 s以内执行一次下面的喂狗程序段(喂狗指令):

SETBP1.7

NOP

NOP

CLRP1.7

喂狗程序段插入到用户应用程序之中。单片机系统的用户应用程序一般由循环结构的主

程序和中断服务子程序组成。首先,应尽可能准确地估算各应用功能模块的运行时间,估算运行时间的时候,应考虑程序可能被中断,应把中断程序的运行时间也计算在内。然后,在若干个应用功能模块的运行时间小于0.9 s的两个应用功能模块之间插入上面的喂狗程序

段。

MAX813看门狗电路

看门狗电路设计 在工业现场运行的单片机应用系统,由于坏境恶劣,常有强磁场、电源尖峰、电火花等外界干扰,这些干扰可能造成仪表中单片机的程序运行出现“跑飞”现象,引起程序混乱,输出或显示不正确,甚至“死机”。系统无法继续正常的运行,处在一种瘫痪状态,它的硬件电路并没有损坏,只是内部程序运行出现了错误,这时,即使干扰消失,系统也不会恢复正常,这就需要采取一些措施来保障系统失控后能自动恢复正常,“程序运行几天来视系统”(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引脚通过程序控制它定时地往看门狗的这

看门狗电路及原理

看门狗电路。在单片机中,为了能使得程序能够正常的运行。设定的及时根据程序所返回的值检测程序运行情况的定时电路。 在主程序中设定一定的值,把这个值在看门狗定时电路数值益处之前定时赋给看门狗赋给定时电路,让看门狗定时器复位。主程序的赋值周期要小于看门狗定时电路的运行周期。 看门狗 百科名片 单片机"看门狗" 在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗"(watchdog) 目录[隐藏] 应用 基本原理 看门狗使用注意 看门狗运用 设计思路 [编辑本段]应用 看门狗电路的应用,使单片机可以在无人状态下实现连续工作,其工作原理是:看门狗芯片和单片机的一个I/O引脚相连,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,

即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位。 [编辑本段]基本原理 看门狗,又叫watchdog timer,是一个定时器电路, 一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到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的中断正常与否我们再由T0定时中断子程序来监视。这样就够成了一个循环,T0监视T1,T1监视主程序,主程序又来监视T0,从而保证系统的稳定运行。51 系列有专门的看门狗定时器,对系统频率进行分频计数,定时器溢出时,将引起复位.看门狗可设定溢出率,也可单独用来作为定时器使用。凌阳61的看门狗比较单一,一个是时间单一,第二是功能在实际的使用中只需在循环当中加入清狗的指令就OK了。AVR系列中,avr-libc 提供三个API 支持对器件内部Watchdog 的操作,它们分别是:wdt_reset() // Watchdog 复位wdt_enable(timeout) // Watchdog 使能wdt_disable() // Watchdog 禁止C8051Fxxx单片机内部也有一个21位的使用系统时钟的定时器,该定时器检测对其控制寄存器的两次特定写操作的时间间隔。如果这个时间间隔超过了编程的极限值,将产生一个WDT复位。-------------------------------------------------------------------------------- [编辑本段]看门狗使用注意

看门狗控制器原理与编程笔记

S3C2410接口之看门狗控制器原理与编程 1.看门狗:是一种电路,具有监视并恢复程序正常运行的功能,从而达到增强系统的稳定性。它本质上是一种定时器电路 2.稳定性和定时器之间有什么样的关系呢? 3.看门狗增强系统稳定性的基本原理:设一系统程序完整运行一周期的时间是Tp,看狗的定时周期为Ti,要求Ti>Tp。在程序运行一周期后,修改定时器的计数值,只要程序正常运行,定时器就不会溢出。若由于干扰等原因使系统不能在Tp 时刻修改定时器的计数值,定时器将在Ti 时刻溢出,引发系统复位,使系统得以重新运行,从而起到监控作用。 s3c2410的看门狗控制器 S3C2410 的看门狗定时器有两个功能: (1)定时器功能:可以作为常规定时器使用,它是一个十六位的定时器,并且可以产生中断,中断名为INT_WDT,中断号是0x09。 (2)复位功能:作为看门狗定时器使用,当时钟计数减为0(超时)时,它将产生一个128个时钟周期的复位信号。 S3C2410 ARM9的看门狗主要由五部分构成:时钟、看门狗计时器、看门狗数据寄存器、复位信号发生器、控制逻辑等。 S3C2410 ARM9的看门狗工作原理: PCLK 经过预分频、再分频,使得到达看门狗的频率能够没有那么高,这样看门狗才处理得了。 ?S3C2410 看门狗定时时间 预分频器为8位,其值为:0---255 再分频器可选择值为:16、32、64、128 输入到计数器的时钟周期为: T_wtd=1/[PCLK/(Prescaler+1)/Division_factor] 看门狗的定时周期为: T=WTDAT(看门狗的计数器的初值)×T_wtd

单片机复位看门狗电路

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.5 V GC705、706、813 150 350 电源电流 Icc GC707、708 50 350 uA GC705、707、813 4.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 =800uA VCC-1.5 I SINK = 3.2mA 0.4 GC705~708,VCC=1V ,I SINK = 50uA 0.3 GC707\708,I SOURCE =800uA VCC-1.5 GC707\708,I SINK = 1.2mA 0.4 复位输出电压 GC813,I SOURCE =4uA,V CC = 1.1V 0.8 V 看门狗计时长度 t WD GC705\706\813 1.00 1.60 2.25 秒 WDI 脉冲宽度 t WP VIL =0.4V ,VIH =(VCC)(0.8) 50 ns 下限 0.8 WDI 输入阈值 上限 GC705\706\813 V CC =5V 3.5 V GC705\706\813,WDI =VCC 50 150 WDI 输入电流 GC705\706\813,WDI =0V -150 -50 uA GC705\706\813,I SOURCE =800uA VCC-1.5 WDI 输出电压 GC705\706\813,I SINK =1.2mA 0.4 V MR 上拉电流 MR =0V 100 250 600 uA MR 脉冲宽度 t MR 150 ns 下限 0.8 MR 输入阈值 上限 2.0 V MR 到RESET 的 延迟 t MD 250 ns PFI 输入阈值 VCC =5V V PFI 输入电流 -25 25 nA I SOURCE =800uA VCC-1.5 PFO 输出电压 I SINK =3.2mA 0.4 V

“看门狗”开关原理

“看门狗”开关 一、开关介绍 户外分界断路器设备具备故障电流检测功能,保护控制功能(过流保护、速断保护、零序保护),适用于10kV 架空线路,可实现自动切除单相接地故障和自动切除相间短路故障。安装点适用于10kV 配电线路用户进户线的责任分界点处或主干线上运用短路保护等。

二、如何操作 2.1 机械操作

2.2 控制器电动操作 控制器通电延时 10 秒,自动检测开关储能信号,检测到分界断路器未储能则自动发出电动储能命令,分界断路器接收到储能命令后,自动完成电动储能。

三、基本功能与操作 1.开关本体手动分合功能 如同通用的断路器一样,分界断路器具备现场手动分合和电动分合控制功能。 2.模拟量检测功能 控制器与开关本体配合使用可检测线路的两相电流、零序电流和线路电压,上 述模拟量信号由开关本体航空插座输出,从控制器底部的CT/IO 插座通过航空插头接入控制器。通过控制器内部的信号转换和计算,可实时监测其运行值(用笔记本电脑通过控制器的维护通信口或配置通信模块后可接收及处理这些测量数值)。 3.保护控制功能 a)零序保护 通过对控制器的定值整定和对零序电流的监测,分界断路器能侦测和判定用户界内的单相接地故障,在延时达到整定值后执行分闸操作,自动切除接地故障;变电站及馈线上的其 它用户避免发生停电事故, 为了避免瞬时性故障造成开关分闸,可对分界断路器进行重合闸设置,重合闸时间可自行设定,为了避免永久性故障对线路造成严重损坏,或其它保护的时限配合问题,分界断路器做了重合闸后加速保护功能。 零序保护的控制功能适用于配电网中性点不接地系统、中性点经消弧线圈接地系统和 中性点经小电阻接地系统。 b)过流(速断)保护 通过定值整定和对相电流的监测,分界断路器能侦测和判定用户界内的相间短路故障,经延时判定后,控制器输出分闸命令使分界真空断路器自动分闸,自动切除过流故障,变电站及馈线上的其它用户避免发生停电事故, 为了避免瞬时性故障造成用户长时间停电,在控制器保护动作后,对分界断路器进行重合闸,重合闸时间可以设定,为了避免永久性故障对线路造成严重损坏,或其它保护的时限配合问题,控制器做了重合闸后加速保护功能。 4.线路失电状态下的分闸及保护告警功能 控制器在[自动]运行状态时,如用户界外发生相间短路故障后,会造成变电站出线开 关掉闸,控制器无输入电源,在整个装置失电后,控制器靠储能电容维持其正常工作,在此期间可执行分闸输出(DC 48 V)使开关可靠分闸。无论是单相接地故障还是相间短路故障致使分界断路器保护动作,控制器的ALARM告警指示灯均常亮或闪亮,提示用户界内发生了单相接地或相间短路故障。 5.自检功能 控制器在正常运行时定时自检(由程序控制自动进行),自检的对象包括定值区、输出 回路、采样通道、E2PROM等,自检异常时,点亮自检告警指示灯,并且闭锁跳合闸回路。 6.控制器的基本操作 控制器的所有操作均在其圆形罩壳的底部,COM内设TV输出回路保护熔管,当控制器内部电路发生故障时,保护开关本体内置TV不受影响。CT插座连接从开关侧引来的测量电缆,IO插座连接从开关侧引来的控制电缆。ALARM为保护动作发光二极管指示信号;定值设定窗口在设备正常运行时由一密封小盖关闭,当需要进行定值修改或检查控制作状态时则开启

基于CD4060的硬件看门狗技术

基于CD4060的硬件看门狗技术 引言 多年来,围绕着单片机应用系统的抗干扰技术以及其受干扰后的自我恢复,在硬件和软件等方面积累了多种方法,这些方法相互结合,配合使用,有效地提高了系统的可靠性与抗干扰性。 看门狗(Watch Dog Timer,简称为WDT)技术就是最常见的抗干扰技术。看门狗WDT有硬件看门狗和软件看门狗之分,无论是硬件看门狗还是软件看门狗实际上都是一个可清零的定时计数器。如果该定时计数器用MCU芯片外部电路实现,则为硬件看门狗,如果该定时计数器用MCU芯片内部定时器/计数器实现,则称为软件看门狗。 本文介绍硬件看门狗技术,并给出了实用的基于CD4060的硬件看门狗电路。 1 硬件看门狗电路及其工作原理 基于CD4060的硬件看门狗电路如图1所示,它是针对工程项目所设计的一个实用电路,并且该电路实际使用情况良好。下面介绍电路的组成及其工作原理。 看门狗电路由14位二进制计数器CD4060和三极管VT1、VT2等组成。 单片机AT89C51的P1.7口设计成输出口,由AT89C51的CPU向看门狗电路发送喂狗信号——正脉冲,在两个正脉冲间隔内,P1.7保持为低电平(此功能要结合软件才能实现,相应的软件设计在下面介绍)。我们知道,单片机AT89C51的I/O口带灌电流负载的能力比较大,每个引脚低电平时的吸入电流为20 mA,

带拉电流负载的能力却很小,实测情况是,每个引脚高电平时的输出电流仅25μA,现在P1.7口被设计成带拉电流负载的方式,为了提高P1.7口带拉电流负载的能力,所以,电路中设置了上拉电阻R3。 14位二进制计数器CD4060的计数脉冲由其内部振荡器和外接阻容元件R1、R2、C1组成的电路产生,振荡周期为 T0SC=2.2×R1×C1=0.22 ms 振荡器产生的计数脉冲(矩形波)可以直接引出,同时还可以从CD4060的10个输出端Q4~Q10和Q12~Q14得到不同分频系数的方波输出,各方波输出信号的周期如表1所示。这样,如果CD4060得不到CPU 通过P1.7口发送来的喂狗信号——正脉冲,则CD4060的输出端Q14在1.8S内将产生一个完整周期的方波信号,而且低电平在前,高电平在后,其高电平经三极管VT1、VT2处理后形成单片机AT89C51的复位信号,使单片机AT89C51复位。由此可见,单片机AT89C51正常工作时,只要在0.9S内从P1.7口送出一个正脉冲,便可及时清零看门狗,输出端Q14就不会产生定时溢出信号,从而使看门狗电路对单片机系统不起作用。并且,从CD4060的10个输出端Q4~Q10和Q12~Q14可以得到不同周期的方波信号,经三极管VT1、VT2处理后形成单片机系统的复位信号,可以适应不同用户应用程序,从而该硬件看门狗电路可以适应不同的单片机应用系统。 对MCS-51系列的单片机而言,它所需要的复位信号是高电平宽度大于2个机器周期的正脉冲,例如,单片机的时钟脉冲频率为12 MHz时,则所需要的复位信号高电平宽度为2μs以上就可以了,而由上面的分析可知,CD4060的Q14输出的是高电平宽度为0.9 s的方波,如果让它直接作为单片机的复位信号,则单片机的复位时间势必在0.9 s以上,这样尽管可以使程序跑飞的单片机复位,但是显然没有做到尽快地引导跑飞的程序到正确的轨道来,如果这样做的话,对于某些单片机应用系统而言可能带来非常严重的后果。图1中的三极管VT1、VT2及其周围阻容元件构成波形转换电路,把较宽的正脉冲变换为较窄的正脉冲,从而较好地解决了上述的问题。三极管VT1、VT2构成的2级直接耦合放大器作为缓冲器使用,它是CD4060的输出端Q14的灌电流负载,C2、R8是微分电路。 经分析后不难看出,电路中的R7、R8、C2还具有单片机上电复位的功能。

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

C51单片机看门狗电路及程序设计方案 院系:信息工程学院 年级:2010级 电子一班刘禹豪 电子一班赵训虎 电子二班邓启新

一、引言 在由单片机构成的微型计算机系统中,程序的正常运行常常会因为来自外界的电磁场干扰等原因而被打断,从而造成程序的跑飞,而陷入死循环。由此导致单片机控制的系统无法继续工作,造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片或程序,俗称"看门狗"(watchdog) (1)看门狗电路基本原理 看门狗电路的应用,使单片机可以在无人状态下实现连续工作,其工作原理是:看门狗芯片和单片机的一个I/O引脚相连**,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位。 (2)看门狗电路一般设计方式 “看门狗”电路一般分为硬件看门狗与软件看门狗两种设计方式。 硬件看门狗是利用了一个定时器,来监控主程序的运行,也就是说在主程序的运行过程中,我们要在定时时间到之前对定时器进行复位。如果出现死循环,或者说PC指针不能回来,那么定时时间到后就会使单片机复位。常用的WDT芯片如MAX813,5045,IMP 813等,价格4~10元不等. 软件看门狗技术的原理和硬件看门狗类似,只不过是用软件的方法实现(即利用单片机*此处设计原理实际上为下文中硬件看门狗设计思路。

看门狗工作原理

看门狗工作原理 由看门狗WDT引发系统复位的电路结构等效图如图所示。从该图中可以看出,只有当状态信号SLEEP =1,即单片机处于非睡眠状态时,看门狗超时溢出才会引发单片机的复位操作。而在单片机处于睡眠状态,即状态信号SLEEP=0时,看门狗超时溢出会唤醒单片机。 图看门狗复位电路结构等效电路 看门狗就是一个用独立时钟源提供的脉冲进行累加计数的计数器,无需任何外部元件。独立的RC时钟信号源是指RC振荡器与OSC1(ULKIIN)引脚的外接RC振荡器,OSC1和OSC2外接晶体振荡器/陶瓷谐振器构成的单片机系统时钟是分离的。这就意味着,即使单片机进入系统时钟停振的睡眠状态,监视定时器WDT仍然能够运行。 在单片机执行程序期间,一次看门狗WDT超时溢出,将使单片机产生复位操作(称为WDT复位)。如果单片机处于睡眠状态,一次看门狗WDT超时溢出将使单片机被唤醒,恢复正常运行状态,并且继续执行在进入睡眠之前被搁置的程序(称为WDT唤醒)。 每次看门狗超时溢出,都会使得状态寄存器STATUS中的了T0位被清0,以记录曾经发生的这次看门狗溢出事件,供作程序查询判断用。 即当WDTE=0时,看门狗WDT将被永久禁止;当WDTE=1时,看门狗WDT将被永久启用。就是说,只要WDTE被定义成1,以后在用户程序中将再也无法禁止看门狗的运行。 若想不让看门狗WDT发生超时溢出,在用户程序中只能不停地、周期性地将看门狗计时器清0,使它不会因计数到超过最大值而溢出。

看门狗计时器的计时周期取决于独立RC振荡源的频率和计时器的宽度,同时在一定程度上受到工作电压、环蟑温度、制作工艺等因素的影响。 另外,看门狗的超时周期还可以借助于分频器以及分频器的分频比,在一定范围内改变和延长。分频器是否配置给看门狗使用,可以通过用户程序定义选项寄存器OPTION KEG的PSA位进行设置。

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

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

单片机看门狗(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死机。看门狗的作用就是防止程序发生死循环,或者说程序跑飞。 工作原理:在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。所以,在使用有看门狗的芯片时要注意清看门狗。 硬件看门狗是利用了一个定时器,来监控主程序的运行,也就是说在主程序的运行过程中,我们要在看门狗定时器定时时间到之前对其进行复位。如果出现死循环,或者说PC指针不能回来,那么定时时间到后就会使单片机复位。常用的WDT芯片如MAX813 ,5045, IMP 813等,价格4~10元不等。 软件看门狗技术的原理和这差不多,只不过是用软件的方法实现,我们还是以51系列来讲,我们知道在51单片机中有两个定时器,我们就可以用这两个定时器来对主程序的运行进行监控。我们可以对T0设定一定的定时时间,当产生定时中断的时候对一个变量进行赋值,而这个变量在主程序运行的开始已经有了一个初值,在这里我们要设定的定时值要小于主程序的运行时间,这样在主程序的尾部对变量的值进行判断,如果值发生了预期的变化,就说明T0中断正常,如果没有发生变化则使程序复位。对于T1我们用来监控主程序的运行,我们给T1设定一定的定时时间,在主程序中对其进行复位,如果不能在一定的时间里对其进行复位,T1 的定时中断就会使单片机复位。在这里T1的定时时间要设的大于主程序的运行时间,给主程序留有一定的的裕量。而T1的中断正常与否我们再由T0定时中断子程序来监视。这样就够成了一个循环,T0监视T1,T1监

51单片机看门狗电路

you51单片机看门狗电路 采用89C51单片机和X25045组成的看门狗电路,X25045硬件连接图如图2所示。X25045芯片内包含有一个看门狗定时器,可通过软件预置系统的监控时间。在看门狗定时器预置的时间内若没有总线活动,则X2 5045将从RESET输出一个高电平信号,经过微分电路C2、R3输出一个正脉冲,使CPU复位。图2电路中,CPU的复位信号共有3个:上电复位(C1、R2),人工复位(S、R1、R2)和Watchdog复位(C2、R3),通过或门综合后加到RESET端。C2、R3的时间常数不必太大,有数百微秒即可,因为这时CPU的振荡器已 经在工作。 图2 X25045看门狗电路硬件连接图 看门狗定时器的预置时间是通过X25045的状态寄存器的相应位来设定的。如表2所示,X25045状态寄存器共有6位有含义,其中WD1、WD0和看门狗电路有关,其余位和EEPROM的工作设置有关。 表2 X25045状态寄存器 WD1=0,WD0=0,预置时间为1.4s。 WD1=0,WD0=1,预置时间为0.6s。 WD1=1,WD0=0,预置时间为0.2s。 WD1=1,WD0=1,禁止看门狗工作。 看门狗电路的定时时间长短可由具体应用程序的循环周期决定,通常比系统正常工作时最大循环周期的时间略长即可。编程时,可在软件的合适地方加一条喂狗指令,使看门狗的定时时间永远达不到预置时间,系统就不会复位而正常工作。当系统跑飞,用软件陷阱等别的方法无法捕捉回程序时,则看门狗定时时间 很快增长到预置时间,迫使系统复位。 以下是C语言编写的看门狗程序部分。 #include reg51.h sbit cs=P1^2;/*片选信号由P1.2产生*/ sbit sck=P1^3; /*时钟信号由P1.3 产生*/ sbit si=P1^0; /*SI由P1.0产生*/ sbit so=P1^1; /*SO由P1.1产生*/

基于MAX706的可靠看门狗电路设计方法

基于MAX706的可靠看门狗电路设计方法 摘要:单片机控制系统“看门狗”电路的有效性,除硬件电路的可靠性以外,主要取决于如何正确给“看门狗”电路进行复位(即“喂狗”),文章在介绍了一种采用MAX706和89C52构成的硬件电路的基础上,给出了一种新颖可靠的“看门狗”电路软件设计方法。 关键词:抗干扰单片机看门狗MAX706 89C52 随着MCS-51系列单片机的发展,其芯片价格在不断下降,但同时也带来了单片机芯片的抗干扰问题,该问题可能导致一些智能型仪器仪表单片机工业控制系统发生“死机”。笔者通过近几年的设计实践及不断试验,总结了一套可靠的“看门狗”硬件电路及软件设计方法。由于一些专业期刊曾经刊登过许多关于“看门狗”硬件电路构成的文章,同时也详细的关于“看门狗”电路非正常失效故障原因的分析及针对性软件设计技巧[1],本文给出了一个采用MAX706和89C52构成的“看门狗”硬件电路,并且从新的角度说明了如何确保“看门狗”电路的正常工作,同时给出了它的软件设计方法。 1 “看门狗”硬件电路简述 现以MAX706监控电路为例(见图1)来说明“看门狗”硬件电路的工作过程,我们知道,MAX706是一种性能优良的低功耗CMOS监控电路芯片,其内部电路由上电复位、可重触发“看门狗”定时器及电压比较器等组成[2]。MAX706只要在1.6秒时间内检测到WCI引脚有高低电平跳变信号,则“看门狗”定时器清零并重新开始计时;若超出1.6秒后,WCI引脚仍无高低电平跳变信号,则“看门狗”定时器溢出,WDO引脚输出低电平,进而触发MR手动复位引脚,使MAC706复位,从而使“看门狗”定时器清零并重新开始计时,WDO引脚输出高电平,MAX706的RST复位输出引脚输出大约200毫秒宽度的低电平脉冲,使单片机控制系统可靠复位,重新投入正常运行。 2 “看门狗”电路软件设计方法 以往的“看门狗”电路复位指令(即“喂狗”)一般总是插入在主程序中,而且“喂狗”指令一般是脉冲式,可以连续用两条取反指令(如CPL P1.0)。这是因为一般情况下,程序跑飞或者陷入“死循环”时,中断功能可能不受影响,CPU仍能象正常运行时一样响应和执行中断子程序。这时如果中断子程序中插有“喂狗”指令,则“看门狗”定时器始终处于正常无溢出状态,无法对已经混乱的微机系统重新启动以投入正常运转状态。 在主程序中适当插入“喂狗”指令,大多数场合的单片机系统都能够比较可靠地工作。但是有一种特殊情况,即中断响应功能已经失效,而主程序仍然能够正常运行,这时“看门狗”电路对恢复单片机系统正常工作时无能为力的。例如:当程序正在执行中断子程序时,系统突然受到强烈干扰,程序跑飞,而且PC指针刚好落在主程序的指令字节上,堆栈也不溢出,使主程序能够继续正常运行。这时“看门狗”的“喂狗”动作正常,而中断再也不法响应了。这时因为在MCS-51的中断系统中有两个不可寻址的优先级状态触发器,分别指标两级中断响应状态。当CPU响应中断时,首先置位相应的优先级状态触发器(该触发器能指出CPU正在处理的中断优先级别),这时会屏蔽掉同级别的所有中断申请,直到执行RETI指令时,才由

单片机看门狗电路的作用,看门狗系统设计技巧及其抗干扰措施

单片机看门狗电路的作用,看门狗系统设计技巧及其抗干扰措施在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称看门狗(watchdog) 其作用是使单片机可以在无人状态下实现连续工作,其工作原理是:看门狗芯片和单片机的一个I/O引脚相连,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位。 单片机看门狗电路的作用看门狗的作用:看门狗定时器是一个计数器,基本功能是在发生软件问题和程序跑飞后使系统重新启动。看门狗计数器正常工作时自动计数,程序流程定期将其复位清零,如果系统在某处卡死或跑飞,该定时器将溢出,并将进入中断。在定时器中断中执行一些复位操作,使系统恢复正常的工作状态,即在程序没有正常运行期间,如期复位看门狗以保证所选择 的定时溢出归零,使处理器重新启动。软件的可靠性一直是一个关键问题。任何使用软件的人都可能会经历计算机死机或程序跑飞的问题,这种情况在嵌入式系统中也同样存在。由于单片机的抗干扰能力有限,在工业现场的仪器仪表中,常会由于电压不稳、电弧干扰等造成死机。在水表、电表等无人看守的情况下,也会因系统遭受干扰而无法重启。为了保证系统在干扰后能自动恢复正常,看门狗定时器(Watchdog TImer)的利用是很有价值的。 现今市面上流行的一些单片机,多嵌有内部WDT,如TI的MSP430系列,Philips的P87XXX

电源看门狗复位电路

电源看门狗复位电路 公共模块说明 V1.0版 2011-10-31 1.功能介绍: 在实际的MCU应用系统中,由于常常会受到来自外界的某些干扰,有可能造成程序跑飞而进入死循环,从而导致整个系统的陷入停滞状态并且不会自动恢复到可控的工作状态。指令技术、软件陷阱技术不能使失控的程序摆脱“死循环” 的困境,这时系统完全瘫痪。如果操作者在场,就可以按下人工复位安钮,强制系统复位。但操作者不能一直监视着系统,也往往是在引起不良后果之后才进行人工复位。所以出于对MCU 运行的安全考虑,为使程序脱离“死循环”,便引入了一种专门的复位监控电路WatchDog,俗称看门狗。看门狗电路所起的作用是一旦MCU运行出现故障,就强制对MCU进行硬件复位,使整个系统重新处于可控状态(要想精确恢复到故障之前的运行状态从技术上讲难度大成本高,而复位是最简单且可靠的处理手段)。SP706 是 Exar(原 Sipex)公司推出的低功耗、高可靠、低价格的MCU复位监控芯片。以下是其关键特性:分为4个子型号:SP706P、SP706R、SP706S、SP706T;复位输出:P为高电平有效,R/S/T为低电平有效;精密的低电压监控:P/R为2.63V、S为2.93V、T为3.08V;复位脉冲宽度:200ms (额定值);独立的看门狗定时器:1.6 秒超时(额定值);去抖TTL/CMOS 手动复位输入(/MR 管脚)。我们公司采用Exar公司的SP706REN芯片实现看门狗复位功能,电源电路其他主要芯片还有LM2596S-5.0、SI4463BDY、LM1117IMPX-3.3,这三个主要应用于电源电路的转换中,起到降压,开关等作用。 SP706REN芯片应用于看门狗复位电路中,可以实现电源模块在受到死机的情况下而自动发出复位脉冲,从而使电源电路可以在无人状态下实现连续工作。 由SP706REN等芯片构成的电源看门狗复位电路模块实现的电源电路复位功能,在V2.0光纤直放站近与远端机主控板。。。 2.典型电路:

相关文档