看门狗芯片X25045

看门狗芯片X25045
看门狗芯片X25045

SPI接口应用之一---看门狗芯片X25045

hadao 发表于 2006-5-8 0:08:41

一、引脚定义及通信协议

SO:串行数据输出脚,在一个读操作的过程中,数据从SO脚移位输出。在时钟的下降沿时数据改变。

SI:串行数据输入脚,所有的操作码、字节地址和数据从SI脚写入,在时钟的上升沿时数据被锁定。

SCK:串行时钟,控制总线上数据输入和输出的时序。

/CS :芯片使能信号,当其为高电平时,芯片不被选择,SO脚为高阻态,除非一个内部的写操作正在进行,否则芯片处于待机模式;当引脚为低电平时,芯片处于活动模式,在上电后,在任何操作之前需要CS引脚的一个从高电平到低电平的跳变。

/WP:当WP引脚为低时,芯片禁止写入,但是其他的功能正常。当WP引脚为高电平时,所有的功能都正常。当CS为低时,WP变为低可以中断对芯片的写操作。但是如果内部的写周期已经被初始化后,WP变为低不会对写操作造成影响。

二、硬件连接

三、程序设计

状态寄存器:

WIP:写操作标志位,为1表示内部有一个写操作正在进行,为0则表示空闲,该位为只读。

WEL:写操作允许标志位,为1表示允许写操作,为0表示禁止写,该位为只读。

BL0,BL1:内部保护区间的地址选择。被保护的区间不能进行看门狗的定时编程。

WD0,WD1:可设定看门狗溢出的时间。有四种可选择:1.4s,600ms,200m s,无效。

操作码:

WREN 0x06 设置写允许位

WRDI 0x04 复位写允许位

RDSR 0x05 读状态寄存器

WRSR 0x01 写状态寄存器

READ 0x03/0x0b 读操作时内部EEPROM页地址

WRITE 0x02/0x0a 写操作时内部EEPROM页地址

程序代码:

#i nclude

sbit CS= P2^7;

sbit SO= P2^6;

sbit SCK= P2^5;

sbit SI= P2^4;

#define WREN 0x06 //

#define WRDI 0x04 //

#define RDSR 0x05 //

#define WRSR 0x01 //

#define READ0 0x03 //

#define READ1 0x0b //

#define WRITE0 0x02 //

#define WRITE1 0x0a //

#define uchar unsigned char

uchar ReadByte() //read a byte from device

{

bit bData;

uchar ucLoop;

uchar ucData;

for(ucLoop=0;ucLoop<8;ucLoop++)

{

SCK=1;

SCK=0;

bData=SO;

ucData<<=1;

if(bData)

{ ucData|=0x01; }

}

return ucData;

}

void WriteByte(uchar ucData)//write a byte to device {

uchar ucLoop;

for(ucLoop=0;ucLoop<8;ucLoop++)

{

if((ucData&0x80)==0) //the MSB send first

{SI=0;}

else

{SI=1;}

SCK=0;

SCK=1;

ucData<<=1;

}

}

uchar ReadReg() //read register

{

uchar ucData;

CS=0;

WriteByte(RDSR);

ucData=ReadByte();

CS=1;

return ucData;

}

uchar WriteReg(uchar ucData) //write register

{

uchar ucTemp;

ucTemp=ReadReg();

if((ucTemp&0x01)==1) //the device is busy

return 0;

CS=0;

WriteByte(WREN);//when write the WREN, the cs must have a high level

CS=1;

CS=0;

WriteByte(WRSR);

WriteByte(ucData);

CS=1;

return 1;

}

void WriteEpm(uchar cData,uchar cAddress,bit bRegion) /* 写入一个字节,cData为写入的数,cAddress为写入地址,b Region为页 */

{

while((ReadReg()&0x01)==1); //the device is busy

CS=0;

WriteByte(WREN); //when write the wren , the cs must hav e a high level

CS=1;

CS=0;

if(bRegion==0)

{ WriteByte(WRITE0);} //write the page addr

else

{WriteByte(WRITE1);}

WriteByte(cAddress);

WriteByte(cData);

SCK=0; //

CS=1;

}

uchar ReadEpm(uchar cAddress,bit bRegion)

/* 读入一个字节,cAddress为读入地址,bRegion为页 */

{

uchar cData;

while((ReadReg()&0x01)==1);//the device is busy

CS=0;

if(bRegion==0)

{WriteByte(READ0); }

else

{WriteByte(READ1);}

WriteByte(cAddress);

cData=ReadByte();

CS=1;

return cData;

}

main()

{

WriteReg(0x00);//set the watchdog time as 1.4s

CS=1;

CS=0; //reset the watchdog

}

基于X25045的新型看门狗电路图

作者:重庆三峡学院应用技术学院谢辉来源:不详点击数:更新时间:2007年02月14日

看门狗(watchdog)电路是嵌入式系统需要的抗干扰措施之一。本文用x25045芯片设计了一种新的看门狗电路,具有体积小、占用i/o口线少和编程方便的特点,可广泛应用于仪器仪表和各种工控系统中。

前言

工控系统在运行时,通常都会遇到各种各样的现场干扰,抗干扰能力是衡量工控系统性能的一个重要指标。看门狗(watchdog)电路是自行监测系统运行的重要保证,几乎所有的工控系统都包含看门狗电路。在8096系列单片机和增强型8051系列单片机中,该系统已经做在芯片内部,用户只要用软件开放它就可以,使用很方便。但目前工控系统仍在使用廉价的普通型8051系列单片机,则看门狗电路必须由用户自己建立。

