智能红外遥控窗帘升降器的毕业设计.doc_第1页
智能红外遥控窗帘升降器的毕业设计.doc_第2页
智能红外遥控窗帘升降器的毕业设计.doc_第3页
智能红外遥控窗帘升降器的毕业设计.doc_第4页
智能红外遥控窗帘升降器的毕业设计.doc_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目 录绪论10.1 课题背景10.2 国内外概况10.3 课题的研究工作2第一章 核心芯片结构原理介绍41.1 中央控制芯片 AT89C205141.11 AT89C2051的特点41.12 AT89C2051的引脚功能41.2 红外线接受模块 TSOP18xx51.21 红外线一体化接受头51.22 红外线发射码组成61.3 时钟芯片 DS130261.31 DS1302引脚功能及结构71.32 DS1302的控制字71.33 数据输入与输出(I/O)71.34 DS1302的寄存器81.35 DS1302与CPU的连接8第二章 硬件电路设计92.1 电源部分硬件电路设计92.2 显示部分硬件电路设计102.3 鸣响部分硬件电路设计112.4 红外接收部分硬件电路设计112.5 时钟控制部分硬件电路设计122.6 电机部分硬件电路设计12第三章 系统软件设计143.1 红外线解码的设计143.2 DS1302的控制程序153.3 数码显示设计173.4 遥控控制部分18总 结19致 谢20参考文献21附 录22 1绪论本章阐述了单片机控制的红外线遥控自动窗帘系统的市场价值、研究背景、国内外的现状、以及发展方向,明确指出了单片机控制的红外线遥控自动窗帘系统所面临的问题及一些解决方案。0.1 课题背景生活在提高,时代在进步,人类在向文明迈进,不同的时代对居住空间、环境有不同的要求,这是社会的必然潮流。单片机控制的自动窗帘遥控系统,既能解决每天手拉开和关上窗帘的不便,又显示出了生活的档次,同时还可以根据光线的明暗来自动控制窗帘的开关,以调节室内的光线,更进一步地满足了人们的享受要求。所以该产品能形成大规模生产,很快会普及全国市场,产生巨大的经济效益;另外,除了广大市民住宅使用外,该遥控窗帘器还可以广泛应用于别墅、公寓、宾馆、饭店、写字楼、歌舞厅、影剧院、会议厅、银行、学校、医院等各种公共场所,因此该产品具有广阔的市场前景。遥控自动窗帘系统在我国还刚刚兴起,但其发展前景广阔,推广和应用自动窗帘系统具有重要的现实意义。其一,改变人们的生活方式。单片机控制的遥控自动窗帘系统具有丰富的智能化功能,为家庭用户营造一个高效、舒适、便利、环保的居住环境。单片机控制的遥控自动窗帘只用一个多功能遥控器就能控制和监测住房的窗帘开关问题,给人们日上生活带来极大的方便。这些都将改变人们传统的生活方式,并提高了人们的生活质量。其二,牵动一大批产业。单片机控制的遥控自动窗帘产品面向家庭用户,其应用市场是庞大的,发展前景也是广阔的,必将吸引大批有远见的各类企业介入,从而牵动一大批产业的发展。这里最先受益的应该是房地产业,单片机控制的遥控自动窗帘不仅是一个很好的概念与“卖点”,同时也是直接提升住宅档次的一个条件,这将会给房地产商带来新的利润空间。在家居集成化、网络化的趋势下,家居集成也成为一种潮流,许多更专业的、美观的、智能化的家居集成产品相继出现。其三,开拓一个崭新的市场。遥控自动窗帘系统牵动了许多的行业,它将不仅仅是目前的IT系统集成商或建筑弱电工程总包商的市场,而且是专业公司和智能化装饰公司的市场。0.2 国内外概况在欧美等发达国家,电动窗帘已广泛应用。在10年前,电动窗帘就已经进入我国,可一直没有大的推广,这两年,随着电控技术的不断提高及价格的不断下降,电动窗帘热才又卷土重来。据了解,全国共有170多种电动窗帘器获得了国家专利,但就其技术本身而言,还是大同小异,但售价却有很大差别,贵的要数千元,便宜的只要500块。尽管遥控自动窗帘系统在国内是一个新兴的行业,但是,它也正以不可抵挡之势迅速崛起。遥控自动窗帘系统走进中国以来,在短短四年的时间里,遥控自动窗帘系统生产商由最初的几家公司增加到如今的百余家企业,其行业发展之迅速是目前国内任何其它行业所无法比拟的。目前,我国遥控自动窗帘系统生产厂商、分销商、集成商与装饰公司都形成了相当规模,不少国内知名企业纷纷涉足遥控自动窗帘系统行业,如青岛海尔、清华同方、TCL等,并涌现出一些较具影响力的智能家居专业厂商,如上海索博智能电子有限公司、北京九州易居科技有限公司、天津瑞朗智能家居电子科技有限公司、深圳市正星特科技有限公司等。自动窗帘产品已开始走进中国的家庭。具报道,我国2004年售出商品房1.9亿m,如果每20 m需要一套窗帘架产品,仅此一项就可以年新增窗帘架产品近千万套加上。年新增窗帘架产品市场需求将不低于2000万套。如果单片机控制的遥控自动窗帘,销售占市场的5%左右,就可实现年产值上亿元。随着自动窗帘热潮在世界范围内的日渐兴起,随着中国电子技术的飞速发展、人们生活水平的不断提高以及智能电子技术在生活中的广泛应用,自动窗帘已经成为未来家居装饰潮流发展的最新方向,在不久的将来,没有自动窗帘系统的住宅肯定不合潮流。从目前的发展趋势来看,在未来的20年时间里,自动窗帘行业将成为中国的主流行业之一,其市场的发展前景是非常广阔的。0.3 课题的研究工作智能家居系统是一个大的社会系统工程,我们应当加快我国智能家居标准化进程。自动窗帘系统作为智能家居中一个很重要的部分,需要在我国智能家居这一领域,建立起一个具有中国特色的新兴、健康的产业链。让自动窗帘系统在我国并不是远在天边,而是近在眼前。现有的电动窗帘机的控制方式有固定式开关控制、遥控、光控、声控等,其中以前两种形式居多。就实用程度和经济角度来说,用固定式开关控制方式较好,这是因为窗帘的开闭不像电视机等家电产品开闭得那样频繁,每天开闭的次数不多,因此安装在固定的地方使用也相当方便,如把开关装在床头柜等电器综合控制系统中,睡在床上就能控制窗帘的开闭。利用触摸开关,实现全自动断电,既安全又节能,但最重要的一点就是没有实现完全的自动化,没的摆脱对人的依赖作用。而采用遥控控制时,需要候机电源,不可能完全断电而且增加遥控功能,也增加了成本,售价也相应提高。窗帘机的控制方式大体上有三种:声控、光控、时控,声控和遥控属于半自动类;而光控虽属全自动式,但因光敏器件的灵敏度,冬夏等不同季节的光照度的不同,以及人们对起闭窗帘在时间上的要求不同,而难以实施和普及。因此,时控式的全自动窗帘机便成了专业以及业余电子设计人员的热门课题。根据以上自动窗帘有些不能实现完全的自动化;有些虽然实现了完全的自动化,但结构复杂,性能不够稳定;有些虽然实现了完全的自动化,且性能还可以,但价格昂贵不适合普通消费者使用。所以我想利用价格相对便宜的红外线遥控发射芯片、单片机作为主要控制器件,来完成该系统的设计。该系统主要有如下几方面的特点:1.发射红外线的发射装置采用一般彩色电视机的遥控器,这样既方便又实惠,可谓一物两用。2.时间控制开关窗帘。通过对DS1302芯片的设定,让用户可以随自己的生活习惯方便的自动开关窗帘,无需手动。3.采用红外遥控方式,不会干扰其它电器的正常工作,也不会影响邻近的无线设备。超距离遥控,可达89m。4.另一种控制方式为手动控制方式,防止停电后采用手动控制。5.美观。以往的遥控电动窗帘都是向一边拉或向上拉,而本设计为向两边打开,随个人的爱好可以控制其大小。6.体积小、结构简单、灵敏度高、抗干扰性强、经济实用、工作可靠。第一章 核心芯片结构原理介绍为使基于单片机控制的红外线遥控系统在实际使用过程中方便快捷,并且具有较高的性能/价格比,所以对该系统的原器件作了精心挑选。按在实际工作中的作用,可分为以下几个部分:AT89C2051单片机是整个电路的核心,它控制其它模块来完成各种复杂的操作;红外线一体化接受头负责接受命令;芯片DS1302负责时钟的运行及设置参数的存储。1.1 中央控制芯片 AT89C205189C2051是由ATMEL公司推出的一种小型单片机,95年出现在中国市场。其主要特点为采用Flash存贮器技术,降低了制造成本,其软件、硬件与MCS-51完全兼容,且采用ATMEL高密度非易失存储器制造技术制造,将多功能8位CPU和闪烁存储器组合在单个芯片中,可以很快被中国广大用户接受。其程序的电可擦写特性,使得开发与试验比较容易,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。1.11 AT89C2051的特点89C2051有很宽的工作电源电压,可为2.76V,当工作在3V时,电流相当于6V工作时的1/4。89C2051工作于12Hz时,动态电流为5.5Ma,空闲态为1mA,掉电状态仅为20nA。这样小的功耗很适合于电池供电的小型控制系统。AT89C51具有以下几个特点:AT89C2051与MCS-51系列的单片机在指令系统和引脚上完全兼容;片内有4k字节在线可重复编程快擦写程序存储器;全静态工作,工作范围:0Hz24MHz;三级程序存储器加密;1288位内部RAM;32位双向输入输出线;两个十六位定时器/计数器;五个中断源,两级中断优先级;一个全双工的异步串行口;间歇和掉电两种工作方式。1.12 AT89C2051的引脚功能AT89C2051的接口线包括:P0、P1、P2、P3共四个八位口。1.P0口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写操作。P0口也用以输出外部存储器的低8位地图1址。由于是分时输出,故应在外部加锁存器将此地址数据锁存,地址锁存,信号用ALE。2.P1口是专门供用户使用的I/O口,是准双向口。3.P2口是从系统扩展时作高8位地址线用。不扩展外部存储器时,P2口也可以作为用户I/O口线使用,P2口也是准双向口。4.P3口是双功能口,该口的每一位均可独立地定义为第一I/O功能或第二I/O功能。作为第一功能使用时操作同P1口。P3口的第二功能如表1.1所示。端口引脚引脚功能P3.0RXD(串行口输入端)P3.1TXD(串行口输出端)P3.2INT0(外部中断0请求端,低电平有效)P3.3INT1(外部中断1请求端,低电平有效)P3.4T0(定时器/计数器0计数脉冲输入端)P3.5T1(定时器/计数器1计数脉冲输入端)P3.6WR(外部数据存储器写选通输出端)P3.7RD (外部数据存储器读选通输出端)表1.1 P3口引脚功能说明1.2 红外线接受模块 TSOP18xx遥控器发射装置首选家用彩电遥控器。因为目前,彩电和VCD已走进千家万户,而其所带的红外线遥控器给这些家电的操作带来了极大的方便,而接受只需一个红外线一体化接受头就行了。近年来,随着信息技术的飞速发展,无线通信技术正在向各个领域渗透,特别是利用红外线进行通信无论从小型化、轻量化、还是从安全性等方面考虑,其可行性都比较高。红外数据通讯实际是利用红外线作为通讯载体,由红外发射器和红外接收器来完成信号的无线收发。在发射端,对发送的数字信号经适当的调制后,送入电光变换电路,驱动红外发光二极管发射红外光脉冲;在接收端,红外接收器对收到的红外信号进行光电变换,并进行解调后,恢复出原信号。在红外数据通讯中,红外接收器件的选择是红外数据通讯中至关重要的因素。1.21 红外线一体化接受头TSOP18xx系列是Temic公司新近推出的一体化红外线接收模块,集红外线接收、放大、解调于一体,不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作;而体积只有普通三极管大小一样,适合各种红外线遥控和红外线数据传输,其传输距离大于4米。图1.2 TSOP18xx红外线接收模块TSOP18xx系列的管脚分布如图1.2所示,1、2分别为电源和地,3为信号输出端,其输出电平和TTL电平兼容。TSOP18xx系列的特性如下:多种接收频率可供选择:30KHz、33KHz、36KHz、36.7K Hz、38KHz、40KHz、56KHz;大范围工作电压:(3-6) V;工作电流:3mA;遥控距离:大于4m.内置金属保护装置;综合限幅电路功能;多种主要传输码;智能自动增益控制 (AGC)。TSOP18 xx系列红外线模块接收器的受光面一侧为黑色环氧聚焦滤波透镜,此透镜消除了可见光对它的干扰,对于提高可靠性及滤除光噪声至关重要。模块内含红外线 PIN接收管、前置放大器和解调器。当红外线发射器发出的信号经空间传送到 TSOP18 xx系列模块时,模块内部 PIN红外线接收管将红外光转换为电信号,该信号经前置放大、解调后由 3脚输出与 TTL电平兼容的电信号,该信号能直接送入到微控器等要求 TTL电平信号输入的芯片中。1.22 红外线发射码组成要使用红外线一体化接受头接受遥控器发射的红外线,再通过单片机解码,那就。必须先了解红外线发射器所发射的红外线码的组成。一般的彩电、VCD遥控器的编码,大概有以下两种编码格式(Format)。第一种格式为1913、9012、1621格式;第二种为3010格式。其中尤以第一种格式用得最多。要识别一个遥控器的格式很简单,只要把遥控器拆开,看它所用的集成块型号就知道,比如uPD1621、SAA3010,其格式就是1621、3010格式。下面分别具体说明这两种编码格式。第一种格式以1621为例,当按下遥控器上的某个按键时,遥控器将发射出一帧数据,帧数据的编码格式由三部分组成:引导码(Lead code)、客户码(Custom code)和数据码(Data code), 对于一个遥控器来说,每个按键所发射的帧数据的客户码总是一样的,有区别的只是数据码。其中9012和1913、1621格式的唯一区别就是引导码的高电平宽度不一样,9012格式为4.5ms,1913和1621格式为9ms。帧结构中的客户码和数据码各有两个字节,第一个字节和第二个字节互为按位取反,其中客户码的高4 位与低4位又互为按位取反。0码由0.56ms高电平和0.565ms低电平组合而成、1码由0.56ms高电平和1.69ms低电平组合而成。码元的高电平信号采用38kHz矩形波(载波)调制发射,载波占空比(Duty)为1/3,低电平无信号发射。第二种格式3010与第一种格式截然不同,它是以信号脉冲的上升沿和下降沿来分别表示1码和0码的。每一帧由起始位(Start bit)、扩展位(Enlarged bit)、翻转位(Toggle bit)、系统位(System bit)和数据位(Data bit)组成。1.3 时钟芯片 DS1302DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。1.31 DS1302引脚功能及结构DS1302的引脚排列,其中Vcc1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc10.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc2.0V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端(双向),后面有详细说明。SCLK为时钟输入端。 下图1.3为DS1302的引脚功能图:图1.3 DS1302引脚功能图1.32 DS1302的控制字DS1302 的控制字如图1.4示。控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。1RAMCKA4A3A2A1A0RAMK图1.4 DS1302的控制字1.33 数据输入与输出(I/O)在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。1.34 DS1302的寄存器DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见图1.5。此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。寄存器名称命令字取值范围各位内容写读76543210秒寄存器80H81H00-59CH10SECSEC分寄存器82H83H00-59010MINMIN小时寄存器84H85H01-12或00-2312/240AHRHR日期寄存器86H87H01-28,29,30,310010DATEDATE月份寄存器88H89H01-1200010MMONTH周寄存器8AH8BH01-0700000DAY年份寄存器8CH8DH00-9910YEARYEAR图1.5 DS1302寄存器与控制字对照表1.35 DS1302与CPU的连接DS1302与CPU的连接需要三条线,即SCLK(7)、I/O(6)、RST(5)。其中,时钟的显示用LCD。实际上,在调试程序时可以不加电容器,只加一个32.768kHz的晶振即可。只是选择晶振时,不同的晶振,误差也较大。另外,还可以在上面的电路中加入DS18B20,同时显示实时温度。只要占用CPU一个口线即可。 LCD还可以换成LED,还可以使用北京卫信杰科技发展有限公司生产的10位多功能8段液晶显示模块LCM101,内含看门狗(WDT)/时钟发生器及两种频率的蜂鸣器驱动电路,并有内置显示RAM,可显示任意字段笔划,具有34线串行接口,可与任何单片机、IC接口。功耗低,显示状态时电流为2A (典型值),省电模式时小于1A,工作电压为2.4V3.3V,显示清晰。第二章 硬件电路设计电路分为七个部分,分别是电源部分、显示部分、鸣响提示部分、红外线接收部分、时钟控制部分、电机控制执行部分、单片机主控器件部分。下面逐一分析:2.1 电源部分硬件电路设计通过一带有整流电路的12V变压器外接市电(220V)后,输入直流12V电压,如图2.1所示。右边两个是12伏的电源滤波电容,一般大电容旁边并联一个小电容的目的是降低高频内阻,因为大的电解电容一般采用卷绕工艺制造,所以等效电感较大,小电容可以提供一个小内阻的高频通道,降低电源全频带内阻。然后输出电压为+12V的VDD,为控制继电器提供工作电压。同时经过3端集成稳压器LM7805稳压后输出+5V电压VBB,为讯响电路、红外接收电路、显示电路提供电源,5V电源经过二极管D4、限流电阻R18=51后,为单片机提供VCC电压,BATTERY是直流供电电源,电压为3V3.6V,在本电路中为了节省成本,使用两节5号普通电池,C6和C7是单片机电源滤波电容。平时交流电正常的情况下,5V电源为单片机供电的同时,也为电池浮充电,大大延长了电池的使用寿命,当交流电停电的时候,电池仅为单片机供电,单片机在掉电状态下维持时钟的正常走时,VBB供电被D4隔断。在控制器设置成手动控制时,单片机除执行任务外,均处于睡眠状态,遥控器信号的到来,单片机从睡眠中唤醒,恢复正常工作,所以手动状态下当交流停电时,电池的耗电电流更小。此处为12V直流供电电源此处为市电220V交流供电电源图2.1 供电部位电路设计图纸2.2 显示部分硬件电路设计显示电路设计,考虑到本设计是作为一般家庭的自动控制窗帘,所以采用的是四位数码管来显示实时时间、调开窗帘时间、关窗帘时间,在开窗帘、关窗帘的时候在数码管上不作任何提示,但是伴随有声音提示。这部分电路最大的优点就是经济实惠,最大的缺点就是欠美观及不能反映窗帘动作情况。如果此系统作为大型别墅、宾馆、饭店、写字楼、歌舞厅、影剧院、会议厅、银行、学校、医院等各种公共场所,可以把这部分电路设计为液晶屏显示,当然显示的就不仅仅是时间了,还包括年、月、星期。四位数码管显示,如图2.2所示,在一般情况下显示实时时间,在需要调节开窗帘时间的时候,通过软件的控制作用,数码管将显示此开定时时间;同样在需要调节关窗帘时间的时候,数码管将显示此关定时时间。因为在开窗帘、关窗帘、停窗帘的时候有明显的动作现象,很容易观察到,所以没有设定在数码管上显示出来。P1口的P1.0、P1.1、P1.2、P1.3分别接四个三极管,当其中一个引脚背拉为低电平的时候,与该引脚相连的三极管便导通,此三极管便驱动与它相连接的数码管,然后送入该位应该显示的字形码。图2.2 数码显示部分硬件电路此引线接低电平2.3 鸣响部分硬件电路设计鸣响电路可以设计成一个单独的单元来控制,用一个独立的按键来控制它的开与关,但是红外线发射遥控器是采用彩色电视机上的遥控器,而非专用遥控器,考虑到使用的按键较多时容易让用户记不清各个键对应的功能,所以容易产生误操作;别外考虑到可以选取一个功率比较小,声音比较悦耳的陶瓷喇叭,这个喇叭一方面能掩盖电机和窗帘发出来的噪声,另一方面也能作为检错用。一般情况下人们不会把它当噪声来看待。鸣响电路与单片机的一个P口引脚相连,应程序设定在开窗帘和关窗帘的时候都会伴随着声音。喇叭采用小功率的陶瓷音源,声音不会很大。音频信号输出,音频信号通过R20、C10输入到三极管V6的基极上,放大后推动发声器Y1发。二极管D3用来提供C10的放电回路,保证交流信号的正常耦合。图2.3 鸣响部分硬件电路设计2.4 红外接收部分硬件电路设计图2.4 红外接收硬件电路图此引线接P3.2此引线接低电平红外线接收电路使用一个集成红外接收器,型号是TSOP1838,静态时输出端输出高电平,当接收到红外信号后,按红外信号的数据波形输出负脉冲数据信号。红外信号输出到单片机的P3.2 ,该口对应的第二功能是外部中断0 (INT0),利用该口的第二功能,一旦红外线信号到来,P3.2被拉低,单片机中止当前的工作转移到接收、处理红外信号。开启中断功能的目的,既减轻了单片机的工作负担,又保证接收到的红外信号的完整性,同时在手动工作状态下,单片机进入睡眠后,利用外部中断功能完成对单片机的唤醒。2.5 时钟控制部分硬件电路设计DS1302主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32768Hz晶振,开窗帘时间,关窗帘时间都保存在DS1302自带的RAM中,不需要单独的EEPROM。要特别说明的是备用电源B1,可以用电池或者超级电容(10万uF以上)。虽然DS1302在主电源掉电后,耗电很小,但如果要长时间保证时钟正常,最好选用小型充电电池。可以用老式电脑主板上的那种3.6V充电电池。如果断电时间较短(几小时或几天)时,就可以用漏电较小的普通电解电容代替。100uF就可以保证1小时的正常走时。DS1302在第一次加电后,须进行初始化操作,初始化后就可以按正常方法调整时间及升降窗帘时间。如下图2.5所示。图2.5 时钟控制部分电路设计2.6 电机部分硬件电路设计电机执行电路,为了减轻单片机的工作负荷,提高单片机的抗干扰能力,所以电机不直接由单片机来驱动。当继电器的触点打开时,没有漏电流.也就是说,断开状态的电阻非常大(接近无穷大),此时触点两侧的电压可达1500V;当触点合上时,接通电阻极低,所以继电器的功率非常小.因此继电器不会发热,通常也不需要散热器;电磁继电器的购买成本通常比半导体驱动器件低;继电器的打开时间一般是毫秒级的,相比之下,半导体开关的开关时间是微秒级的。电机执行部分完全受单片机的控制,通过单片机的P3.0和P3.1完成。单片机复位状态下P3.0和P3.1输出高电平,三极管V1、V2,V4、V5截止,两个继电器J1、J2释放状态,方向可逆的电动机因无电源供电而停止。当P3.0或者P3.1其中有一个被拉低后,两个继电器便会有一个导通,例如P3.0拉低后V1导通、V4导通,J1吸合,电机得电转动,当只有P3.1拉低后,电机则反方向转动,实现了窗帘的拉开和关闭。两个继电器的工作状态受单片机控制,在同一个时间内两个继电器仅能有一个吸合。即便是在电机工作期间,操作了反向转动按键,单片机也是先释放当前工作的继电器,并延时一段时间后再吸合另外一个继电器,防止了电机正反工作线圈同时通电的冒险。电路图见下图2.6。接控制线P3.1接控制线P3.0图2.6 电机控制部分电路设计第三章 系统软件设计该系统最重要的部分就是程序的编写,如果软件编写的科学就能体现出该系统功能的完整性、实用性、经济性。软件部分的编写主要分为红外线解码程序、时钟芯片DS1302控制程序、数码显示程序、遥控控制程序这四大部分来阐述。3.1 红外线解码的设计该系统采用长虹彩电K11F型遥控器,产生的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。该芯片的用户识别码固定高8位地址为0BFH,低8位地址为40H;后16位为8位操作码(功能码)及其反码。遥控器在按键按下后,周期性地发出同一种32位二进制码,周期约为108ms。一组码本身的持续时间随它包含的二进制0和1的个数不同而不同,大约在4563ms之间。当一个键按下超过36ms,振荡器使芯片激活,将发射一组108ms的编码脉冲,这108ms发射代码由一个起始码(9ms),一个结果码(4.5ms),低8位地址码(9ms18ms),高8位地址码(9ms18ms),8位数据码(9ms18ms)和这8位数据的反码(9ms18ms)组成。如果键按下超过108ms仍未松开,接下来发射的代码(连发代码)将仅由起始码(9ms)和结束码(2.5ms)组成。代码宽度算法:16位地址码的最短宽度:1.1216=18ms 16位地址码的最长宽度:2.24ms16=36ms。易知8位数据代码及其8位反代码的宽度和不变:(1.12ms+2.24ms)8=27ms。所以得32位代码的宽度为(18ms+27ms)(36ms+27ms)解码的关键是如何识别0和1,代码格式(以接收代码为准,接收代码与发射代码反向)。从位的定义我们可以发现0、1均以0.56ms的低电平开始,不同的是高电平的宽度不同,0为0.56ms,1为1.68ms,所以必须根据高电平的宽度区别0和1。如果从0.56ms低电平过后,开始延时,0.56ms以后,若读到的电平为低,说明该位为0,反之则为1,为了可靠起见,延时必须比0.56ms长些,但又不能超过1.12ms,否则如果该位为0,读到的已是下一位的高电平,因此取(1.12ms+0.56ms)/2=0.84ms最为可靠,一般取0.84ms左右均可;根据码的格式,应该等待9ms的起始码和4.5ms的结果码完成后才能读码。根据以上分析可得出解码程序流程如下:有信号产生中断EA清零延时小于9ms(低电平)等待高电平的到来延时小于4.5ms(高电平)等待下一次高电平的到来延时0.84ms左右读区P3.2脚电平值再等待下一次高电平的到来延时0.84ms左右读取P3.2脚电平值,依次取得32位代码,前16位为识别码,后18位既为8位数据码和8位数据反码。集体流程框图见3.1。有信号,中断接受解码跳出识别码正确否?与实际键值(10个)比较,转出执行相应动作中断返回Y图3.2 DS1302读实时时间80H88HR_BIT(DS1301时间地址)60H66HW_BIT(2051时间地址)CLK=1,RST=1CLK=0,RST=0CLK=0,RST=1N图3.1 红外中断,接收信号3.2 DS1302的控制程序I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中, I2C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。CPU发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。 I2C总线在传送数据过程中共有三种类型信号,它们分别是:开始信号、结束信号和应答信号。 开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。 结束信号:SCL为低电平时,SDA由低电平向高电平跳变,结束传送数据。 应答信号:接收数据的IC在接收到8bit数据后,向发送数据的IC发出特定的低电平脉冲,表示已收到数据。CPU向受控单元发出一个信号后,等待受控单元发出一个应答信号,CPU接收到应答信号后,根据实际情况作出是否继续传递信号的判断。若未收到应答信号,由判断为受控单元出现故障。目前有很多半导体集成电路上都集成了I2C接口。带有I2C接口的单片机有:CYGNAL的C8051F0XX系列,PHILIPSP87LPC7XX系列,MICROCHIP的PIC16C6XX系列等。很多外围器件如存储器、监控芯片等也提供I2C接口,DSl302有单字节传送方式和多字节传送方式。通过把复位线驱动至高电平来启动所有的数据传送。复位线有两种功能,首先接通控制逻辑,允许地址命令序列送入移位寄存器;其次,提供了中止单字节或多字节数据传送的手段。 数据输入时,时钟的上升沿数据必须有效,数据的输出在时钟的下降沿。如果为低电平,那么所有的数据传送将被中止且I0引脚变为高阻状态。上电时,在Vcc2.5伏之前,必须为逻辑0。当把驱动至逻辑1状态时,SCLK必须为逻辑0。单字节数据输入跟随在写命令字节的8个SCLK周期之后,在随后的8个SCLK周期的上升沿输入数据字节,数据从位0开始输入,如图3.3。多字节数据输出跟随在输入读命令字节的8个SCLK周期之后,在随后的8个SCLK周期的下降沿输出数据字节,数据从位0开始输出,如图3.4。图3.3 单字节传送方式图3.4 多字节传送方式读取实时时间过程流程见框图3.2;DS1302初始化流程见框图3.5;修改RAM值见框图3.6。Clk=0,rst=0Clk=0,rst=1CLK=1,RST=08EHR_BIT(写入DS1302)80HR_BIT(关允许写入)8EHR_BIT(写入DS1302)00HR_BIT(开允许写入)Clk=1,rst=0Clk=0,rst=1Clk=1,rst=0Clk=0,rst=190HR_BIT(充电方式地址)10100101BR_BIT(充电方式)80H88HR_BIT(DS1301时间地址)60H66HR_BIT(2051时间地址)Clk=1,rst=0Clk=0,rst=1图3.5 DS1302初始化过程图3.6 修改RAM过程CLK=1,RST=0Clk=0,rst=0Clk=0,rst=18EHR_BIT(写入DS1302)00HR_BIT(开允许写入)R1R_BIT(地址)R0R_BIT(数据)Clk=1,rst=0Clk=0,rst=18EHR_BIT(写入DS1302)80HR_BIT(关允许写入)3.3 数码显示设计数码管的显示程序由定时计数器来设定,既大约200ms后定时计数器就会产生中断,在中断子程序里面,数码管会根据具体情况执行不同的显示子程序。第一种显示方式:正常时间显示,先使与第一个数码管相连的三极管导通即把P1.3置一,接着把分钟个位(61H的低四位)的字形码送入P0口,延时一段时间,让第一个三极管截止,第二个三极管导通,把分钟十位(62H的高四位)的字形码送如P0口,延时一段时间,至此分钟就显示完了。接着以同样的方式送第三位、第四位到小时的个位、十位;第二种显示方式:调开窗帘的时间,如果02H为高电平就表明用户在调开窗帘的定时时间,这样就必须显示开窗帘的定时时间(6AH、6BH),显示方式与正常时间显示一样。第三中显示方式:调关窗帘的时间,如果03H为高电平就表明用户在调关窗帘的定时时间,这样就必须显示关窗帘的定时时间(6CH、6DH),显示方式与正常时间显示一样。框图见3.7。02H为1否显示开窗帘时间定时计数器1中断03H为1否显示关窗帘时间显示正常时间中断返回NYNY图3.7 定时中断到,显示3.4 遥控控制部分遥控控制部分就是根据遥控器发送的编码来执行需要的任务,其中包括:开窗帘、关窗帘、停止移动(把窗帘设置成半开状态)、调节实时时间,(按一下此键,再按加、减键即可使实时时间增加一或减小一)、调节开窗帘时间、调节关窗帘时间、时间增加、时间减小、开/关自动开关帘、开/关自动关窗帘。具体实施措施为: 1.接收到的红外线码值为10H,转入执行stop子程序,此时P3.0、P3.1两个引脚都将被置为高电平,控制电机的四个三极管都处于截止状态,电机不执行任何动作既窗帘停止不动; 2.接受到的红外线值为16H,转入执行OPEN子程序,在此程序中P3.0将被置1,与P3.0相连接的两个三极管导通,电机正转,延时一段时间也就是窗帘全部打开的时候P3.0又被置0,电机停止运动; 3.接收到的红外线值为44H,转入执行CLOSE子程序,在此程序中P3.1将被置0,与P3.1相连接的两个三极管导通,电机反转,延时一段时间也就是窗帘全部被关上的时候P3.1又被置01,电机停止运动; 4.接收到的红外线值为0CH,就使01H取反,开始01H应该为0,取反后01H变为1如果此时再按加一或是减一键,系统便会转入执行STIME子程序,使实时时间加一或是减一后放入DS1302的RAM中,如果再次按到0CH这个键,那么01H取反被设置为0,按加或是减键的时候就不能改变实时时间的值了; 5.接受到的红外线值为46H、47H的时候与第四基本上相同,不同之出就是46H为调节开窗帘的定时时间,47H为调节关窗帘的定时时间;6.接受到的红外线值为49H时,为开/关自动开窗帘,中断程序将把03H取反,03H开始应该为0,取反后变为1,系统在去读取DS1302实时时间的时候如果发现03H为1就会把读得的实时时间与开窗帘的定时时间想比较,相等就会执行开窗帘子程序;如果再次按到该键,03H将被值0,在读取实时时间的时候就不在作比较了,而是直接退出中断程序;7.接受到的红外线值为50H时,为开/关自动关窗帘,与开/关自动开窗帘设计一样。总 结现象观察:在MCS-51仿真器上通过编译、加载、运行后可以观察到,在没有调时键被按下时,数码管显示正常的实时时间,因为在分钟和小时中间没有设置准确的秒钟闪烁信号,所以只能看到在小时和分钟间有个点在闪烁。在P3.0、P3.1口上分别接一发光二极管,在送入低电平的时候亮,高电平的时候不亮。在有键被按下时,程序自动转入相应的中断子程序,如:P2.1口手动开帘键被按下时,P3.0口上接的发光二极管亮;P2.1口上的键被按下时,P3.1口上接的发光二极管亮,这说明程序能够正常的运行,能够使继电器导通,带动电机向正确的方向转动。经过在MCS-51仿真器上调试运行,此电路及程序基本上达到了预期目的,当然在程序中也还有很多可以改进的优化设计,也还可以添加一些辅助功能这些都还有待更好的改进。本文主要完成了如下工作:硬件部分采用自制5V稳压电源。先用一变压器把市电(220V交流电)变成12V,经整流、滤波后,再用一集成稳压管(74L05)把电压稳定在5V以供单片机使用;单片机选用89C2051,是整个系统的核心部件,担负整个系统的管理控制任务;红外线遥控方式。发射部分采用普通的彩电遥控器,既节约成本又方便;接收部分采用一红外线接头,主要是通过89C2051解码,分析出需要执行的命令,再由单片机去完成;采用四位数码管来显示时间及要求的动作指示;设有鸣响提示喇叭;数据存储设定。选用时钟日历芯片DS1302作为万年历,因为他带有32字节的RAM,并且带有后备电源不怕断电,所以兼做数据存储器使用,保存用户设定的一些参数。窗帘用能正反转的电动机来拖动,电机的转动方向由继电器来控制。软件部分:对DS1302芯片进行初始化,I2C总线进行单字节数据读写传送、多字节数据读写传送;利用红外线一体化接收头对红外线遥控器发射的编码进行接收,然后由单片机根据接收到的信号进行解码;控制程序,根据解码得到的结果去执行需要的操作。开窗帘、关窗帘、停止移动、调节实时时间、调节开窗帘时间、调节关窗帘时间、时间增加、时间减小、开/关自动开关帘、开/关自动关窗帘;显示电路。实时时钟显示、开窗帘调时显示、关窗帘调时显示。本课题的研究虽然取得了一定的收获,但在很多方面还有待于进一步的改进和完善。如:鸣响电路没有作为一个单独的单元来控制,这样在每次开关窗帘的时候有会伴随着喇叭的声音,如果把鸣响电路设计成单独的控制单元,并且在执行不同操作时会伴随不同的乐曲声,那样将是最理想的;还有就是没有设计光控电路,以便根据光线强弱自行调整升降。致 谢在论文完成之际,我首先要对我的指导老师陈老师和帮助过我的所有同学及提供给我实验条件的高老师表示最真挚的谢意。在整个论文的选题、理

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论