基于C51的看门狗芯片X25045的控制方法
毕业设计论文_基于51单片机

南京信息职业技术学院毕业设计论文作者薛亮学号*****T32 系部电子信息学院专业无线电技术题目基于单片机的家用电器远程遥控装置的设计与制作指导教师李光明评阅教师完成时间:2010年2月11日目录第1章绪论 (5)1.1 概述 (5)1.2 设计要求及主要功能介绍 (5)1.3 MCS-51系列单片机简介 (7)第2章系统总体设计 (9)2.1 系统功能模块的划分 (9)2.2 系统原理框图 (9)2.3 系统软件主要特色 (10)第3章各模块详细设计 (12)3.1 振铃检测模块的设计 (12)3.2 双音多频模块的设计 (13)3.3 自动摘机及超时挂机模块的设计 (16)3.4 语音提示模块的设计 (17)3.5 密码设置模块的设计 (21)3.6 EEPROM及看门狗模块的设计 (23)3.7 继电器驱动模块的设计 (27)3.8 系统总程序的设计 (28)第4章系统的组装、调试和测试 (30)4.1 系统的组装、调试 (30)4.2 振铃检测及自动摘机功能的测试 (30)4.3 语音及双音多频功能的测试 (30)4.4 密码设置功能的测试 (30)4.5 EEPROM密码存储功能的测试 (31)4.6 继电器驱动、电器状态显示及语音提示功能的测试 (31)4.7 超时自动挂机功能的测试 (31)第5章系统方案总评 (32)结论 (33)致谢 (33)参考文献 (33)附录A 家用电器远程遥控装置的功能及使用 (35)1 家用电器远程遥控装置的功能 (35)2 家用电器远程遥控装置的使用方法 (36)图1 家用电器远程遥控装置原理图 (38)图2 家用电器远程遥控装置印制板图 (39)图3 家用电器远程遥控装置CPLD内部电气图 (40)表1 家用电器远程遥控装置元器件清单 (41)第1章绪论1.1 概述单片机以其强大的控制能力已经被广泛应用于诸多领域,从最初的8位控制器到现在的16位、32位控制器都还有很大的发展和应用空间。
X25045芯片简介