看门狗电路一般有软件看门狗和硬件看门狗两种。软件看门狗不需外接硬件电路,但系统需要出让一个定时器资源,这在许多系统中很难办到,而且若系统软件运行不正常,可能导致看门狗系统也瘫痪。硬件看门狗是真正意义上的“程序运行监视器”,如计数型的看门狗电路通常由555多谐振荡器、计数器以及一些电阻、电容等组成,分立元件组成的系统电路较为复杂,运行不够可靠。

x25045芯片简介

x25045是美国xicor公司的生产的标准化8脚集成电路,它将eeprom、看门狗定时器、电压监控三种功能组合在单个芯片之内,大大简化了硬件设计,提高了系统的可靠性,减少了对印制电路板的空间要求,降低了成本和系统功耗,是一种理想的单片机外围芯片。x2504 5引脚如图1所示。

图1 x25045引脚图

其引脚功能如下。

cs:片选择输入;

so:串行输出,数据由此引脚逐位输出;

si:串行输入,数据或命令由此引脚逐位写入x25045;

sck:串行时钟输入,其上升沿将数据或命令写入,下降沿将数据输出;

wp:写保护输入。当它低电平时,写操作被禁止;

vss:地;

vcc:电源电压;

reset:复位输出。

x25045在读写操作之前,需要先向它发出指令,指令名及指令格式如表1所示。

表1 x25045指令及其含义

x25045看门狗电路设计及编程

x25045硬件连接图如图2所示。x25045芯片内包含有一个看门狗定时器,可通过软件预置系统的监控时间。在看门狗定时器预置的时间内若没有总线活动,则x25045将从reset输出一个高电平信号,经过微分电路c2、r3输出一个正脉冲,使cpu复位。图2电路中,cp u的复位信号共有3个:上电复位(c1、r2),人工复位(s、r1、r2)和watchdog复位(c2、r 3),通过或门综合后加到reset端。c2、r3的时间常数不必太大,有数百微秒即可,因为这时cpu的振荡器已经在工作。

图2 x25045看门狗电路硬件连接图

看门狗定时器的预置时间是通过x25045的状态寄存器的相应位来设定的。如表2所示,x2 5045状态寄存器共有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产生*/

sbit c=acc^7; /*定义位变量*/

bdata unsigned char com;

void tran() /*发送一字节数据子函数*/

{

unsigned char i;

for(i=0; i<8; i++)

{ acc=com; /*将数据放入a中*/

si=c;

sck=0; /*sck产生一个上跳变*/

sck=1;

com=com<<1; /*左移一位*/

}

return;

}

main()

{

com=0x06; /*发写读使能命令*/

cs=0;

tran();

cs=1;

com=0x01; /*发写状态字命令*/

cs=0;

tran();

com=0x00; /*定时1.4s*/

tran();

cs=1;

...;系统正常运行的程序部分

}

需要注意的是,在程序正常运行的时候,应该在适当的地方加一条喂狗指令,使系统正常运行时的定时时间达不到预置时间。系统就不会复位。喂狗指令如下。

main()

{

...;系统正常运行的程序部分

{

cs=0; /*产生cs脉冲*/

cs=1;

}

}

x25045的看门狗电路使用十分方便。x25045内部还集成了512beeprom和电压运行监视系统,只需这样一块芯片,外加晶振和复位电路就可以组成单片机的应用系统,非常适合于便携式仪器和嵌入式系统的设计。

参考文献

1、李朝青. 单片机原理与控制技术. 北京航空航天大学出版社,2001

2、胡伟,季晓衡.单片机c程序时间及应用实例.人民邮电出版社,2003

3、美国xicor公司x25045资料

X25045编程器的制作

生产部张华

摘要介绍X25045的编程特性以及用单片机GMS97C2051制作的编程器。

关键词单片机 E2PROM 编程

1 引言

X25045是美国Xicor公司的产品,它将三种功能:电压监控、看门狗定时器和E2PROM组合在单个芯片之内。因其体积小、占用I/O口少等优点已被广泛应用于工业控制、仪器仪表等领域,是一种理想的单片机外围芯片。

为了对X25045内的E2PROM编程,用GMS97C2051单片机制作了一个简易编程器,该编程器与PC的串行口相接,编程数据可通过PC机写入X25045的E2PROM。

2 X25045简介

2.1 X25045引脚

:芯片选择输入;

SO:串行输出;

SI:串行输入;

SCK:串行时钟输入;

:写保护输入;

Vss:地;

Vcc:电源电压;

RESET:复位输出。

2.2 X25045工作原理

X25045内含512×8的串行E2PROM,可以直接与微控

制器的I/O口串行相接。X25045内有一个位指令寄存器,

该寄存器可以通过SI来访问。数据在SCK的上升沿由

时钟同步输入,在整个工作期内,必须是低电平且

必须是高电平。如果在看门狗定时器预置的超时时

间内没有总线的活动,那么X25045将提供复位信号输

出。

X25045内部有一个“写使能”锁存器,在执行写操

作之前该锁存器必须被置位,在写周期完成之后,该锁

存器自动复位。

X25045还有一个状态寄存器,用来提供X25045状态

信息以及设置块保护和看门狗的超时功能。

图1 X25045引脚排列

表1 X25045的指令集

2.3 X25045的读时序

