基于DS1302实时时钟系统的设计学士毕业论文_第1页
基于DS1302实时时钟系统的设计学士毕业论文_第2页
基于DS1302实时时钟系统的设计学士毕业论文_第3页
基于DS1302实时时钟系统的设计学士毕业论文_第4页
基于DS1302实时时钟系统的设计学士毕业论文_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

学士学位论文(设计)BACHELORSTHESIS论文题目基于DS1302实时时钟系统的设计目录1绪论12方案对比与选择分析介绍221单片机控制器的选择与对比222实时时钟芯片的选择与对比323显示器件的选择与对比33系统设计概述431设计内容及要求432系统框架及说明44硬件电路设计分析541STC89C52单片机简介542STC89C52单片机内部结构643MCU控制电路设计分析744数码管显示设计分析845DS1302时钟电路设计分析1046蜂鸣器报警电路设计分析1547电源部分设计分析155系统软件设计分析1651DS1302模块程序设计1652定时器模块程序设计1653按键模块程序设计1754数码管显示模块程序设计1955蜂鸣器报警模块程序设计2056主程序设计206总结217参考文献228致谢1附录错误未定义书签。附录1作品(设计)原理图错误未定义书签。附录2作品(设计)实物图错误未定义书签。基于DS1302实时时钟系统的设计摘要本论文(设计)采用STC89C52单片机和DS1302实时时钟芯片为主要器件设计的实时时钟系统。能够准确的显示实时时间、日期、星期。通过8位低功耗数码管将时间信息显示出来,数码管由单片机直接驱动,无需其他驱动芯片,通过按键切换显示时间、日期、星期、闹钟等信息。系统设计有闹钟报警功能,当实时时间到达闹钟设计时间时,闹钟就会蜂鸣器报警,报警时间可通过按键自行设定。DS1302芯片配备有备用电池,可确保即便是掉电的情况下也能继续走时,无需人工重新设定时间。关键词单片机;DS1302;实时时钟;中图分类号TPDESIGNOFREALTIMECLOCKSYSTEMBASEDONDS1302ABSTRACTTHISTHESISDESIGNSTC89C52MICROCONTROLLERANDDS1302REALTIMECLOCKCHIPREALTIMECLOCKSYSTEMDESIGNFORTHEMAINDEVICEABLETOACCURATELYDISPLAYREALTIMETIME,DATE,DAYOFTHEWEEK8BITLOWPOWERDIGITALTUBEDISPLAYTIMEINFORMATION,THEDIGITALTUBEDIRECTLYDRIVENBYTHEMICROCONTROLLER,WITHOUTADDITIONALDRIVERCHIPS,DISPLAYTIME,DATE,WEEK,ALARMCLOCKANDOTHERINFORMATIONTHROUGHTHEKEYSWITCHTHESYSTEMISDESIGNEDTOHAVEANALARMCLOCKALARMFUNCTION,REALTIMETOREACHTHEALARMDESIGNTIME,THEALARMWILLBEBUZZERALARM,SETALARMTIMEBYPRESSINGABUTTONTHEDS1302CHIPEQUIPPEDWITHBATTERYBACKUPTOENSURETHATEVENTHECASEOFPOWERFAILURECANCONTINUETOWALK,YOUDONOTNEEDTOMANUALLYRESETTHETIMEKEYWORDSMCUDS1302REALTIMECLOCK1基于DS1302实时时钟系统的设计1绪论20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势,单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。将单片机嵌入时钟构成一体,开发出多功能时钟,可以让人们对于时间更好的把握,是发展的必然结果。现代的数字钟不仅需要数字电路技术而且需要模拟电路技术和单片机技术,增加了数字钟的功能。其电路可以由实时时钟模块、环境温度检测模块、人机接口模块、报警模块等部分组成。利用软件编程尽量做到硬件电路简单稳定,减小电磁干扰和其他环境干扰,充分发挥软件编程的优点,减小因元器件精度不够引起的误差,但是数字钟还是可以改进和提高如选用更精密的元器件。但与机械式时钟相比已经具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。数字钟是采用数字电路实现对时、分、秒、日期数字显示的计时装置,广泛用于个人家庭,车站,码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。2本文就是基于以上的选题背景和研究意义,研究设计的基于DS1302D的实时时钟系统。2方案对比与选择分析介绍21单片机控制器的选择与对比目前在单片机系统中,低端控制其中应用比较广泛的微处理器芯片主要为8位单片机。新型单片机层出不穷,硬件资源相互兼容,品类齐全,功能完善,性能稳定,体积小,价格低廉,货源充足,调试和编程方便,所以应用极为广泛。ATMEGA16是基于增强的AVRRISC结构的低功耗8位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATMEGA16的数据吞吐率高达1MIPS/MHZ,从而可以减缓系统在功耗和处理速度之间的矛盾。ATMEGA16有如下特点16K字节的系统内可编程FLASH具有同时读写的能力,即RWW,512字节EEPROM,1K字节SRAM,32个通用I/O口线,32个通用工作寄存器,用于边界扫描的JTAG接口,支持片内调试与编程,三个具有比较模式的灵活的定时器/计数器T/C,片内/外中断,可编程串行USART,有起始条件检测器的通用串行接口,8路10位具有可选差分输入级可编程增益TQFP封装的ADC,具有片内振荡器的可编程看门狗定时器,一个SPI串行端口,以及六个可以通过软件进行选择的省电模式。STC12C5A60S2/AD/PWM系列单片机是宏晶科技生产的单时钟/机器周期1T的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快812倍。内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换250K/S,即25万次/秒针对电机控制,强干扰场合。STC89C52单片机是一款低功耗,低电压,高性能CMOS8位单片机,片内含8KB(可经受1000次擦写周期)的FLASH可编程可反复擦写的只读程序存储器,器件采用CMOS工艺和高密度、非易失性存储器(NURAM)技术制造,其输出引脚和指令系统都与MCS51兼容。片内的FLASH存储器允许在系统内可改编程序或用常规的非易失性存储器编程器来编程。因此,STC89C52是一种功能强,灵活性高且价格合理的单片机,可方便的应用在各个控制领域。本设计本着实用、够用、方便、降低成本的原则,本设计中需要更多的I/O引脚驱动数码管,在众多的单片机中选用具有32根I/O引脚的STC89C52单片机。322实时时钟芯片的选择与对比在电子时钟设计中,常用的实时时钟芯片有DS12887、DS1216、DS1643、DS1302。每种芯片的主要时钟功能基本相同,只是在引脚数量、备用电池的安装方式、计时精度和扩展功能等方面略有不同。DS12887与DS1216芯片都有内嵌式锂电池作为备用电池;X1203引脚少,没有嵌入式锂电池,跟DS1302芯片功能相似,只是相比较之下,X1203与STC89C52搭配使用时占用I/O口较多。DS1643为带有全功能实时时钟的8K8非易失性SRAM,集成了非易失性SRAM、实时时钟、晶振、电源掉电控制电路和锂电池电源,BCD码表示的年、月、日、星期、时、分、秒,带闰年补偿。同样,DS1643拥有28只管脚,硬件连接起来占用微处理器I/O口较多,不方便系统功能拓展和维护。故而从性价比和货源上考虑,本设计采用实时时钟日历芯片DS1302。23显示器件的选择与对比显示部分是本次设计的重要部分,一般有LED数码管和LCD液晶显示器两种方案。方案一采用LED数码管显示。LED的结构及连接如图21所示图21LED数码管结构与连接图LED显示器可以分为有静态显示方式和动态显示方式两种。静态显示就是当数码管显示某个字符时,相应的段恒定的导通,直到要显示下一个字符为止。数码管工作在静态显示方式时,共阴极COM端要接地;若为共阳极COM端接在5V电源。每位的段选线应分别与一个8位数据口的输出端相连,数码管的各位是相互独立的,且要显示字符一经确定,相应数据的输出将必须维持不变。静态显示数码管一直在工作,因而数码管静态显的亮度较高。在这种显示方式编程比较容易,管理也较简单,但占用I/O口线资源4较多,因而在显示位数较多的情况下,我们大都都采用数码管动态显示方式进行显示。而对于动态显示方式,虽可以避免静态显示的问题,但设计上如果处理不当,易造成亮度低,有闪烁等问题。方案二采用LCD显示。LCD液晶显示具有丰富多样性、灵活性、电路简单、易于控制而且功耗小等优点,对于一般的段式液晶屏,需要专门的驱动电路,而且也经显示作为一种被动显示,可视性相对较差;对于具有驱动电路和微处理器接口的液晶显示模块(字符或点阵),一般多采用并行机接口,对于微处理器的接口要求较高,占用资源多。另外,89C52本身没有专门的液晶驱动接口。鉴于上述原因,我们采用方案一,采用了数码管显示方式。数码管作为一种主动显示器件,具有亮度高、价格便宜、功耗低、驱动简单等优点,而且市场上也有专门的时钟显示组合数码管。3系统设计概述31设计内容及要求1采用STC89C52单片机作为主控制器;2采用DS1302作为实时时钟芯片,实现精确走时;3通过数码管显示时间、日期、星期、闹钟等信息,通过按键切换显示内容;4时间具有掉电保持功能;5通过按键设定闹钟时间和关闭闹钟报警,闹钟通过蜂鸣器报警;6系统电源设计。32系统框架及说明5图31系统框图图31所示为实时时钟系统的整体框图,系统由6部分组成,其中包括MCU主控系统部分、LED数码管部分、按键部分、实时时钟部分、蜂鸣器报警部分及电源部分。其中MCU核心控制部分采用STC89C52单片机为核心控制器,主要负责DS1302数据的读写、数码管扫描显示、按键响应、报警控制;按键部分采用4个独立按键,用于数码管显示内容的切换和闹钟时间的设定;实时时钟部分主要由DS1302和晶振组成,提供精确时间;报警器部分主要由蜂鸣器组成,当实时时间到达设定时间时,单片机控制蜂鸣器报警,蜂鸣器发出尖锐刺耳的报警声音,起到很好的报警作用;电源部分主要由78XX三端稳压集成芯片组成,为整个系统提供所需的5V工作电源。总的来说,由于采用了较好的方案和相关器件的选择,使得整个系统具有性价比高、成本低、具有很高的实用性等优点。4硬件电路设计分析41STC89C52单片机简介STC89C52单片机是STC推出的新一代高速、低功耗、超强抗干扰单片机,指令代码完全兼容传统的8051单片机,12时钟/机器周期和6时钟/机器周期可任意选择,下面为STC89C52单片机的主要参数。1增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统80512工作电压55V33V(5V单片机)/38V20V(3V单片机)63工作频率范围040MHZ,相当于普通8051的080MHZ,实际工作频率可达48MHZ4用户应用程序空间为8K字节5片上集成512字节RAM6通用I/O口(32个),复位后为P0/P1/P2/P3是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。7ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RXD/P30,TXD/P31)直接下载用户程序,数秒即可完成一片8具有EEPROM功能9具有看门狗功能10共3个16位定时器/计数器。即定时器T0、T1、T211外部中断4路,下降沿中断或低电平触发电路,POWERDOWN模式可由外部中断低电平触发中断方式唤醒12通用异步串行口(UART),还可用定时器软件实现多个UART13工作温度范围4085(工业级)/075(商业级)42STC89C52单片机内部结构STC89C52单片机内部结构框图如下图所示,其中包括中央处理器MCU、程序存储器FLASH、数据存储器SRAM、定时/计数器、串口、I/O口、EEPROM、看门狗等。7图41STC89C52单片机内部结构框图43MCU控制电路设计分析本系统所使用的单片机最小系统原理图如下图所示,其中包括STC89C52单片机、晶振电路、复位电路、按键、上拉电阻、数码管等。其中本设计采用的晶振为221184M,复位电路采用上电复位方式,上拉电阻为1K9P排阻,4个按键分别接P32、P33、P34、P35,功能分别为显示模式切换、闹钟设定取消、时间值设置加()按键、时间值减()按键。单片机P0口接数码管段选端,单片机P2口接数码管位选端。8P10/T21P11/T2EX2P123P134P145P156P167P178RST9P30/RXD10P31/TXD11P32/INT012P33/INT113P34/T014P35/T115P36/WR16P37/RD17XTAL218XTAL119VSS20P20/A821P21/A922P22/A1023P23/A1124P24/A1225P25/A1326P26/A1427P27/A1528PSEN29ALE30EA/VPP31P07/AD732P06/AD633P05/AD534P04/AD435P03/AD336P02/AD237P01/AD138P00/AD039VCC40U2STC89C5X12ET212INT112INT212ET122PC422PC8221184MY2R610KVCCP01P02P03P04P05P06P07P00P21P22P23P24P25P26P27P20P10P12P13P14P15P16P17GNDALEGNDP30P31P32P33P34P35P36P37GNDVCC123456789R31KX8VCC10UFC12P00P01P02P03P04P05P06P07P11R547KEAPSENGND01UFC3VCC图42单片机系统原理图44数码管显示设计分析441数码管的工作原理介绍单片机I/O的应用最典型的是通过I/O口与7段LED数码管构成显示电路,7段LED数码管,在一定形状的绝缘材料上,利用单只LED组合排列成“8”字型的数码管,分别引出它们的电极,点亮相应的点划来显示出09的数字。LED数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。下图43是共阴和共阳极数码管的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。9图43数码管内部原理图将多只LED的阴极连在一起即为共阴式,而将多只LED的阳极连在一起即为共阳式。以共阴式为例,如把阴极接地,在相应段的阳极接上正电源,该段即会发光。当然,LED的电流通常较小,一般均需在回路中接上限流电阻。假如我们将“B“和“C“段接上正电源,其它端接地或悬空,那么“B“和“C“段发光,此时,数码管显示将显示数字“1”。而将“A“、“B“、“D“、“E“和“G“段都接上正电源,其它引脚悬空,此时数码管将显示“2”。其它字符的显示原理类同。用单片机驱动LED数码管有很多方法,按显示方式分,有静态显示和动态(扫描)显示,按译码方式可分硬件译码和软件译码之分。静态显示就是显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后就不再控制LED,直到下一次显示数据需要更新时再传送一次新数据,显示数据稳定,占用很少的CPU时间;动态显示需要CPU时刻对显示器件进行数据刷新,显示数据有闪烁感,占用的CPU时间多。这两种显示方式各有利弊动态显示虽然有闪烁感,占用的CPU时间较多,但是用的硬件少,能节省线路板的空间。动态扫描显示接口是单片机种应用最广泛的一种显示方式。其接口电路是把所有的LED显示器的8个笔画段AG、DP的同名端连在一起,而每一个数码管的位选端是各自独立地受I/O线控制。CPU向字段输出口送出字形码时,所有显示器接收到相同的字形码,但究竟是哪个显示器亮,则取决于位选端,而这一端由I/O控制的,可以自行决定何时显示哪一位。而所谓动态扫描就是指我们采用分时的方法,轮流控制各个显示器的位选端,使各个显示器轮流点亮。在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的,约1MS左右,但是由于人的视觉暂留现象及发光10余晖效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。静态显示虽然数据稳定,占用很少的CPU时间,但每个显示单元都需要单独的显示驱动电路,使用的硬件较多,但是编程相对于动态显示比较简单,本设计采用的是静态显示方案。单片机对LED数码管的驱动方法可以分为串行和并行两种,分别适用于不同的使用场合,两者的硬件电路和程序区别也很大。在一般情况下,单片机使用并行驱动的方式进行LED的显示,并行驱动的结构较简单。442数码管的驱动电路设计分析本设计数码管采用两个4位的共阴数码管组成8位数码管,采用的上面所说的单片机并行的驱动方式。段选端接到P0口,位选端接到P2口,虽然使用的IO口比较多,因为本系统的电路不是很复杂,所有做到了充分利用单片机资源,减少硬件成本。数码管电路原理图如下图44。S1FS2S4ECDPBAGS3DDISP1S1FS2S4ECDPBAGS3DDISP2P00P01P02P03P04P05P06P07P00P01P02P03P04P05P06P07P20P21P22P23P24P25P26P27图44数码管内部原理图45DS1302时钟电路设计分析451DS1302芯片介绍低功耗时钟芯片DS1302可以对年、月、日、时、分、秒进行计时,且具有闰年补偿等多种功能。DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录。这种记录对长时间的连续测控系统结果的分析以及对异常数据出现的原因的查找有重要意义。(1)DS1302的性能特性实时时钟,可对秒、分、时、日、周、月以及带闰年补偿的年进行计数;用于高速数据暂存的318位RAM;最少引脚的串行I/O;112555V电压工作范围;25V时耗电小于300NA;用于时钟或RAM数据读/写的单字节或多字节(脉冲方式)数据传送方式;简单的3线接口;可选的慢速充电(至VCC1)的能力。DS1302时钟芯片包括实时时钟/日历和31字节的静态RAM。它经过一个简单的串行接口与微处理器通信。实时时钟/日历提供秒、分、时、日、周、月和年等信息。对于小于31天的月和月末的日期自动进行调整,还包括闰年校正的功能。时钟的运行可以采用24H或带AM(上午)/PM(下午)的12H格式。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302有主电源/后备电源双电源引脚VCC1在单电源与电池供电的系统中提供低电源,并提供低功率的电池备份;VCC2在双电源系统中提供主电源,在这种运用方式中,VCC1连接到备份电源,以便在没有主电源的情况下能保存时间信息以及数据。DS1302由VCC1或VCC2中较大者供电。当VCC2大于VCC102V时,VCC2给DS1302供电;当VCC2小于VCC1时,DS1302由VCC1供电。2DS1302数据操作原理DS1302在任何数据传送时必须先初始化,把RST脚置为高电平,然后把8位地址和命令字装入移位寄存器,数据在SCLK的上升沿被输入。无论是读周期还是写周期,开始8位指定40个寄存器中哪个被访问到。在开始8个时钟周期,把命令字节装入移位寄存器之后,另外的时钟周期在读操作时输出数据,在写操作时写入数据。时钟脉冲的个数在单字节方式下为8加8,在多字节方式下为8加字节数,最大可达248字节数。如果在传送过程中置RST为低电平,则会终止本次数据传送,并且I/O引脚变为高阻态。上电运行时,在VCC25V之前,RST脚必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。DS1302的管脚图如图46所示,表41为各引脚的功能,内部结构图如图47所示。12VCC21X12X23GND4RST5I/O6SCLK7VCC18DS1302U3图46DS1302管脚图引脚号引脚名称功能1VCC2主电源2,3X1,X2振荡源,外接32768HZ晶振4GND地线5RST复位/片选线6I/O串行数据输入/输出端(双向)7SCLK串行数据输入端8VCC1后备电源表41DS1302引脚功能表图47DS1302内部结构图DS1302的控制字如图48所示。控制字节的最高有效位(位7)必须是逻辑1;如果它为逻辑0,则不能把数据写入到DS1302中。位6如果为0,则表示存取日历时钟数13据;为1表示存取RAM数据。位51(A4A0)指示操作单元的地址。最低有效位(位0)如为0,表示要进行写操作;为1表示进行读操作。控制字节总是从最低位开始输入/输出。图48控制字节的含义为了提高对32个地址的寻址能力(地址/命令位15逻辑1),可以把时钟/日历或RAM寄存器规定为多字节(BURST)方式。位6规定时钟或RAM,而位0规定读或写。在时钟/日历寄存器中的地址931或RAM寄存器中的地址31不能存储数据。在多字节方式中,读或写从地址0的位0开始。必须按数据传送的次序写最先的8个寄存器。但是,当以多字节方式写RAM时,为了传送数据不必写所有31字节。不管是否写了全部31字节,所写的每一字节都将传送至RAM。数据读写程序如图49所示。图49数据读写程序DS1302共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见表42,其中奇数为读操作,偶数为写操作。14寄存器名命令字取值范围各位内容写操作读操作76543210秒寄存器80H81H0059CH10SECSEC分钟寄存器82H83H0059010MINMIN小时寄存器84H85H0112或002312/24010APHRHR日期寄存器86H87H0128,29,30,310010DATEDATE月份寄存器88H89H0112000IOMMONTH周日寄存器8AH8BH010700000DAY年份寄存器8CH8DH009910YEARYEAR表42DS1302的日历、时钟寄存器及其控制字时钟暂停秒寄存器的位7定义位时钟暂停位。当它为1时,DS1302停止振荡,进入低功耗的备份方式。通常在对DS1302进行写操作时(如进入时钟调整程序),停止振荡。当它为0时,时钟将开始启动。AMPM/1224小时方式小时寄存器的位7定义为12或24小时方式选择位。它为高电平时,选择12小时方式。在此方式下,位5是AM/PM位,此位是高电平时表示PM,低电平表示AM,在24小时方式下,位5为第二个10小时位(2023H)。452DS1302电路设计分析实时时钟芯片DS1302采用串行数据传输,可为掉电保护电源提供可编程的充电功能,也可以关闭充电功能,芯片采用32768HZ晶振。备用电源BT1可以用电池或超级电容,虽然DS1302在主电源掉电后耗电很小,但如果要长时间保证时钟正常,最好选用小型充电电池,如果断电时间较短(几小时或几天),可以用漏电较小的普通电解电容代替,本设计选用的是一颗3V纽扣电池作为备用电源,一般情况下可以使用几年。DS130215的三个接口分别接单片机的P12、P13、P14。DS1302时钟电路原理图如图410所示。X12X23VCC21GND4RST5I/O6SCLK7VCC18U1DS1302VCCP14P13P1212Y132768K01UFC1GNDVCCGNDBT13V图410DS1302时钟电路原理图46蜂鸣器报警电路设计分析闹铃声音可以直接采用蜂鸣器闹铃,如当前时刻与闹铃设定时间相同,单片机向蜂鸣器送出低电平,蜂鸣器发声。采用蜂鸣器闹铃结构简单,控制方便,但是发出的闹铃声音单一。闹铃的音乐不是本设计中的重点,故采用最简单的方法,占用单片机一根I/O口P10,中间用PNP型三极管S8550连接P10和蜂鸣器。当P10引脚为低电平时,S8550的发射极和集电极导通,使蜂鸣器发声。其中二极管4148起续流作用。正向导通,逆向电阻无限大。因为可能在蜂鸣器断开的瞬间,蜂鸣器会会产生感应电动势(电压),需要一个二极管将其储存的电流消耗掉,否则可能会烧掉蜂鸣器,起到保护蜂鸣器的作用。蜂鸣器原理图如图411所示。2LS1P10VCCR210R11KQ1S85501D24148GND图411蜂鸣器报警电路原理图47电源部分设计分析电源是整个系统的能量来源,它直接关系到系统能否正常稳定的运行,电源的稳定16性和效率是电源的两个重要因素。本系统所需的电源有为5V。5V采用7805三端稳压芯片经过712V稳压提供。78XX三端稳压集成芯片芯片采用TO220封装,最大输出电流1A,满足系统要求,最大输入电压35V,具有过流过热短路保护功能。电源模块电路原理图如图412所示。R41KVCCS1C111LED1GND01UFC912VD31N4007J1PWR25IN13OUT2GNDU3LM7805C1001UFC5图412电源模块电路原理图5系统软件设计分析51DS1302模块程序设计在首次对DS1302进行操作之前,必须对它进行初始化,本设计采用的做法是第一次设定好一个准确的时间后,由于备用电池的存在掉电后时间信息也不会丢失,所以以后只需从DS1302中读出数据,程序只需从DS1302各寄存器中读出年、周、月、日、时、分、秒等数据,再处理即可,送给显示缓冲单元。DS1302模块的读、写流程图如图51所示。图51DS1302模块的读、写流程图52定时器模块程序设计本系统软件程序的设计采用实时操作系统的程序设计思想,定时器用来产生1MS时17基,通过计数器CNT计数产生不同是时基从而分时执行不同的任务,系统中用到了3个时基,分别是10MS、100MS、500MS,同时数码管扫描函数DISPLAY在定时器中2MS执行一次循环扫描,通过ILOOP循环移位扫描数码管。通过此外定时器还用于按键软件去抖。定时器模块流程图如下图52定时器模块流程图53按键模块程序设计本系统共有4个按键,分别为KEY1P32、KEY2P33、KEY3P34、KEY4P35。系统的设18定及显示状态通过按键实现。KEY1键切换循环显示时间、日期、星期、闹钟;按KEY2键时如果有闹钟报警按下则关闭闹钟,如果没有闹钟则进入闹钟设置模式;KEY3和KEY4分别在进入闹钟设置模式时进行时间的加减。其中按键函数分为按键扫描函数和按

温馨提示

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

评论

0/150

提交评论