基于89C52单片机的定时开关方案设计书定稿.docx
- 文档编号:2603026
- 上传时间:2023-05-04
- 格式:DOCX
- 页数:49
- 大小:562.36KB
基于89C52单片机的定时开关方案设计书定稿.docx
《基于89C52单片机的定时开关方案设计书定稿.docx》由会员分享,可在线阅读,更多相关《基于89C52单片机的定时开关方案设计书定稿.docx(49页珍藏版)》请在冰点文库上搜索。
基于89C52单片机的定时开关方案设计书定稿
题目:
基于89C52单片机的定时
开关设计
专业代码:
071201
单位:
物理科学与信息工程学院
2011年5月25日
摘要
本文提出了一种智能开关的设计方法,该时控开关主要是以单片机STC89C52RC作为主控单元,利用其I/O接口、定时器、中断系统等资源,以时钟芯片DS12C887作为时钟单元,通过以继电器为核心的外围电路控制受控线路,达到定时通断线路的目的。
此外,可通过无线遥控自行设定当前时间及通断时间,并实时显示在LCD1602液晶显示器上。
软件部分以C语言进行单片机编程,主要包括对DS12C887的时间读写,LCD1602的实时显示以及对无线模块和控制驱动电路等几部分。
最后,通过DXP2004绘制印刷电路板,制作出实物并调试通过。
关键词:
定时开关;无线遥控;STC89C52;12C887;LCD160
Abstract
Thispaperpresentsadesignmethodofintelligentswitching,thecontrolswitchusingtheMCUSTC89C52RCmainlyasamasterunit,usingitsI/Ointerfaces,timers,terminalsystemsandotherresources,usingclockchipDS12C887asaclockunit,throughExternalcircuitasthecoreoftherelaycontrolcircuitcontrolledtoachievethepurposeoftimeoffline.Inaddition,itcanthroughitsownwirelessremotecontroltosetthecurrenttimeandofftime,andreal-timedisplayintheLCD1602LCDdisplay.SoftwareispartoftheSCMtoClanguageprogramming,includingthetimetoreadandwriteontheDS12C887,LCD1602,real-timedisplayandthewirelessmoduleandthecontroldrivecircuitandotherparts.Finally,wedrawandprintedcircuitboardsusingDXP2004,andmadethephysical.
Keywords:
Timerswitch,Wirelessremotecontrol,89C52,12C887,LCD1602
基于DS12C887的时控开关硬件设计
前言
随着信息技术的飞速发展,定时开关在各种场合都有着极为广泛的用途,定时开关在实际应用中可实现设备的计算机智能监控,对提高工作效率和管理水平具有重大意义。
本文设计的多功能时控开关可通过无线遥控控制,表现为高稳定性和实用性,可应用于生活中的各个方面,如网线、高频信号线、电源等,既节省资源,又能提高工作效率且成本低廉,满足了现在家庭的安全、快捷、可靠的使用特点。
1.系统硬件设计
系统的硬件由89C52最小系统,继电器组,无线收发模块,DS12C887时钟芯片,LCD1602显示器组成,系统框图如图1所示:
图1系统框图
1.1主板与显示电路设计
1.1.1主控芯片
近几年,以单片机为核心的控制芯片,以其较高的稳定性及相对低廉的价格迅速占领市场,而51系列单片机更是风靡一时,在本电路中,核心器件采用STC89C52单片机。
STC89C52的40个引脚大致可分为4类:
电源、时钟、控制和I/O引脚。
具体介绍如下:
(1)主电源引脚(2跟),VCC(Pin40):
电源输入,接5V直流源;GND(Pin20):
接地线。
(2)外接晶振线(2跟),ATNL1(Pin18):
片内晶振电路输入端;ATNL2(Pin19):
片内晶振电路输出端。
(3)控制引脚线(4跟),RST/VPP(Pin9):
复位引脚,引脚上出现两个机器周期的高电平,将使单片机复位;ALE/PROG(Pin30):
地址锁存允许信号;PSEN(Pin29):
外部存储器读选通信号;
EA/VPP(Pin31):
程序存储器的内外部选通,接低电平从外部程序存储器读指令,接高电平则从内部程序存储器读指令。
(4)可编程输入/输出引脚(32跟),STC89C52共有4组8位的可编程I/O口,分别为P0、P1、P2、P3口,每个口有8位(8跟引脚),共32跟。
P0口(Pin39--Pin32):
8位双向I/O口线,名称为P0.0——P0.7;P1口(Pin1--Pin8):
8位准双向I/O口线,名称为P1.0——P1.7;P2口(Pin21--Pin28):
8位准双向I/O口线,名称为P2.0——P2.7;P3口(Pin10--Pin17):
8位准双向I/O口线,名称为P3.0——P3.7。
STC89C52主要功能表如下(表1所示):
主要功能特性
兼容MCS51指令系统
2个串行中断
8K可反复插写FlashROM
2个外部中断源
256*8bit内部RAM
2个读写中断口线
32个双向I/O口
6个中断源
3个16为可编程定时/计数中断
3级加密位
时钟频率0--24MHz
低功耗空闲和掉电模式
可编程UART串行通道
软件设置睡眠及唤醒功能
表1STC89C52主要功能
STC89C52引脚图如下(图2所示):
图2STC89C52引脚图
STC89C52实物图见附图11
1.1.2显示模块
字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD。
目前常用16*1、16*2、20*2、40*2等模块,本设计根据需要选择LCD1602型液晶显示。
LCD1602液晶显示模块以其微功耗、体积小、显示内容丰富、超薄轻巧等诸多优点,,在各类仪表和低功耗系统中得到广泛的应用。
其主要参数如下:
显示容量:
16*2个字符。
芯片工作电压:
4.5--5.5V。
工作电流:
2.0mA(5.V)。
模块最佳工作电压:
5.0V。
引脚功能说明:
第1脚VSS为电源地;第2脚VDD接5V电源正极;第3脚V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,使用时通过一个10K的电位器调整对比度[4];第4脚RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器;第5脚RW为读写信号线,高电平时进行读操作,低电平时进行写操作;第6脚E(或EN)端为使能(enable)端;第7~14脚D0~D7为8位双向数据端;第15~16脚空脚或背灯电源。
15脚背光正极,16脚背光负极。
LCD1602实物图见附图12.
1.1.3.主板与显示电路(见图3)
图3主控与显示电路
1.2.时钟芯片接口电路
1.2.1DS12C887芯片
DS12C887是一种新型的时钟芯片,能够进行长时间的记录,包括日历、星期在内的时间信息,并且存储的时间信息在掉电情况下可保存10年之久。
DS12C887特点:
可作为IBMAT计算机的始终和日历;与MC146818B和DS1287的管脚兼容;自带晶体振荡器和电池;可计算到2100年前的秒、分、小时、星期、月、年七种日立信息并具有瑞年补偿;用二进制码或BCD码代表日历和闹钟信息;有12小时和24小时两种模式,12小时带有AM和PM提示;可选用夏令时模式;可以应用于MOTOROMA和INTEL两种总线;数据地址总线复用;内建128字节RAM:
14字节始终控制寄存器和114字节通用RAM;可编程方波输出;总线兼容中断;三种可编程中断:
时间性中断、周期性中断、时钟更新结束中断。
引脚功能:
(1)MOT(总线模式选择):
当此引脚接VCC时,选用的是MOTOROLA总线时序;当接地或不接时,选用的是INTEL总线时序。
(2)SQW(方波输出):
当电压低于4.25V时不起作用。
(3)周期性中断率和方波中断频率(表2所示):
寄存器A的控制位
PI周期中断周期
SQW输出频率
RS3
RS2
RS1
RS0
0
0
0
0
无
无
0
0
0
1
3.90625ms
256Hz
0
0
1
0
7.8125ms
128Hz
0
0
1
1
122.070ms
8.192KHz
0
1
0
0
244.141ms
4.096KHz
0
1
0
1
488.281ms
2.048KHz
0
1
1
0
976.5625ms
1.024KHz
0
1
1
1
1.953125ms
512Hz
1
0
0
0
3.90625ms
256Hz
1
0
0
1
7.8125ms
128Hz
1
0
1
0
15.626ms
64Hz
1
0
1
1
31.25ms
32Hz
1
1
0
0
62.5ms
16Hz
1
1
0
1
125ms
8Hz
1
1
1
0
250ms
4Hz
1
1
1
1
500ms
2Hz
表2期性中断率和方波中断频率
(4)AD0-AD7(双向数据/地址复用总线);(5)AS:
地址锁存-ALE。
(6)DS(DataStrobeorReadInpur)-RD:
当系统选择的是INTEL总线模式时,DS被称作RD,当他有效是表示DS12C887正在往总线上输出数据。
RD信号线在存储器芯片上被称作OE信号线;(6)R/W(Read/WriteInput)-WR。
(7)CS(片选输入):
当Vcc低于4.25V时,DS12C887从内部禁止对外部CS的操作。
此时时钟和RAM都被保护起来;(8)IRQ(中断输出请求):
当中断状态为和对应的中断允许位有效时,IRQ的输出保持为底。
复位和读C寄存器都可以清楚IRQ中断信号。
没有中断时IRQ呈高阻态,其他中断源还可以挂接到中断总线上。
由于IRQ是漏极输出,所以不用外接上拉电阻;(9)RESTE(复位):
复位脚对时钟、日历、RAM无效。
系统上电时复位脚要保持低电平200ms以上DS12C887才可以正常工作。
当复位脚为底,但Vcc高于4.25V时,以下情况发生:
周期中断允许(PIE)位清零,闹钟中断允许(AIE)位清零,更新完成中断标志(UF)位清零,中断请求状态标志(IRQF)位清零,周期中断标志(PF)位清零,当RESET为低时,DS12C887不可操作,闹钟中断标志(AF)位清零,IRQ呈高阻态,方波输出允许(SQWE)位清零,更新完成中断允许(UIE)位清零。
通常情况下把复位(RESET)和电源(Vcc)相连。
地址分布:
DS12C887的地址包括114字节通用RAM、10字节用于记录时间、日期、闹钟的RAM及4字节的控制、状态RAM。
所有的字节都可以在除以下的情况下直接读写:
寄存器C、D为只读,寄存器A的第七为只读,秒字节的高位为只读。
时间、日历和闹钟区域:
通过读相应的寄存器获取相应的时间、日历等信息。
通过写相应的存储器设置相应的时间、日期和闹钟。
时间、日历和闹钟的数据格式如表3所示。
地址
功能
十进制范围
范围
二进制数据范围
BCD数据范围
0
秒
0-59
00-3B
00-59
1
秒闹钟
0-59
00-3B
00-59
2
分
0-59
00-3B
00-59
3
分闹钟
0-59
00-3B
00-59
4
小时(12时制)
1-12
01-0C(AM),81-8C(PM)
01-12AM.81-89PM
小时(24时制)
0-23
00-17
00-23
5
时闹钟(12时制)
1-12
01-0C(AM),81-8C(PM)
01-12AM.81-89PM
时闹钟(24时制)
0-23
00-17
00-23
6
星期(星期天=1)
1-7
00-07
00-07
7
日期
1-31
01-0F
1-31
8
月份
1-12
01-0C
1-12
9
年
0-99
00-63
00-99
表3时间、日历和闹钟的数据格式
OXC0-OXFF为特殊的数,如果小时闹钟为OXC0-OXFF,表示每小时中断一次;如果小时闹钟和分闹钟都为OXC0-OXFF,表示每分钟中断一次;如果小时闹钟、分闹钟和秒闹钟都为OXC0-OXFF,表示每秒中断一次。
非易失性RAM:
114字节的非易失性通用RAM没有特殊功能,可以随时读写。
寄存器:
DS12C887有四个控制寄存器,可以在任意时刻读写。
UIP:
更新(UIP)位用来标识芯片是否即将进行更新。
当UIP为1时,表示更新即将开始,当它为0时表示在至少24us内不会产生更新。
此时,时钟、日历和闹钟可以通过读写相应字节获得和设置。
UIP位为只读并且不受复位信号(RESET)的影响。
通过把寄存器B中的SET为设置为1,可以禁止更新并将UIP清0.
DS12C887引脚图如图4所示。
图4DS12C887引脚图
DS12C887实物图见附图13。
1.2.2DS12C887接口电路(见图5)
图5时钟芯片接口电路
1.3无线模块电路
1.3.1PT2262/2272模块
无线数据传输广泛应用于遥控、遥测、车辆监控、门禁系统、身份识别等各种场合。
本设计根据实用性原则,一改普通单调键盘控制方式,采用调频无线发射接收模块,安全性高,便于控制,可谓是物美价廉。
本设计在主控板采用2262、2272模块,用调频遥控器进行调时、定时等功能控制。
在被控板采用315M发射接收头,操作简单,便于调试。
1.3.1PT2262、PT2272模块
PT2262、PT2272是一对带地址、数据编码功能的红外遥控发射、接收芯片,其中发射芯片PT2262将载波振荡器、编码器和发射单元集成与一身,使发射电路变得十分简洁
接收芯片PT2272的数据输出位根据其后缀不同而不同,数据输出具有“暂存”和“锁存”两种方式,方便用户使用。
PT2262/PT2272特点:
CMOS工艺制造,低功耗;外部元器件少;RC震荡电阻;工作电压范围宽:
2.6-15V;数据最多可达6位;地址码最多可达531441种。
PT2262引脚功能说明:
(1)Pin1-Pin6(A0-A5):
地址输入端,可编成“1”、“0”和“高阻态”三种状态。
(2)Pin7、Pin8、Pin10-Pin13(A6/D0-A11/D5):
地址或数据输入端,地址输入时用Pin1-Pin6,做数据输入时只可编成“1”、“0”两种状态。
(3)Pin14(TE):
发射使能端,低电平有效。
(4)Pin15、Pin16(OSC1、OSC2):
外接震荡电阻,决定震荡的时钟频率。
(5)Pin17(Dout):
数据输出端,编码由此脚串行输出。
(6)Pin9、Pin18(End、Vcc):
电源+、—输入端。
PT2272引脚功能说明:
(1)Pin1-Pin6(A0-A5):
地址输入端,可编成“1”、“0”和“高阻态”三种状态。
要求与PT2262设定的状态一致。
(2)Pin7、Pin8、Pin10-Pin13(D0-D5):
数据输出端,分暂存和锁存两种状态。
(3)Pin14(DI):
脉冲编码信号输入端。
(4)Pin15、Pin16(OSC1、OSC2):
外接震荡电阻,决定震荡的时钟频率。
(5)Pin17(VT):
输出端,接收有信号时,VT端有低电平变为高电平。
(6)Pin9、Pin18(End、Vcc):
电源+、—输入端。
PT2262/PT2272引脚图如图6所示。
图6PT2262/PT2272引脚图
PT2262/PT2272实物图见附录图14
1.3.2315M无线收发模块
数据发射模块的工作频率为315M,采用声表谐振器SAW稳频,频率稳定度极高,当环境温度在-25~+85度之间变化时,频飘仅为3ppm/度。
特别适合多发一收无线遥控及数据传输系统。
声表谐振器的频率稳定度仅次于晶体,而一般的LC振荡器频率稳定度及一致性较差,即使采用高品质微调电容,温差变化及振动也很难保证已调好的频点不会发生偏移。
主要技术指标:
通讯方式,调幅AM;工作频率,315MHZ/433MHZ;频率稳定度,±75KHZ;发射功率,≤500MW;静态电流,≤0.1UA;发射电流,3~50MA;工作电压,DC3~12V。
接收模块的工作电压为5伏,静态电流4毫安,它为超再生接收电路,接收灵敏度为-105dbm,接收天线最好为25~30厘M的导线,最好能竖立起来。
接收模块本身不带解码集成电路,因此接收电路仅是一种组件,只有应用在具体电路中进行二次开发才能发挥应有的作用,这种设计有很多优点,它可以和各种解码电路或者单片机配合,设计电路灵活方便。
主要技术指标:
通讯方式,调幅AM;工作频率,315MHZ/433MHZ;频率稳定度,±200KHZ;接收灵敏度,-106DBM;静态电流,≤5MA;工作电流,≤5MA;工作电压,DC5V;输出方式,TTL电平。
315M无线收发模块实物图见附录图15.
2.系统软件设计
本设计依托天祥电子TX-1C单片机实验板,采用C语言进行设计。
在WindowsXP系统下用KEIL软件调试通过。
总程序包括对时钟芯片DS12C887的时间读写,对液晶显示器LCD1602的实时显示,对按键的循环扫描及控制输出等功能。
2.1系统主程序流程图
如图7所示的主程序主要起到导向和决策功能,各种功能的实现主要通过调用具体的子程序。
初始化
按键扫描
中断标志Y
为1?
N
N进入
正常工作状态?
Y
按键扫描
读时间
12C887
终止Y
时间到?
N
图7主程序流程
2.2各部分子程序流程图
(1)初始化子程序,如图8所示:
图8初始化流程
(2)读12C887时间函数,如图9所示:
图9读DS12887时间函数流程
(3)1602显示子程序,如图10所示:
图10LCD1602显示子程序流程
(4)按键扫描判断子程序,如图11所示:
NY
Y
N
Y
N
N
Y
图11按键扫描子程序流程
3.制作调试与操作
3.1元器件选择及其清单
本设计的核心部件是由单片机读写时钟芯片以完成对继电器的开关控制,且有液晶显示器予以输出。
根据所实现功能,在元器件选择上有很大的考虑空间,以经济实用为原则,元器件清单如下:
STC89C52单片机1个
DS12C887时钟芯片1个
PT2262/2272模块1对
315M无线收发模块1对
DSY2Y-S-212L双路继电器4个
LM7805三端稳压集成电路1个
LCD1602液晶显示器1个
TX-1C实验板(自带按键)1块
电阻,电位器,电容,三极管若干
3.2电路的制作与调试
在电路设计之初,考虑到电路之间的相互干扰作用,本设计电路板分为主控、被控两部分,两部分之间采用无线收发模块通信,而输入部分采用调频遥控器控制。
电路板在在WindowsXP系统下用DXP2004绘制。
具体电路见附录图16/17.
3.3电路改进与扩展
本设计为简单方便,采用各芯片直接与单片机引脚相连接方式,而使单片机所有引脚都已利用不利于其他功能的扩展,在实际使用中,因单片机I/O口紧张,可采取引脚复用方式,以丰富设计功能。
另外,在无线传输部分,因元器件资源的限制,采用了XL02-232AP1微功率无线透明传输模块,使设计更加稳定但增加了成本。
目前软件设计只控制了4组寄存器的通断,且设计功能表述部分用发光二极管表现,不能直接应用。
在实际中,可以通过改进软件功能就能控制多组继电器不同时间逐次的通断,以实现更多功能自动化的控制。
参考文献
[1]郭天祥编著.新概念51单片机C语言教程[M].电子工业出版社,2008.
[2]谭浩强编著.C程序设计[M].清华大学出版社,2005.
[3]张义和,陈敌北编著.例说8051[M].人民邮电出版社,2006.
[4]魏立峰,王宝兴主编.单片机原理与应用技术[M].北京大学出版社,2006.
[5]邱关源主编.电路[M].高等教育出版社,1999.
[6]童诗白,华成英主编.模拟电子技术基础[M].高等教育出版社,2001.
[7]阎石主编.数字电子技术基础[M].高等教育出版社,1998.
[8]张肃文主编.高频电子线路[M],高等教育出版社,2004.
[9]零点工作室,刘刚,彭荣群编著.ProtelDXP2004SP2原理图与PCB设计[M].电子工业出版社,2007.
[10][英]MartyBrown著.徐德鸿等译PowerSupplyCookbook(开关电源设计指南)[M].机械工业出版社,2006.
[11]魏军丞.用单片机制作的定时开关控制器[J].电子世界,2005,(10):
25-27.
[12]马俊,刘晓林.智能键盘字符输入及LCD显示系统设计[J].电子设计工程,2009,(01):
66-68.
[13]宏晶科技(深圳).STC89C51数据手册[M].
[14]天祥电子.TX-1C单片机实验板使用手册[M].
[15]DallasSemiconductor(美国).DS12C887RealTimeClock数据手册[M].
致谢
首先感谢我的导师任世杰老师。
一直以来任老师不辞辛苦,经常在百忙之中抽出时间对我进行指导,并协助我制定了详细的工作计划,督促我完成每个阶段的工作任务。
任老师不仅知识丰富且阅历广泛,通过任老师的指导,我学到的不仅仅是知识,更多的是学到了一套行之有效的科学的研究方法,还有做人的道理。
在此,谨向他表示由衷的感谢!
特别感谢论文答辩委员会的诸位领导及老师能在百忙之中审阅我的论文,并出席论文答辩会。
感谢理工学院的所有老师给予我的教育、关心和帮助。
此外,感谢创新实验室的各位同学在我论文设计之间,对我硬件和软件设计的帮助。
感谢他们对我无私的帮助和支持。
附录:
附录一:
附图11STC89C52实物图
附图12LCD1602实物图
附图13DS12C887实物图
附图14PT2262/PT2272实物图
附图15315M收发模块
附录二:
:
图16主控板PCB图
图17被控板PCB图
被控板图
2.部分程序清单
#include
#defineucharunsignedchar
#defineuintunsignedint
//**************液晶接口*********************
sbi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 89 C52 单片机 定时 开关 方案设计 定稿