首页 > 编程知识 正文

硬件看门狗芯片电路图(c语言)

时间:2023-05-05 18:54:52 阅读:75058 作者:4303

采用89C51单片机和X25045组成的看门狗电路,X25045硬件连接图如图2所示。 X25045芯片内置看门狗计时器,可通过软件预设系统监视时间。 如果看门狗计时器在预先设定的时间内总线不动,则X25045从RESET输出高电平信号,经过微分电路C2、R3输出正脉冲,复位CPU。 在图2的电路中,CPU的复位信号为上电复位(C1、R2 )、手动复位(s、R1、R2 )和看门狗复位(C2、R3 )这三种,通过或门集成后加到复位侧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,禁止看门狗动作。

看门狗电路的定时时间长度由特定APP应用的循环时间确定,通常可以比系统正常操作时的最大循环时间稍长。 编程时,可以在软件的适当位置添加喂狗命令,使看门狗的定时时间永远达不到预设时间,系统不复位,正常运行。 当系统弹出,无法通过软件陷阱等其他方法捕获程序时,看门狗计时器的时间会立即延长到预设时间,使系统复位。

以下是用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不一致char com;

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

{

无符号char I;

for(I=0; I

{ ACC=com; /*将数据列入a *

si=c;

sck=0; /*sck发生跳跃*

sck=1;

Com=Com

}

返回;

}

主() )

{

com=0x06; /*写入允许指令*

cs=0;

特朗普();

cs=1;

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

cs=0;

特朗普();

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

特朗普();

cs=1;

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

}

需要注意的是,在程序正常运行时,应该在适当的地方加入喂狗的指令,以免系统正常运行时的定时时间达到预设的时间。 系统不会重置。 给狗的指令如下。

主() )

{

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

{

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

cs=1;

}

}

X25045的看门狗电路非常好用。 X25045内部还集成了512BEEPROM和电压动作监测系统,只需加装这种芯片、晶振和复位电路就可以构成单片机应用系统,非常适合便携式设备和嵌入式系统的设计。

关键字:

X25045

看门狗电路

89C51

编辑:什么样的鱼引用地址:

3358 news.eeworld.com.cn/MCU/IC 526309.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。