(a)读E2PROM的时序

(b)读状态寄存器的时序

图2 X25045读时序

2.4 X25045的写时序

(a)写使能锁存器的时序

(b)字节写操作的时序

图3 X25045写时序

2.5 复位操作

当Vcc降至门限电压以下或看门狗定时器已达到编程的极限值,X25045的RESET引脚将输出高电平。

3 X25045编程器的组成及原理

X25045编程器主要由单片机、MAX232、PS7219和LED等组成,如图4所示(虚线框部分)。其中单片机采用LG公司生产的GMS97C2051,该单片机指令和引脚与MCS-51系列兼容。MAX232为RS-232接口,用于单片机与PC之间的电平转换。PS7219为串行输入,可直接驱动8位LED的显示模块。

3.1 单片机与PC机的通讯

GMS97C2051的串行口以一定的波特率接收从PC机传来的数据,波特率的设定由定时器T1来完成,T1工作于方式2,TL1和TH1均被赋初值230,串行口以方式1工作,允许接收,每接收到PC机来

图4 X25045编程器的组成框图

的8位数据,产生一次中断,CPU响应中断后,将接收的数据写入X25045中。

3.2 单片机对X25045的写操作

X25045中有512×8的串行E2PROM,通过X25045的、SCK、SI、SO等引脚控制对X25045的读写,X25045的读写操作过程及时序前面已作了详细介绍,这里重点讨论单片机对X25045的编程。

首先置位写使能锁存器,然后发送写操作指令,紧接着发送E2PROM的地址和需写入的数据,在输入数据之后将置高,一般经2ms的延时,则数据被写入E2PROM中,也可以通过检测状态寄存器的WIP位来判定写操作是否完成,若WIP位为高,表示写操作正在进行,需继续检测,一直到WIP位变低为止,这时对X25045的编程工作

即告完成。

3.3 编程校验

为了验证编程数据的正确性,可以读出X25045中的数据,并通过显示模块将数据显示出来,读X25045操作的过程是这样的,先发送读指令,接着发送E2PROM地址,这时就可以接收X25045传出的数据,单片机将接收到的数据送到PS7219显示模块,再通过LED显示出来。

4 软件组成

(1)编程器的主程序。

PC-51:clr ea ;关中断

mov tmod,#20h ;选用T1工作方式2

mov tl1,#230;给T1置初值

mov th1,#230

clr et1;禁止T1中断

setb tr1;启动T1

mov scon,#50h ;串行口工作于方式1,允许接收

setb ea ;开中断

setb es;允许串行口中断

wait:mov c,P1.3;等待按“read”键

Jc wait

acall read

wait1:clr ri;清接收中断标志

mov a,sbuf;接收数据送入r1

mov r1,a

acall write ;r1中的数据写入X25045

reti

(2)将接收数据写入X25045中的程序。

write:clr P3.3;X25045的SCK置低

clr P3.7;SI置低

setb P3.4;CS置高

setb P3.5;SO置高

mov a,#06h;允许写操作

mov r7,#08h;写入8位

clr P3.3

clr P3.4

acall transfe;调发送子程序

setb P3.4

acall dela1ms;延时1ms

mov a,#02h;发送写指令

mov r7,#08h

clr P3.3

clr P3.4

acall transfe

mov a,38h;发送E2PROM地址

mov r7,#08h

acall transfe

mov a,r1 ;r1中的数据写入X25045

mov r7,#08h

acall transfe

setb P3.4;发送完毕

acall dela3ms;延时3ms

ret

(3)读出X25045中数据的程序。

read:mov a,#03h;发送读指令

mov r7,#08h

clr P3.3;X25045的SCK置低

clr P3.4;CS置低

acall transfe;调发送子程序

mov 39h,#00h;发送X25045地址

mov a,39h

mov r7,#08h

acall transfe

rece3:mov r7,#08h ;读出X25045中的数据rece1:nop

mov c,P3.5

mov acc.0,c

rl a

setb P3.3;SCK置高

clr P3.3;SCK变低

nop

djnz r7,rece1

rr a

mov r2,a;将读出的数据送r2

acall binbcd;将r2转换线bcd码

acall led;调用显示子程序

mov c, P1.3;等待按“read”键

jnc rece3;继续接收数据

ret

transfe:nop

mov c,acc.7 ;a的最高位送Cy

mov P3.7,c;将Cy送X25045的SI

setb P3.3;SCK置高

rl a;a左移一位

clr P3.3;SCK变低

djnz r7,transfe;循环8次

clr P3.7;将SI变低

ret

参考文献

1 X25043/45 可编程看门狗监控E2PROM数据手册.武汉力源电子股份有限公司 1998.3

看门狗芯片X25045

SPI接口应用之一---看门狗芯片X25045 hadao 发表于 2006-5-8 0:08:41 一、引脚定义及通信协议 SO:串行数据输出脚,在一个读操作的过程中,数据从SO脚移位输出。在时钟的下降沿时数据改变。 SI:串行数据输入脚,所有的操作码、字节地址和数据从SI脚写入,在时钟的上升沿时数据被锁定。 SCK:串行时钟,控制总线上数据输入和输出的时序。 /CS :芯片使能信号,当其为高电平时,芯片不被选择,SO脚为高阻态,除非一个内部的写操作正在进行,否则芯片处于待机模式;当引脚为低电平时,芯片处于活动模式,在上电后,在任何操作之前需要CS引脚的一个从高电平到低电平的跳变。 /WP:当WP引脚为低时,芯片禁止写入,但是其他的功能正常。当WP引脚为高电平时,所有的功能都正常。当CS为低时,WP变为低可以中断对芯片的写操作。但是如果内部的写周期已经被初始化后,WP变为低不会对写操作造成影响。 二、硬件连接