X25045芯片简介X25045芯片简介X25045是美国Xicor 公司的生产的标准化8脚集成电路,它将EEPROM 、看门狗定时器、电压监控三种功能组合在单个芯片之内,大大简化了硬件设计,提高了系统的可靠性,减少了对印制电路板的空间要求,降低了成本和系统功耗,是一种理想的单片机外围芯片。
X25045引脚如图1所示。
其引脚功能如下。
CS :片选择输入;SO :串行输出,数据由此引脚逐位输出;SI :串行输入,数据或命令由此引脚逐位写入X25045;SCK :串行时钟输入,其上升沿将数据或命令写入,下降沿将数据输出;WP :写保护输入。
当它低电平时,写操作被禁止;Vss :地;Vcc :电源电压;RESET :复位输出。
X25045在读写操作之前,需要先向它发出指令,指令名及指令格式如表1所示。
X25045看门狗电路设计及编程X25045硬件连接图如图2所示。
X25045芯片内包含有一个看门狗定时器,可通过软件预置系统的监控时间。
在看门狗定时器预置的时间内若没有总线活动,则X25045将从RESET 输出一个高电平信号,经过微分电路C2、R3输出一个正脉冲,使CPU 复位。
图2电路中,CPU 的复位信号共有3个:上电复位(C1、R2 ,人工复位(S、R1、R2 和Watchdog 复位(C2、R3 ,通过或门综合后加到RESET 端。
C2、R3的时间常数不必太大,有数百微秒即可,因为这时CPU 的振荡器已经在工作。
看门狗定时器的预置时间是通过X25045的状态寄存器的相应位来设定的。
如表2所示,X25045状态寄存器共有6位有含义,其中WD1、WD0和看门狗电路有关,其余位和EEPROM 的工作设置有关。
X25045状态寄存器WD1=0,WD0=0,预置时间为1.4s 。
WD1=0,WD0=1,预置时间为0.6s 。
WD1=1,WD0=0,预置时间为0.2s 。
WD1=1,WD0=1,禁止看门狗工作。
基于X25045的新型看门狗电路设计

基于X25045的新型看门狗电路设计
看门狗(Watchdog)电路是嵌入式系统需要的抗干扰措施之一。
本文用X25045 芯片设计了一种新的看门狗电路,具有体积小、占用I/O 口线少和编程方便的特点,可广泛应用于仪器仪表和各种工控系统中。
前言
工控系统在运行时,通常都会遇到各种各样的现场干扰,抗干扰能力是衡量工控系统性能的一个重要指标。
看门狗(Watchdog)电路是自行监测系统运行的重要保证,几乎所有的工控系统都包含看门狗电路。
在8096 系列单片机和增强型8051 系列单片机中,该系统已经做在芯片内部,用户只要用软件开放它就可以,使用很方便。
但目前工控系统仍在使用廉价的普通型8051 系列单片机,则看门狗电路必须由用户自己建立。
看门狗电路一般有软件看门狗和硬件看门狗两种。
软件看门狗不需外接硬件电路,但系统需要出让一个定时器资源,这在许多系统中很难办到,而且若系统软件运行不正常,可能导致看门狗系统也瘫痪。
硬件看门狗是真正意义上的程序运行监视器,如计数型的看门狗电路通常由555 多谐振荡器、计数器以及一些电阻、电容等组成,分立元件组成的系统电路较为复杂,运行不够可靠。
X25045 芯片简介
X25045 是美国Xicor 公司的生产的标准化8 脚集成电路,它将EEPROM、看门狗定时器、电压监控三种功能组合在单个芯片之内,大大简化了硬件设计,提高了系统的可靠性,减少了对印制电路板的空间要求,降低了成本和系统功耗,是一种理想的单片机外围芯片。
X25045 引脚如
其引脚功能如下。
C单片机看门狗电路

看门狗电路的定时时间长短可由具体应用程序的循环周期决定, 通常比系统正常工作时最大循环周期的时间略长即可。编程时,可在 软件的合适地方加一条喂狗指令, 使看门狗的定时时间永远达不到预 置时间,系统就不会复位而正常工作。当系统跑飞,用软件陷阱等别 的方法无法捕捉回程序时,则看门狗定时时间很快增长到预置时间, 迫使系统复位。 以下是 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;
{ ...;系统正常运行的程序部分 { cs=0; /*产生 cs 脉冲*/ cs=1; } } X25045 的看门狗电路使用十分方便。 X25045 内部还集成了 512BEEPROM 和电压运行监视系统,只需这样一块芯片,外加晶振和 复位电路就可以组成单片机的应用系统, 非常适合于便携式仪器和嵌 入式系统的设计。
看门狗芯片X25045

SPI接口应用之一---看门狗芯片X25045hadao 发表于 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,200ms,无效。
操作码:WREN 0x06 设置写允许位WRDI 0x04 复位写允许位RDSR 0x05 读状态寄存器WRSR 0x01 写状态寄存器READ 0x03/0x0b 读操作时内部EEPROM页地址WRITE 0x02/0x0a 写操作时内部EEPROM页地址程序代码:#i nclude <reg51.h>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 charuchar 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 busyreturn 0;CS=0;WriteByte(WREN);//when write the WREN, the cs must have a high lev elCS=1;CS=0;WriteByte(WRSR);WriteByte(ucData);CS=1;return 1;}void WriteEpm(uchar cData,uchar cAddress,bit bRegion)/* 写入一个字节,cData为写入的数,cAddress为写入地址,bRegion为页 */{while((ReadReg()&0x01)==1); //the device is busyCS=0;WriteByte(WREN); //when write the wren , the cs must have a high l evelCS=1;CS=0;if(bRegion==0){ WriteByte(WRITE0);} //write the page addrelse{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 busyCS=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.4sCS=1;CS=0; //reset the watchdog}基于X25045的新型看门狗电路图作者:重庆三峡学院应用技术学院谢辉来源:不详点击数:更新时间:2007年02月14日看门狗(watchdog)电路是嵌入式系统需要的抗干扰措施之一。
X25043/45芯片的原理及共应用

gu eo ae eu c o f moy n ajsn b iefoh t iu gae t e t e tr cn o.utemoe ag thv t fn tno me r ad dut g yt ls tai s p rddob ae rue ot 1 r r r, h i i s t mp a r F h
统 的抗干扰能力 。
幸上电复位及低电压检测,即在上电和V 低于
检 测门限时 ,输 出复位信号 ; EP M 存储器可分块或全部锁定保护 l :RO
另外 ,在温度控制 中 ,为 了记录用 户的设定值以 及其它参数 ( 如用户设定值、 I PD参数以及报警限设 定等 ) ,通常需 要用 EP 0 ( F AS R M 或 L H)器件来保 存 ,使其 即使在掉 电后 仍能保持数据 。 美 国 X cr io 公司将这 三种功能融为一体 ,出品 了 可 编 程 看门 狗 监控 的 并 且带 有 E 的 芯片 PR 0 M X 54/ 5 203 4 ,从而可以大大提高了系统的可靠性。 1 X 54 / 5 20 3 4 的特 点与原理 11X 5 4/ 5的特 点[ . 203 4 1 I
C e o g u Wa gDa s u Y n o g h n h nZh n h a n oh n a gY n s e g
( e a me t f v l c i c r o D l n nv r t o T cn l y D l 0 3 D p r n o NaaArh et e f ai iesy f eh oo , a a 16 2 ) t t u aU i g i n 1
【 关键词1 2034 看门狗定时器 EP O 单片机 X 54/ 5 zR M
Ab t a t T eX2 0 34 hpp o u e yXio o p rt ni sr c : h 5 4 /5c i r d c db c rc o eai nAme c , ne r tstes se rs tn i ut o i r a itg ae y tm e et gcr i h i c , wac d gcru t n P th o i i a dE。ROM e itr a di S eyp we fli mcin Th a e to u e ec a atrsi, c rg se, n t r o ru nf to . ep p r nr d c dt h r ce tc v i h i p n il n s gme o f eX2 0 34 ,n pidi eid sr mp rtr a g s ma e etmp rtr i r cp e du i t do t 5 4 /5 a dii a le t u tyt a n h h ts p nh n e eau e u e ,  ̄ s g h t e ea e u
x25045的读写程序 用c51写的
CS=1;
}
unsigned char Read1B(unsigned char cAddress,bit bRegion)
/* 读入一个字节,cAddress为读入地址,bRegion为页 */
{
unsigned char cData;
while((ReadSR()&0x01)==1)
#define READ1 0x0b
#define WRITE0 0x02
#define WRITE1 0x0a
unsigned char Read8()
{
bit bData;
unsigned char cLoop;
unsigned char cData;
for(cLoop=0;cLoop<8;cLoop++)
{
}
CS=0;
if(bRegion==0)
{
Write8(READ0);
}
else
{
Write8(READ1);
}
Write8(cAddress);
cData=Read8();
CS=1;
return cData;
}
q 对本文的评论 1 篇
>>上一篇:我国首台核心路由器研制成功
#define SI P2.4 /* 数据输入*/
/* here is the instrution of x25045*/
#define WREN 0x06
#define WRDI 0x04
#define RDSR 0x05
#define WRSR 0x01
X25045芯片及其应用
2.2状态寄存器 在任何情况下都可以通过RDsR指令读状态寄存
器,状态寄存器格式如下:
21 』 X X WDl
兰
!
WI)o BLl
Z
!
坐
BIO WEL WIP
wIP位表示x25045是否忙于向E:PR()M写数据, 该位足只读位,为“0”时表示没有写操作在进行,町 以向E:PROM写数据;为“1”时表示正在进行写操作. 此时不能向F 2PROM写数据。
兰吣薹j哪脶邶锄删似邶mⅢ姗 、
3 6、
序不匹配的情况,不能对片内寄存器正确凄写,将MOT
引脚接地后微处理器便正确读写各片内寄存器了:
参考文献
至片
l刘乐善,叶济忠,叶永峰微犁计箅机接L]技术原理及
用l 8031与Mcl468l 8的接口电路
直用 华中埋工大学出版社,1996 3
目前微处理器的同步总线结构分为两种:一种是 源于、Io…“,la公司的做处理器Mc680()的,另一种源 十l nlPl公司的做处理器8085的:由于Mcl46引8采用 、10TEL技术。即MoLomla和Intel总线兼弈技术.使得
RO.社08H;1个字节有8位
Pl 2
;使scK为低电乎
、
;累加器A带进位位寿移
P1】.f ;进位位移人sI
Pl 2
;使scK位为高电甲
RO,0uTRl;判循环是否结束
Pl 1
;清sI
该子程序可以设置块保护地址范围和可编程看
门狗定时器趟时周期了程序巾需要先用R7REN指令
设置写使能锁俘器。
wR s:cLR
wFL位表示写使能锁存器的状态。该位是只凄 位,它由wREN指令置位,由wRDl指令复位,写使能 锁存器被复位时向E 2PROM写操作被禁止。
多功能器件X25045及其在总线节点中的应用
多功能器件 X25045 及其在总线节点中的应用
王俊波,王红蕾
(贵州工业大学 电气工程学院,贵州 贵阳 550003)
摘 要:介绍多功能器件 X25045 的主要特点和原理,结合其在 CAN 总线节点中的作用,设计
并实现其硬件接口电路及软件。
具有低功耗、长寿命、可编程锁定等功能。使用 3 线总线串行外设接口 SPI,就可对芯片进行读写操作。利用编程器与计算机
相连,来实现对 E2 PROM 进行读写。
1 . 2 工作原理
X25045 内部有一个 8 位指令寄存器,该寄存器可以通过引脚 SI 来访问,数据在串行时钟输入的上升沿
! 收稿日期:2003 - 04 - 23 基金项目:贵州省基金项目资助[黔基合计字(1998)2010 号]
特别提出的是,看门狗定时器对单片机提供了独立的保护系统,当 系统出现故障时,只要其计时达到其编程的超时极限,或者当电源电压 降到最低转换点以下时,RESET 引脚就会立即输出高电平复位信号。
引脚
1 2 3 4 5 6 7 8
引脚名称
CS SO WP VSS SI SCK RESET Vcc
功能说明
芯片选择输入 串行输出
WIP 位表示 X25045 是否在向 E2 PROM 写数据。该位是 l 时,表示正在进行写操作,此时不能向其写 数据,反之,则是没有写操作进行,可以向其写数据。WEL 位是写使能锁存器的状态位。可以由指令进行复 位和置位操作。写使能锁存器被复位时向其写操作被禁止。
由 WREN 指令可以对状态寄存器中的 BL0,BLl,WD0,WDl 进行设置。BL0 和 BLl 位确定 E2 PROM 的块保护地址范围。WD0 和 WDl 位是看门狗超时功能的设定位,可以设置不同的周期(典型值 l . 4 S、600 mS、200 mS). 当 WD0 和 WDl 同时为 l 时,功能被禁止。
可编程看门狗监控EEPROM芯片X25045及其应用
18科技资讯 SCIENCE & TECHNOLOGY INFORMATION2009 NO.32SCIENCE & 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 复位控制。