采用89C51单片机和X25045组成的看门狗电路,X25045硬件连接图如图2所示。X25045芯片内包含有一个看门狗定时器,可通过软件预置系统的监控时间。在看门狗定时器预置的时间内若没有总线活动,则X25045将从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产生*/
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和电压运行监视系统,只需这样一块芯片,外加晶振和复位电路就可以组成单片机的应用系统,非常适合于便携式仪器和嵌入式系统的设计。
关键字:51单片机 看门狗电路
引用地址:
51单片机看门狗电路
推荐阅读最新更新时间:2024-03-16 12:35
51单片机12864大液晶屏俄罗斯方块
参考源代码: //************************************************************************************************* //************************************************************************************************* // 程序名 :俄罗斯方块游戏 ** // 版本说明 :此版是第一版,在LCD1608第4版基础上改进而来,目前只可以绘制游戏区域的边框。 ** // 完成时间 :2007年8月28日 ** // 作者 :从零开始单片
[单片机]
51单片机程序——定时器控制LED闪烁
#include reg52.h #define uint unsigned int uint i=0; void delay(uint z) //延迟函数 { uint x,y; for(x=z;x 0;x--) for(y=20;y 0;y--); } void main (void) { TMOD=0x10; //TMOD赋值,以确定T0和T1的工作方式 TH1=(65536-50000)/256; //计算初值,并将其写入TH0、TL0或TH1、TL1 TL1=(65536-50000)%6; EA=1; //打开总中
[单片机]
基于51单片机可修改错误功能的计算器工作原理解析
utiliTIes.h #ifndefUTILITIES_H_INCLUDED #defineUTILITIES_H_INCLUDED typedefunsignedcharuchar,BYTE,uint8; typedefunsignedintuint,WORD,uint16; typedefunsignedlongulong,DWORD,uint32; typedefcharint8; typedefintint16; typedeflongint32; typedefunsignedchar*uchar_p; typedefunsignedint*uint_p; typedefunsignedlong*ulong_p;
[单片机]
基于51单片机开发板的应用(数码管)
在对LED灯的应用有了一定的了解之后,我开始学习了一些关于数码管的应用。 在我的开发板上,有独立共阳管和八位共阴管 。数码管从高位到低位的段码依次是h(dp),g,f,e,d,c,b,a共八位。共阴管是“1”表示亮,“0”表示灭,而共阳管则是相反的。顺便提一句,若是要检测数码管是否完好,可以用数码管“8”来检测。 若是要在数码管上显示0~F,则可以用一套固定的十六进制数表示,可以放在数组中,为{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}。这一个数组是用来表示共阴管的亮的,而若是共阳管的时候,需要在前面加
[单片机]
基于AT89C51单片机设计的简易智能机器人
引言 随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成CPU、存储器、定时器/计数器、并行和串行接口、看门狗、前置放大器、A/D转换器、D/A转换器等多种电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。这种技术促使机器人技术也有了突飞猛进的发展,目前人们已经完全可以设计并制造出具有某些特殊功能的简易智能机器人。 1 设计思想与总体方案 1.1 简易智能机器人的设计思想 本机器人能在任意区域内沿引导线行走,自动绕障,在有光源引导的条件下能沿光源行走。同时,能检测埋在地下的金属片,发出声光指示信息,并能实时存储、显示检测到的断点数目
[单片机]
用89C2051单片机制作的电话回拨器
该电话回拨器采用单片机控制,具有电路简单、接触可靠、使用方便等优点。 一、工作原理 电路见附图所示,系统由摘机,挂机电路、单片机拨号控制电路、DTMF号码产生及放大电路、电源电路等四部分组成,下面分别予以介绍 1.摘机/挂机电路 图中,J1为电话线进线插座,J2为该装置所并联的电话机插座,Rl为保险电阻;DI—D4为极性保护电路,用于将线路上极性不确定的电压转换成极性固定的电压,保证无论电话线的正负极如何连接,都能使进入开关管VI发射极的一端始终是正电压;V1是电子开关,该开关的通、断受单片机P3.7口控制,当P3.7为高电平时.V2、VI相继导通,电话线路上的48V电压通过VI加到R5两端,电话线上有
[单片机]
51单片机寄存器寻址方式与指令举例
寄存器寻址的寻址范围是: 1、4个工作寄存器组共有32个通用寄存器,但在 指令 中只能使用当前寄存器组(工作寄存器组的选择在前面专用寄存器的学习中,我们已知道,是由程序状态字PSW中的RS1和RS0来确定的),因此在使用前常需要通过对PSW中的RS1、RS0位的状态设置,来进行对当前工作寄存器组的选择。 2、部份专用寄存器。例如,累加器A、通用寄存器B、地址寄存器DPTR和进位位CY。 寄存器寻址方式是指操作数在寄存器中,因此指定了寄存器名称就能得到操作数。 例如:MOV A,R0 这条指令的意思是把寄存器R0的内容传送到累加器A中,操作数就在R0中。 INC R3 这条指令的意思是把寄存器R3中的内容加1 从前面的学习中我产
[单片机]
基于80C51单片机和CH375芯片实现打印机驱动系统的设计
引言 本课题来源于北京普析通用公司的一个项目。由于公司现有单机版光谱仪器产品(如1810、T6等)采用的是并行口打印技术,而随着USB打印机技术的逐渐普及,并行口打印机越来越不好买到,而且有些用户的打印机只是USB接口而非并行口,因此现有仪器产品对打印机的支持变得不能适应用户需要。为了实现能将公司的并行口仪器直接和USB打印机相连进行打印,决定设计开发一款LPT-USB打印机的驱动器,负责并口仪器和USB打印机的连接。 本文利用单片机和USB总线接口芯片实现LPT-USB打印机的驱动器设计。利用该设计将能够实现并行打印口数据可以在USB打印机上的直接打印工作,克服了有些并口仪器必须连接并口打印机才能打印的弊端,极大地方便了用户
[单片机]