三、程序设计 状态寄存器: WIP:写操作标志位,为1表示内部有一个写操作正在进行,为0则表示空闲,该位为只读。 WEL:写操作允许标志位,为1表示允许写操作,为0表示禁止写,该位为只读。 BL0,BL1:内部保护区间的地址选择。被保护的区间不能进行看门狗的定时编程。 WD0,WD1:可设定看门狗溢出的时间。有四种可选择:1.4s,600ms,200m s,无效。 操作码: WREN 0x06 设置写允许位 WRDI 0x04 复位写允许位 RDSR 0x05 读状态寄存器 WRSR 0x01 写状态寄存器 READ 0x03/0x0b 读操作时内部EEPROM页地址 WRITE 0x02/0x0a 写操作时内部EEPROM页地址

看门狗攻略 《看门狗》流程攻略图文详解

看门狗攻略《看门狗》流程攻略图文详解小编今天为大家带来的是看门狗全流程攻略,为大家详细讲解《看门狗》全部剧情流程,希望这个看门狗攻略大家能喜欢。 第一章-01.8局下半 注:第一节名为“8局下半”,这是棒球的术语,棒球比赛共有9局,分上半和下半。 那么去到8局下半,亦即是比赛进入了白热化的阶段。 另外首先本节内容是在正在举行棒球比赛的场馆中举行,也有一定相关星。 剧情:艾登与他的师傅戴米安内应外合,艾登负责潜入到海洛特酒店的大厅(艾登与一名装束密实的黑人女子发生碰撞),艾登马上开始骇入,两人过了片刻便盗取了大厅所有人的银行账户存款。 可是艾登发现了此网路亦有另一伙人骇入,可是戴米安却不以为然,仍希望通过一己之力揪出竞争对手,可是被人对方骇入了艾登与戴米安的系统,艾登只好马上脱离。 反侦察戴米安与艾登的神秘人致电给一名叫作莫里斯的收尾者,让他去收拾艾登及其妻女。 剧情:(11嗰月之后)艾登找到了莫里斯,艾登已经将他打得眼肿鼻青,但此人矢口否认与艾登家人被害有关,随后艾登便拿出了莫里斯与神秘人的对话录音。 总算,莫里斯是承认了自己有参与袭击,但是他没有意识到要袭击小孩(导致艾登的侄女 去世),他就没有痛下杀手(起码心里没有这种想法),他告诉艾登,操纵此事件的幕后集团相当庞大,一旦他泄露,肯定人间蒸发。

step1.既然莫里斯不肯说出实情,就拿出手枪要吓唬他一下,此时手枪并没有子弹(被约尔迪给拿走了弹夹),对准莫里斯然后按RT键。 step2.眼见被耍,莫里斯马上捡起地上的球棒往艾登袭击,此时按B键使用伸缩棍予以还击,将其打晕。

step3.既然莫里斯如此守口如瓶,那么就走到75周年锦旗旁的货物架前,按X键骇入莫里斯的收集。 剧情:听完莫里斯手机中的录音后,离开更衣室,去到走廊上会被莫里斯的几嗰手下给逮住,幸好约尔迪出手相助。 约尔迪才离开艾登2分钟,艾登就因为急于盘问莫里斯就冲动行事,约尔迪之前离开就是去打电话报警,因为他知道艾登莽撞,所以喊来警察,然后将现场伪装成是帮派狗咬狗的情节,那么黑道就不容易会追查到艾登他们。 step4.两人决定分头逃跑,因为艾登与莫里斯的仇口太深,所以就让约尔迪带着昏睡的莫里斯离开。

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引脚通过程序控制它定时地往看门狗的这

MSP430教程10:MSP430单片机WDT看门狗定时器解析

看门狗定时器用来防止程序因供电电源、空间电磁干扰或其它原因引起的强烈干扰噪声而跑飞的事故。程序中设置看门狗清零指令 WDTCTL=WDTPW+WDTCNTCL,当程序跑飞不能及时清零看门狗,导致看门狗溢出复位,这样程序可以恢复正常运行状态。 一、WDT寄存器包括WDTCNT和WDTCTL,两个寄存器在上电和系统复位内容全部清零 1.记数单元WDTCNT:WDTCNT是16位增记数器,由MSP430选定的时钟电路产生的固定周期脉冲信号对记数器进行加法记数。WDTCNT不能直接软件存取,必须通过看门狗定时器的控制寄存器WDTCTL来控制。 2.控制寄存器WDTCTL:WDTCTL由两部分组成,高8位用作口令,即5AH(头文件中定义为WDTPW),低8位是对WDT操作的控制命令。写入WDT控制命令时先写入口令WD TPW,口令写错将导致系统复位。读WDTCTL时不需口令,低字节WDTCTL的值,高字节读出始终为69H。 bit 15-8 7 6 5 4 3 2 1 0 口令HOLD NMIES NMI TMSE L CNTCL SSEL IS1 IS0 IS1 SI0 选择看门狗定时器的定时输出,T为WDTCNT的输入时钟源周期。 TMSEL W DT工作模式选择 0 0 T*2的15次 方 0 看门狗模式 0 1 T*2的13次

