长春工业大学课程设计说明书课程设计名称单片机原理课程设计(40346581)专业电气工程及其自动化班级100308学生姓名闫富裕指导教师侯云海2013年1月7日课程设计任务书课程设计题目:智能控制开关起止日期:2013.1.7----2013.1.11设计地点:单片机原理实验室设计任务及日程安排:着重提高学生在单片机应用方面的实践技能,树立严谨的科学作风,培养学生综合运用理论知识解决实际问题的能力。学生通过单片机和硬件和软件设计、安装、调试、整理资料等环节,初步掌握工程设计方法和组织实践的基本技能,逐步熟悉开展科学实践的程序和方法。设计要求:1)根据应用系统的要求,初步掌握总体结构设计的方法和构思,从中选择一种最佳设计方案;2)根据应用系统结构规模的要求,掌握单片机外部扩充系统硬件设计的基本过程;3)根据任务要求和硬件设计要求,首先画出程序的总体流程图,然后进行各控制模块的程序设计;4)掌握如何应用单片机仿真器来开发应用系统及仿真调试的过程。参考资料:1.《单片机原理及应用》张毅刚等编,高等教育出版社,2004年1月。2.《单片机原理课程设计》实验指导书,林志奇,校内印刷,2012年12月。日程安排:2013.1.7上午动员/布置任务/分组/查资料。2013.1.7下午—2013.1.9进行理论设计和形成设计报告。2013.1.10—2011.1.10进行实验和完成实验报告。2013.1.11分组进行考核。设计报告的总体要求:每人独立完成设计内容,并提交一份课程设计报告。报告内容包括:设计题目/设计要求/设计方案/硬件电路/软件流程图/程序/工作原理阐述/系统性能分析和心得体会等。考核办法:1)出勤20%;2)实验结果30%;3)报告20%;4)答辩30%。智能控制开关的设计1.设计内容智能化开关电源的主要功率变换电路仍然采用与传统开关电源相同的拓扑结构,但其反馈控制环路不采用传统的模拟控制方式,而是采用数字控制方式,即误差采样,脉冲宽度调制(PWM)的调制信号的计算、生成,遥感信号的接收、处理等控制部分电路均使用数字控制技术。通过智能化的数字控制技术,力求解决环路的稳定性、抗干扰性、电源远程控制性等问题。本开关电源主要技术指标:①交流输入电压85~265VAC宽范围输入;②直流输出电压5~15V连续可调;③输出电压调整率≤2.5%;④具有输出短路控制;⑤具有电压显示功能及故障报警指示。双控开关又叫双联开关,分为一位、二位或多位,其中两位或多位的双控开关内部由两组或多组一位双控开关组成。一位双控开关实际上是一个单刀双掷开关,每一只开关分别控制相应的灯组。如图l所示两地控制开关电路。图中的两只开关(S1和S2)均为一位双联开关,两只开关都能单独地、任意地控制照明电路的通和断。从线路中,不难看出,无论电路初始状态如何,只要改动任一只开关状态,照明电路将由断电状态变为通电状态或者相反。并由此电路图可看出,整个电路比较安全,符合安全规范,且线路简单明了,检修容易。2.设计要求1.密码保护和设置;2.实时显示和定时控制显示;3.密码和定时断电保护;4.准时对开关进行控制(开和关)。3.设计方案时间显示采用LCD1602,以降低对单片机端口数的要求,同时也降低系统的功耗。时间控制电路和键盘输入以及掉电存储都通过89C2051的I/O口控制。电源部分:电源部分由整流、滤波和集成稳压器组成,以保证系统稳定工作。如图2-1所示。EEPROM存储器AT89C51电源DS12887时钟LCD1602显示键盘输入开关控制图2-1智能开关控制系统原理框图以单片机作为中央控制单元,机在预先编制好的指令(即软件程序)的驱动下,控制整个硬件电路工作,完成系统各项功能。具有当地无线通讯口,能对下位机进行控制;同时也具备远程数据接口。键盘用于修改和设定定值,电压上下限、电流上限值等;LCD用于显示定值及各种运行状态。单片机获得电压、电流、相角值后进行分析计算出功率因数、三相不平衡参数等,判断是否正常。并通过周期值和设定值,控制开关的闭合与关断。4.系统硬件设计智能开关控制的原理框图如3-1所示。它由以下几个部件组成:单片机89C51、电源电路、掉电存储电路、开关控制、键盘输入和显示以及电源电路组成。时间显示采用LCD1602,以降低对单片机端口数的要求,同时也降低系统的功耗。时间控制电路和键盘输入以及掉电存储都通过89C2051的I/O口控制。电源部分:电源部分由整流、滤波和集成稳压器组成,以保证系统稳定工作。该产品的原理图如图1所示,AT89c51单片机作为本电路的核心,采用上电复位,时钟电路中晶振高达12MHz以满足从串口输出数据。为了向CPU提供准确的时钟,我们采用DS12887作为时钟芯片。DS12887是美国达拉斯半导体公司(Dallas)生产的并行接口实时时钟/日历芯片,它内置晶振和锂电池,并带有128字节RAM,其中14字节用作时钟和控制寄存器,114字节可被用户当作非易失性RAM使用。初始化后,可自动获得相应的年月日星期时分秒,且断电后数据不丢失,可继续工作,充电一次可供内部使用10年,以便对被控设备进行分时间段的处理。系统利用独立式键盘输入修改值,采用串行口输出显示数据。输出时外接八位锁存存储芯片74LS164,然后连接7段LED数码管作为显示器。此方式具有低功耗、高亮度的特点,可满足设计要求。初始加电时,系统将执行初始程序所设置的时间及初始断、送电时间,用户可根据实际所需通过键盘重新设置(需输入正确的密码)参数,默认密码为88,修改密码后断电不丢失。操作方便,可靠性高。EEPROM存储器AT89C51电源DS12887时钟LCD1602显示键盘输入开关控制图3-1智能开关控制系统原理框图(1)AT89C51单片机及其引脚说明AT89C51单片机是51系列单片机的一个成员,内部自带4K字节可编程FLASH可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,与IntelMCS-51系列单片机的指令和输出管脚相兼容。由于将多功能八位CPU和闪速存储器结合在单个芯片中,因此,AT89C51构成的单片机系统是具有结构简单、造价低廉、效率高的微控制系统,减少了硬件开销,节省了成本,提高了系统的性价比。AT89C51是一个有40个引脚的芯片,引脚配置如图3-2所示。与8031相比,AT89C51自带4K的ROM和128B的RAM,因此编写中小型系统就无需任何硬件进行扩展。图3-2AT89C51引脚配置AT89C51芯片的40个引脚功能为:VCC:电源电压。GND:接地。RST:复位输入。当RST变为高电平并保持2个机器周期时,所有I/O引脚复位至“1”。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡放大器的输出。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。P0口:8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:8位双向I/O口。引脚P1.2~P1.7提供内部上拉,当作为输入并被外部下拉为低电平时,它们将输出电流,这是因内部上拉的缘故。P1.0和P1.1需要外部上拉,可用作片内精确模拟比较器的正向输入(AIN0)和反向输入(AIN1),P1口输出缓冲器能接收20mA电流,并能直接驱动LED显示器;P1口引脚写入“1”后,可用作输入。在闪速编程与编程校验期间,P1口也可接收编码数据。P2口:带内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:引脚P3.0~P3.7为带内部上拉的双向I/0引脚。P3口的输出缓冲器能接收20mA的灌电流;P3口写入“1”后,内部上拉,可用输入。P3口也可用作特殊功能口,其功能见表3-1。P3口同时也可为闪速存储器编程和编程校验接收控制信号。表3-1P3口特殊功能P3口引脚特殊功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(定时器0外部输入)P3.5T1(定时器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)(2)DS12887时钟芯片及引脚说明DS12887如下图3-3所示,它可直接替换IBMAT计算机的时钟/日历与MC146818B和DS1287管脚兼容在掉电方式下持续工作十年以上内部包含锂电池,时钟和辅助电路系统记量秒、分、小时、星期、日期、月、年和润年直到2100年用二进制或BCD码表示时间,日历和闹钟12或24小时方式,有上下午的12小时方式夏时制方式可选择使用Motorola或Intel总线时序。地址、数据管脚复用128字节RAM空间,14字节用于时间和控制寄存器,114字节用于普通用途可编程方波输出信号总线兼容的中断信号(IRQ)可分别通过软件屏蔽的三个中断:1、闹钟、每秒或每天2、122ms~500ms周期性中断3、时钟更新周期结束图3-3DS12887引脚配置图GND,VCC:直流电源+5V电压。当5V电压在正常范围内时,数据可读写;当VCC低于4.25V,读写被禁止,计时功能仍继续;当VCC下降到3V以下时,RAM和计时器被切换到内部锂电池。MOT(模式选择):MOT管脚接到VCC时,选择MOTOROLA时序,当接到GFND时,选择INTEL时序。SQW(方波信号同):SQW管脚能从实时时钟内部15级分频器的13个抽头中选择一个作为输出信号,其输出频率可通过对寄存器A编程改变。AD0~AD7(双向地址/数据复用线):总线接口,可与MOTOROLA微机系列和INTEL微机系列接口。AS(地址选通输入):用于实现信号分离,在AD/ALE的下降沿把地址锁入DS12887。DS(数据选通或读输入):DS/RD客脚有两种操作模式,取决于MOT管脚的电平,当使用MOTOROLA时序时,DS是一正脉冲,出现在总线周期的后段,称为数据选通;在读周期,DS指示DS12887驱动双向总的时刻,在写周期,DS的后沿使DS12887锁存写数据。选择INTEL时序时,DS称作(RD),RD与典型存贮器的允许信号(OE)的定义相同。R/W(读/写输入):R/W