智能控制开关的设计与实现
一、引 言 6
二、 智能控制开关硬件设计 6
(一) 系统的硬件构成及功能 6
(二) AT89C51单片机控制电路 7
(三)键盘控制和实时显示电路 9
(四)时间掉电存储电路 11
(五)电源电路 12
(六)开关控制电路 12
(七)系统总电路图 13
三、系统的软件设计 13
四、 调试系统 15
(一)应用到的工具仪表和仪器 15
(二)调试系统 15
(三)实物图 16
(四)元器件清单 17
五、结 束 语 18
参考文献 19
谢 辞 20
附 录:系统程序 21
一、引 言
在日常生活中,人们出门常常会忘记关闭家中插座的电源,本文设计一种智能控制开关,以定时器为原理,基于单片机的设计,以此智能控制关开来实现插座的定时开关,这种智能控制可以在人为定时的条件下确保电源方面的安全,从而减小因使用不当而导致的电器方面带来的危险和灾难。
在自动测控系统中,特别是长时间无人值守的测控系统中,经常需要进行长达几小时的定时操作。若采用专门的计时芯片设计,一方面控制复杂,占用硬件资源,另一方面也不经济,一般的时钟芯片价格都比较贵。由于单片机内部有定时器,因此,可以基于单片机设计一款智能控制开关。
由于使用了单片机来控制,因此使得该系统具有很强的灵活性和智能性。单片机发展到今天已经是一项很成熟的技术了,采用单片机控制的产品也比比皆是,虽然单片机的价格比较便宜,但是功能却很强大,因此选择单片机来控制是绰绰有余的!人性化的显示设计更是该系统一大 *景先生毕设|www.jxszl.com +Q: ^3^5`1^9`1^6^0`7^2#
特色,能实时显示当前开关的工作状况。
该智能控制开关是由单片机89C51控制电路、按键与LCD显示电路和掉电存储电路以及电源电路组成,电路十分的简单,主要由51芯片编程实现,功能十分的强大,时间精度非常高,是一款比较实用的智能开关,同时也是一件有欣赏价值的工艺艺术品。
本设计要求:
(1) 实时显示和定时控制显示;
(2) 定时断电保护;
(3) 准时对开关进行控制(开和关);
(4) 给出全部电路和源程序。
二、 智能控制开关硬件设计
(一) 系统的硬件构成及功能
智能开关控制的原理框架图请见图2-1。组成的部分是如下:掉电存储电路、单片机89C51、开关控制、键盘输入和显示以及电源电路组成。
采用LCD1602作为时间显示,以降低对单片机端口数的要求,同时也降低系统的功耗。
电源的部分:电源部分由整流、滤波和集成稳压器组成,以保证系统稳定工作。
图2-1 智能开关控制系统原理框图
(二)AT89C51单片机控制电路
AT89C51单片机是51系列单片机的一个成员,由于在单个芯片中我们加入了八位CPU和大容量的存储器,所以,AT89C51制作的单片机系统在机构上简单并且容易构造,在价钱上便宜有使用,所以在投入生产的过程中使用的话,不仅可以节约成本,还能够在很大程度上提高系统的性价比,从而增加利润。
AT89C51这个芯片有四十个引脚,引脚的配置图见图2-2。与8031相比,AT89C51自带4K的ROM和128B的RAM,因此编写中小型系统就无需任何硬件进行扩展。
图2-2 AT89C51引脚配置
AT89C51芯片有40个引脚,它们功能为:
电源电压(VCC)、接地(GND)、复位输入(RST)。当复位输入变成高电平并且有2个机器周期的时候,所有I/O引脚复位至“1”。
ALE/PROG:外部的存储器工作的时候,地址上的锁存将会与其他地址的锁存相同。
/PSEN:这个是由外部程序进入系统所要选择通道的信号。外部程序的容量存储器在选取工作的这段时间内,对于工作周期是两次/PSEN,这台机器所应用的程序才是有效的。但是外部的程序进入工作阶段时,工作周期/PSEN即使是两次也是没有用的,因为根本不会触发程序。
/EA/VPP:如果/EA能够以低电平保持工作,那么就在外部的程序容量存储器在运作时启动(0000H-FFFFH),这个时候不管内部的程序是否运作,外部的存储器有没有启动,都会成功工作。把加密密匙设置为1的时候,/EA将会把它内部锁定,锁定的程序为RESET;当/EA以高电平持续运作的时候,程序能够正常进行。用FLASH编程的时候,这个引脚接其他的电源VCC来工作,并且工作效率很高。
XTAL1:输入是来自反向振荡放大器和内部的时钟工作电路。
XTAL2:输出是来自反向振荡放大器。
P0端口:在8位的属性为漏级开路的双向I/O口中,每只引脚可以吸收8TTL门的电流。P0端口能用于在外部程序的数据存储器,这里它可以被定义为数据/地址的第8位来计算。当P1端口管脚第一次写入1的时候,就会被定义为高阻输入。
P1端口:8位双向的I/O口。引脚P1.2~P1.7会提供内部的上拉,当它作为输入并且被外部的下拉成为低电平的时候,由于内部上拉,这些引脚会被作为输出电流。P1.0和P1.1需要在外部被上拉,可以用作片内的精确模拟比较器的正向输入端(AIN0)和反向输入端(AIN1),P1端口输出缓冲器能够接收20mA电流,并且能直接的驱动LED显示器;P1端口引脚写入“1” 之后,可以用作为输入端口。在闪速编程和编程校验的期间,P1端口也可接收编码传输的数据。
P2口:它的上拉电阻在上拉电阻过程中的I/O的端口中,能够接收这个端口的只有P2检测端口,输出来的为4个电流都是TTL门电流,当P2端口内的数据被写成代码1的时候,内部的上拉电阻被把它拉的很高,在另一方面输入并使用它。如果想要P2端口被拉的很低,就要结束对它电流的输入,否则就没有电流通过。这就是为什么由于内部的上拉而导致的缘故所在。另外,16位的地址上要用P2端口的内部就行容量存储时,P2端口的输出地址的频率必须选择高八位来运作,否则无效。利用该端口的上拉优势,可以用八位地址的编码存储器对它进行存储,从而提高效率。这个端口的输入内容很特别,但是用处很大。这个端口还可以在各种编程等工作中应用,例如Flash的修改等等,地址信号的控制与传输也可以在此处应用。P3口:这个引脚的P3到P7端口被内部结构上拉。20ma左右的电流可以通过P3端口进入并被接受;P3端口输入指令为“1”的代码后,内部的电阻被上拉,电流可以通过。特殊的功能电流也能通过P3端口实现功能,其功能在表2-1中。P3端口也可以为闪速存储器提供编程编,还可以接收控制编程的校正信号。
(三)键盘控制和实时显示电路
采用独立按键占用了单片机I/O口,因此在设计该系统时,为了减少单片机I/O口的使用,采用了行列式键盘,如下图2-3所示。
图2-3 行列式键盘原理图
实时控制和显示分别采用了89C51和1602LCD液晶,为了减小整个系统的功耗,不采用数码管作为显示器件,而用1602LCD作为来显示时间和要定时的时间,并且这两个芯片接通电源可以直接用单片机编程对它进行操作。下图2-4为实时控制和显示电路原理图。
原文链接:http://www.jxszl.com/dzxx/txgc/31606.html