方 1 定时器模式 1 0 T*2的9次 方 NMI 选择RST/NMI 引脚功能 1 1 T*2的6次 方 RST/NMI为复位端 SSEL 选择WDTCNT的时钟 源 1 RST/NMI为非屏蔽中断输入 0 SMCL K 1 ACLK NMIES 选择NMI中断的边沿触发方 式 HOLD 停止看门狗定时器工作 0 上升沿触发NMI中 断 0 看门狗功能激活 1 下降沿触发NMI中 断 1 时钟禁止输入,记数停止

看门狗电路及原理

看门狗电路。在单片机中,为了能使得程序能够正常的运行。设定的及时根据程序所返回的值检测程序运行情况的定时电路。 在主程序中设定一定的值,把这个值在看门狗定时电路数值益处之前定时赋给看门狗赋给定时电路,让看门狗定时器复位。主程序的赋值周期要小于看门狗定时电路的运行周期。 看门狗 百科名片 单片机"看门狗" 在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗"(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复位。-------------------------------------------------------------------------------- [编辑本段]看门狗使用注意

_看门狗_芯片的选择及软件控制

电子世界2004年1 期 26??单片机与可编程器件 “看门狗”芯片的选择 及软件控制 ?吉林化工学院自动化系 梁 伟 ?

电子世界2004年1期 27??单片机与可编程器件 个问题的方法就是做一个看门狗清除脉冲子程序,在延时等循环的圈内中加入它,可以保证万无一失。 2. 使用其它软件方法配合看门狗除了保证对看门狗的合理控制外,还要考虑使用其它软件方法配合看门狗,才能够保证MCU可靠运行。许多书籍在分析MCU失控后的情况时,几乎都假定一般是PC错位,进入未知区域,并不再进入正常程序代码段。但实际并非如此,以下就两种情况做具体分析,并给出解决方法。(1)干扰造成PC出错,但出错后进入了正常代码段,并在错误的情况下继续运行,看门狗没有起作用,但系统实际上已经瘫痪。解决这个问题可以使用软件路标法,几乎所有软件的主程序都是在一个大循环里工作,可以在循环中设置一些断点,断点处设置路标,程序运行 时随时检查路标,这样就可以判断程序是否有非法进入的可能。具体的路标可以是一个计数器,每个断点加1,在终点清除。因为断点数固定,因此每个断点处路标值固定,只需要检测路标值就可以进行对非法进入的判断。余下的问题就是发现错误后如何处理,正常的处理就是设置死循环,等待看门狗复位。对于PHILIPS的LPC系列MCU也可以置位AUXR1寄存器的SRST位立即进行软件复位。(2)干扰导致内部寄存器及RAM出错,但PC未错,因为错误的数据和标志导致程序在错误状态下运行。解决这种问题可以采用RAM校验的方法,具体是在MCU的内部RAM中开辟几个校验区,复位时写入固定代码,如55H或者AAH,并编制校验子程序,运行时随时调用校验,发现错误马上处理,处理方法同(1)。 考虑到可靠性,应该多设置几个校验区, 但要付出RAM资源代价,应酌情处理。此方法如果与(1)方法同时使用,则会获得更好的效果。 结束语 以上对看门狗的芯片选择和软件控制做了一些介绍,笔者通过合理运用,成功地设计出了许多应用系统,这些系统在恶劣的环境下都能够正常工作。但设计看门狗的初衷是防止系统万一死机的弥补措施,设计者本身是希望它永远也不要启动的。因此对于设计MCU系统,不应该过分依靠看门狗,而应该在电源及抗干扰措施上下足功夫,同时合理选择MCU芯片,尽可能选择那些抗干扰能力强,同时低EMI的品种。只有在各个环节都精心设计,才能够保证最终系统的可靠性。◆ Protel 99SE是基于Windows环境下的EDA电子辅助设计软件。一般来讲,利用Protel软件设计工程最基本的完整过程可以分为四大步骤:(1)查找资料,确定方案;(2)电路原理图的设计;(3)产生网络表;(4)印刷电路板的设计。 本文按照实际的设计流程顺序,来谈一谈如何使用Protel 99SE软件准确、高效地设计出电路原理图和设计印刷电路板的一些技巧。 电路原理图的设计 在电路原理图的设计过程中主要应 注意以下方面: 1.设置图纸 在设计开始之前首先要选择好图纸的大小,否则在打印时,若需将图纸由大号改为小号,而电路原理图不会跟着缩小,就存在部分原理图超出图纸范围打印不出来,从而返工的问题。通常的设计顺序为从左到右,从上到下。 2.放置元件 (1)利用元件库浏览器放置元件,对于元件库内未包括的元件要自己创建。创建的元件其引脚没有必要和实物一致, Protel 99SE 软件的实用技巧 ?上海海运学院商船学院轮机工程系 黄志坚 胡以怀? 可将功能相近或相同的引脚放到一起,以方便布线。(2)自创建元件时,还要注意,一定要在工作区的中央(0,0)处 (即“十”字形的中心) 绘制库元件,否则可能会出现在原理图中放置(place)制作的元件时,鼠标指针总是与要放置的元件相隔很远的现象。 (3) 在画原理图时,有时一不小心,使元件(或导线)掉到了图纸外面,却怎么也清除不了。这是由于Protel在原理图编辑状态下,不能同时用鼠标选中工作面内外的元件。要清除图纸外的元件,可点击 【Edit】/【Select】/【Outside Area】,然后框选整张图纸,再点击【Edit】/【Cut】即可。 元件放置好后,最好及时设置好其属性(Attributes),若找不到其相应的封装形式,也要及时为其创建适当的封装形式。 3.原理图布线 (1)根据设计目标进行布线。布线应该用原理图工具栏上的(Wiring Tools)工具,不要误用了(Drawing Tools)工具。(Wiring Tools)工具包含有电气特性,而(Drawing Tools)工具不具备电气特性,会导致原理图出错。 (2) 利用网络标号(Net Label)。网络标号表示一个电气连接点,具有相同网络标号的电气接线表明是连接在一起的。虽然网络标号主要用于层次式电路或多重式电路中各模块电路之间的连接,但若在同一张普通的原理图中也使用网络 标号,则可通过命名相同的网络标号使它们在电气上属于同一网络(即连接在一起),从而不用电气接线就实现了各引脚之间的互连,使原理图简洁明了,不易出错,不但简化了设计,还提高了设计速度。 4.编辑和调整编辑和调整是保证原理图设计成功很重要的一步。 (1)当电路较复杂、或是元器件的数目较多时,用手动编号的方法不仅慢,而且容易出现重号或跳号。重号的错误会在PCB编辑器中载入网络表时表现出来,跳号也会导致管理不便,所以Protel提供了很好的元件自动编号功能,应该好好地利用,即【Tools】/【Annotate...】。 (2)在原理图画好后,许多细节之处

瑞士EM6323复位+看门狗芯片

瑞士EM6323复位+看门狗芯片 描述 EM6323/24是低功耗,高精密复位IC 具有手动复位和看门狗输入。他们有 不同的阈值电压和几个超时复位期间 (TPOR)和看门狗超时周期为最大(TWD) 在应用程序的灵活性。EM6323具有手动复位(MR 内部上拉)和一个看门狗输入引脚。EM6324具有 只有一个看门狗输入引脚(WDI)。看门狗功能 被禁用或三态驱动器驱动世界发展指标“ 让世界发展指标“无关。这是有用的,当MCU 睡眠模式。 小型SOT23-5L封装以及超低电源电流 3.8μAEM6323和EM6324的理想选择 便携式和电池供电设备。 特点 !超低电源电流3.8μA(VDD = 3.3V) !工作温度范围:-40°C至+125°C的 !复位门限精度±1.5% !11复位阈值电压VTH,4.63V,4.4V,3.08V, 2.93V,2.63V,2.2V,1.8V,1.66V,1.57V,1.38V,1.31V !200ms的复位超时周期(1.6ms,25ms的,1600ms之间 请求) ! 1.6s的看门狗超时周期(6.2ms,102ms,25.6s 请求) !3重置输出选项: 低电平复位推,拉 低电平复位漏极开路 高电平复位推- 拉 !在睡眠模式下的单片机检测 复位阈值电压: 看门狗输入。世界发展指标“必须与CMOS输出驱动。如果单片机的I / O在高阻抗条件下,电路将检测到这种情况,作为微控制器在休眠模式,并防止 其看门狗超时 阈值电压 复位输出 一个微处理器(μP)复位输入开始在微处理器 已知状态。EM6323/24微处理器监控电路 断言复位,以防止代码执行错误,在 上电,掉电和欠压条件。复位 保证是低的VDD下降至0.9V的逻辑。

《看门狗》第四章:目标四:第福特的处境流程攻略

《看门狗》第四章:目标四:第福特的处境流程攻略 《看门狗》第四章目标四怎么过?今天小编给大家带来《看门狗》第四章:目标四:第福特的处境流程攻略,希望对大家有所帮助! 第四章:目标四:第福特的处境 1.先到剧场的右侧利用监控器骇入,打开左侧的铁门;铁门在有门卫的门旁边,被墙挡住视线的。 2.剧场里扫描会找到三个被第福特洗掉了信息的人(显示大师第福特之类的),全部找到后利用监控器侵入第福特的机器。 3.通过障碍物的攀爬和楼梯到达顶楼,全歼第福特的收尾人。 4.从大楼一侧的集装箱跳回地面,驱车追赶第福特。接下来的追逐战,玩家只能依靠自己的技术和耐心,别无他法。当玩家与第福特距离在80M以内的时候,玩家会从第福特身上下载数据,需要下载到100%才可完成任务。如果玩家能够撞到第福特把他卡住就可以获得大量数据,但是不可以杀掉第福特。 玩家需要注意第福特的行车轨迹,他一般都是有路口就右转的,有右撇子倾向。 5.至于最后的撂倒第福特,也许是一个隐藏任务,第福特会消失的很快,如果能在第福

特消失之前逮住他或许有额外奖励,但是被他跑了也不回影响剧情。 侠盗猎车5PC版太平洋银行最终任务攻略GTA5太平洋银 行最终任务技巧分析 在碰到大批强打的悍匪之后,基本没有写太平洋银行最终任务的这个窍门的,特此说一下。 做最后的任务骑摩托车硬抗警察真的是一件很蠢的事情,特别是你还背着钱钱,不小心的话小则丢命大则丢钱! 一个很简单的小窍门,买拉古纳斯大道4号公寓,去搜一下这个房产,就在摩托车存放点的隔壁,只要靠墙就能爬上花坛翻过去,很方便。做任务前记得把你保命的骷髅马或者叛乱分子扔这个车库里,银行脱出后跑到摩托车点,注意要上一下摩托车! 然后走到紧邻房产的墙角爬上花坛穿越过去,房主进房子后其余队员在门口等邀请,进入后一起去车库,开启你心爱的防弹骷髅马,上路不要走山路走海边的公路,走海边的公路!(应该都是知道的gps的首选路线都是拦截重重这个道理的吧?!)唱着歌听着子弹打在车上啪啪啪的声音就把钱赚回家了。 另外注意,到了上船点一定要全队速度快!一个人拖拉就能害死一组人!必要时开车冲进水抢时间吧,反正有保险的说!

单片机复位看门狗电路

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

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该输入端收不到脉冲信号,则部定时器溢出,8号引脚由高电平变为低电平。 (7)复位信号输出端(RST) 上电时,自动产生200 ms的复位脉冲;手动复位端输入低电平时,该端也产生复位信号输出。

at91-看门狗驱动修改指南详解

附录一、 驱动程序:at91sam9g20核心板的看门狗驱动 看门狗的驱动一般来说比较简单,只要做寄存器的设置实现开启、关闭、喂狗功能。本项目中我们使用的是at91sam920处理器,带有看门狗定时器。这个看门狗的驱动却比较复杂,应用层想用它的话,将涉及到boot引导设置,uboot配置及驱动,改写驱动程序。下面将逐步说明。 1、boot引导(bootstrap-v1.15) 由于该看门狗的MR寄存器只能写一次(Only a processor reset resets it.),而默认情况下看门狗在boot引导程序中被关闭了,所以在boot引导程序中我们要开启看门狗。在board/at91sam9g20ek/at91sam9g20ek.c文件的硬件初始化函数hw_init中注释掉下面的配置即可开启看门狗: /* writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR); */ 为了功能设置:我们配置如下: writel(AT91C_WDTC_WDV | AT91C_WDTC_WDD | AT91C_WDTC_WDRSTEN | AT91C_WDTC_WDFIEN, AT91C_BASE_WDTC + WDTC_WDMR); 2、uboot配置及驱动(uboot-v1.3.4): 默认情况下,看门狗在uboot中没有配置,需要手动添加配置,在文件include/configs/at91sam9g20ek.h中添加如下配置 #define CONFIG_HW_WA TCHDOG 1 #define CONFIG_AT91SAM9_WA TCHDOG 1 此时编译uboot,会提示你找不到hw_watchdog_reset复位函数,这是因为虽然我们配置看门狗,但看门狗的uboot驱动并不存在,下面就来添加uboot下的看门狗驱动。 1)添加include/asm-arm/arch-at91sam9/at91_wdt.h,内容如下 /* * [origin: Linux kernel arch/arm/mach-at91/include/mach/at91_wdt.h] * * Copyright (C) 2008 Jean-Christophe PLAGNIOL-VILLARD * Copyright (C) 2007 Andrew Victor

基于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还具有单片机上电复位的功能。

DS1232 看门狗芯片

DS1232 看门狗芯片 ●结构及特点 DS1232是一个具有看门狗功能的电源监测芯片,在电源上电、断电、电压瞬态下降和死机时都会输出一个复位脉冲 ⊙具有看门狗功能,可以防止单片机系统死机; ⊙输入给看门狗的脉冲的时间间隔可以设置; ⊙具有5%或10%的两种电源监测精度(芯片内含温度补偿电路)。 RESTE ——复位键连接引脚,直接连接复位键。 TD ——看门狗定时器延时设置。如果连接到地,输入给看门狗的脉冲间隔不得大于150毫秒;如果不连接,脉冲间隔不得大于600毫秒;如果连接到电源,脉冲间隔不得大于1.2秒。 TOL ——选择5%或10%的电源监测精度。如果这个引脚连接到地,当电源下降到4.75V时芯片将输出一个复位脉冲;如果这个引脚连接到5V,只有当电源下降到4.5V时芯片才输出一个复位脉冲。 GND ——地线。 RST ——复位高脉冲输出引脚。 RST/ ——复位低脉冲输出引脚. ST/ ——看门狗脉冲输入,低脉冲有效。 VCC ——5V电源。 芯片DS1232在系统工作时,必须不间断的给引脚7输入一个脉冲系列,这个脉冲的时间间隔由引脚2设定,如果脉冲间隔大于引脚2的设定值,芯片将输出一个复位脉冲使单片机复位。一般将这个功能称为看门狗,将输入给看门狗的一系列脉冲称为“喂狗”。这个功能可以防止单片机系统死机。 ●DS1232的应用电路 DS1232的应用原理图,其中TD连接到5V电源,因此输入给看门狗的脉冲间隔不可以超过1.2秒;TOL 连接到地,因此电源电压下降到4.75V时就会引起DS1232输出复位脉冲;图中使用一个复位键;把51单片机的P1.1引脚连接到,因此在程序中必须从P1.1引脚输出一个脉冲系列,否则将引起系系统复位。 注意:(1)ST除了和单片机的ALE相连外还可以和其他信号相连,但必须保证在看门狗定时计数溢出前复位看门狗定时器。 (2)DS1232的6脚没有上拉电阻,如果其他外围芯片需要用到低电平复位信号,那么必须在引脚上外接上拉电阻。 (3)如果仿真器用户连接调试板,并且ST和ALE相连,最好先不要插上DS1232芯片,因为单步是ALE脚的并不是连续供给的,容易造成非正常复位

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

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

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

可编程看门狗监控EEPROM芯片X25045及其应用

18科技资讯 科技资讯 SCIENCE & TECHNOLOGY INFORMATION 2009 NO.32 SCIENCE & TECHNOLOGY INFORMATION 信 息 技 术 在单片机系统中,通常需要在外围连接一个看门狗电路,以防止程序走飞;同时,单片机系统也需要监测电源电压的情况,以便系统掉电时能及时复位,从而避免因电源波动影响系统的正常工作;另外,单片机应用时,需要提前设置一些参数,比如时钟初值、控制算法参数等,一旦设置完成后,这些参数往往需要掉电保存。X25045是美国Xicor 公司出品的新型可编程看门狗监控EEPROM 芯片。X25045把常用的看门狗定时、电压监控和EEPROM 三种功能组合在单个封装之内,从而降低了系统成本并减少了电路板空间的要求。我们曾将X25045应用到“步进电机细分驱动器”、“食堂收费终端”中,在实际使用中收到了良好的效果。 1 X25045的结构及特点 1.1引脚功能 X25045是Xicor 公司生产的微处理器监控电路,采用8脚DIP 封装,各引脚见图4,其作用分别是:CS:芯片选择输入引脚;SO:串行输出引脚,在读周期内,数据在此引脚上输出,数据由串行的时钟的下降沿同步输出;WP:写保护输入引脚,当WP 为低电平时,X25045的写操作被禁止;VSS:地引脚;SI:串行输入引脚,所有操作码、字节地址以及写入存储器的数据在此引脚上输入,串行时钟的上升沿锁存SI 数据;SCK:串行时钟引脚,用于数据输入和输出的串行总线定时;RESET:复位输出引脚,高电平有效;VCC:电源电压。 1.2主要特点 (1)可编程的看门狗定时器;(2)低Vcc 检测;(3)512×8位串行E2PROM;(4)低功耗CMOS:10μA 备用电流;3mA 工作电流;(5)电源电压范围宽:2.2V 到5.5V;(6)块锁定:可以保护1/4,1/2或所有EEPROM 阵列;(7)内建写保护:上电/掉电保护电路、写锁存、写保护引脚;(8)高可靠,数据保存期为100年;(9)8引脚小型DIP 封装;(10)X25045为RESET 复位控制。 2 X25045的工作原理 X25045内部寄存器包括了一个指令寄存器、一个写使能锁存器和一个状态寄存器。 (1)指令寄存器。指令寄存器是一个8位寄存器,它通过SI 口访问(CS 端输入必须是低电平而且WP 输入必须是高电平时有效),是用于读取状态/数据、写入命令/数据和设置/复位的写使能寄存器。 (2)写使能锁存器。写使能锁存器主要是为了防止偶然的写操作,在写入命令/数据之前必须先设置写使能锁存器,上电时锁存器被复位。 (3)状态寄存器。状态寄存器任何时刻都能被访问,它共有8位,最高两位未用,最低两位是只读位。D5、D4:定时器位,表示设置的看门狗的超时段。它由WRSR 指令来设置,其中:00表示超时时间为1.4秒;01表示超时时间为600毫秒;10表示超时时间为200毫秒;11表示禁止看门狗。D3、D2:块保 护位,表示所使用的保护范围,在被保护的阵列地址段内用户只能读不能写。它由WRDI 指令来设置,其中:00表示不保护;01表示保护地址段为180H ~1FFH;10表示保护地址段为100H ~1FFH;11表示保护地址段为000H ~1FFH 。D1:锁存器状态:1表示置位状态;0表示复位状态。 (4)读时序。当要从EEPROM 读数据时,首先把CS 拉低,发送8位的读(READ)指令,再发送8位字节地址,然后是所选定地址的存贮器中贮存的数据被移出SO 线上。在每一个数据字节移出之后,字节地址自动增量至下一个较高的地址。图1为读EEPROM 阵列操作的时序。读状态寄存器时,首先要把CS 拉低,然后发送8位的RDSR 指令,接着是状态寄存器的内容被移出至SO 线上。读状态时序和读EEPROM 阵列时序相似,只是没有地址字节命令码。 (5)写时序。数据写入X25045之前,必须首先发出WREN 指令,把写使能锁存器置位。数据写至E E P RO M 时,用户要发出WRITE 指令,然后写地址,接着是要写数据。在操作期间内,CS 保持为低电平时,主机可以继续写多达4个字节的数据至X25043/45。其时序如图2所示。数据写状态寄存器时,首先发出WRSR 指令,然后写数据。 3 电路连接 X25045与8051连接的电路如图3所示。 4 结语 经过实际测试,把X25045应用到MCS-51单片机系列中,具有反映速度快、抗干扰能力强等优点。由于电路简单,工作稳定可靠,软件编程比较容易,在现场控制中具有较大的推广价值。 可编程看门狗监控EEPROM 芯片X25045及其应用 李海龙1 刘江2 (1.包钢钢联股份有限公司炼铁厂 内蒙古包头 014010; 2.包头职业技术学院 内蒙古包头 014030) 摘 要:本文介绍了可编程看门狗监控芯片X25045,阐述了它的基本工作原理,并给出了X25045与8051单片机的接口电路。关键词:看门狗 电压监控 PROM 接口中图分类号:TG434.1文献标识码:A 文章编号:1672-3791(2009)11(b)-0018-01 图3 图1 读 EEPROM 阵列时序 图 2 字节写操作时序

相关文档
最新文档