倒计时实时时钟毕业设计

上传人:dao****ing 文档编号:57388602 上传时间:2022-02-23 格式:DOC 页数:31 大小:1.20MB
返回 下载 相关 举报
倒计时实时时钟毕业设计_第1页
第1页 / 共31页
倒计时实时时钟毕业设计_第2页
第2页 / 共31页
倒计时实时时钟毕业设计_第3页
第3页 / 共31页
点击查看更多>>
资源描述
XXXXXXX毕业设计(论文)任务书题目 倒计时实时时钟设计 专业 电子信息科学与技术 学号 姓名 主要内容、基本要求、主要参考资料等:主要内容:以ATmega16为主控芯片,DS1302为实时时钟芯片,7段数码管为显示媒介,能准确地显示当前日期与时间,并根据设定的终点日期自动计算并显示剩余天数,实现当前时间、日期以及终点日期可重置功能。基本要求:(1)能准确地显示当前的日期(年、月、日)和时间(时、分、秒);(2)能根据设定的终点日期,自动计算当前日期到终点日期之前的天数,并显示;(3)提供人工方式的设置手段;(4)具有终点日期的重置与保持功能以及实时时钟掉电运行功能。主要参考资料:1马潮. AVR单片机嵌入式系统原理与应用实践M. 北京:北京航空航天大学出版社,2007.102 DALLAS SEMICONDUCTOR.DS1302 Trickle Charge Timekeeping Chip3康华光,陈大钦. 电子技术基础:模拟部分M. 北京:高等教育出版社,1996.64王永军,李景华. 数字逻辑与数字系统M. 北京:电子工业出版社,2006.15沈文. AVR单片机C语言开发入门指导M. 北京:清华大学出版社,2003.5完 成 期 限: 2009年6月5日 指导教师签名: 专业负责人签名: 年 月 日倒计时实时时钟设计目 录摘要IABSTRACTII1 绪论11.1 课题研究背景11.2 课题研究意义11.3 本文的结构22 系统总体方案设计22.1 时钟模块32.2 显示模块43 核心芯片介绍53.1 DS1302简介53.1.1 引脚功能和结构53.1.2 DS1302的控制字节63.1.3 数据输入/输出63.1.4 DS1302的寄存器73.1.5 对后备电源进行涓细电流充电83.2 ATmega16介绍93.2.1 ATmega16特点93.2.2 ATmega16外部引脚与封装94 系统硬件设计104.1 应用系统结构104.2 显示单元114.2.1 数码管编码114.2.2 系统显示面板部分124.3 系统硬件的控制部分135 系统软件设计155.1 时钟芯片控制165.2 倒计时信息计算165.3 按键检测176 系统调试196.1 硬件调试196.2 软件调试216.3 软硬联调效果展示227 总结24致 谢25参考文献26倒计时实时时钟设计摘要本文介绍了一个基于ATmega16单片机的倒计时实时时钟的设计,系统采用ATmega16作为主控核心,串行实时时钟芯片DS1302完成计时功能,采用7段数码管动态扫描显示。文章主要分硬件设计和软件编程两个大方面。硬件设计主要包括中央处理单元电路、时钟电路。软件用C语言来实现,其系统主程序采用了状态机的分析设计思想,软件部分完成了对各个模块的控制、整合,实现倒计时实时时钟信息的显示,键盘对时钟的设置,时钟显示等功能。本设计在Proteus和CodeVisionAVR软件上进行了仿真和调试,实现了如下功能:显示当前日期、时间以及剩余天数计算与显示,调整日期、时间,达到了设计的要求和目的。关键词:ATmega16单片机;DS1302;状态机;倒计时实时时钟A Design of Real-time Clock CountdownABSTRACTThis article describes a design of real-time clock countdown, this countdown based on ATmega16 microcontroller.ATmega16 as the main control core of the system, which using 7-segment digital tube display dynamic scanning, and serial real time clock chip DS1302 complete computing time function.Article focuses on two aspects, the one is hardware designing, the other is software programming. Hardware designing includes a central processing unit circuit and clock circuits. Software is written in C language, the main program of the system adopted the idea of state machine designing. The part of the software completes the control and integration of each module, and the realization of real-time countdown clock information display, and setting the clock by keyboard, and the clock display and so on.The simulation and debugging of the design are run on the software of the Proteus and CodeVisionAVR. The design realizes the functions such as displaying of current date and time, and the remaining number of days counting and displaying, and adjusting the date and time. This design meets the design requirements and objectives.KEYWORDS ATmega16 microcontroller, DS1302, state machine, real-time clock countdown261 绪论单片计算机即单片微型计算机(Single-ChipMicrocomputer),是集CPU、RAM、ROM,定时、计数和多种接口于一体的微控制器1。它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。而AVR系列单片机是各单片机中最为典型和最有代表性的一种。这次毕业设计通过对它的学习,应用,从而达到学习、设计、开发软、硬的能力。本文通过对一个基于单片机的能实现时间,日期以及倒计时相关信息功能的倒计时实时时钟的设计学习,详细介绍了单片机编程中状态机应用思想。从而达到学习、了解单片机相关指令在各方面的应用以及提高系统应用的有效性。系统由ATmega16、DS1302时钟芯片、7段数码管、按键等部分构成,能进行时、分、秒的显示。也具有年、月、日的显示,倒计时相关信息提醒等功能2。1.1 课题研究背景随着信息化的发展和人们生活节奏的提高,为了提高工作效率,提醒大家关注某项重大事件的开始或结束(如“高考”、“奥运会”等),以便更好地安排事件,倒计时实时时钟发挥的作用越来越大,同时,随着电子技术的发展,人们对倒计时实时时钟的要求也越来越高,要求其不仅计时精度高,而且具有可靠性好、成本低、功能全等特点3。1.2 课题研究意义倒计时实时时钟是在实时时钟基础上的衍生品。它在实现显示当前日期和实践的基本功能之外,增加了自身计算和显示从当前日期到给定的未来一个日期(下称终点日期)之间的天数。其形式也具有多样性,根据不同需求可以制作不同大小的产品,例如,倒计时牌,适合安放在大厅或者广场,袖珍型倒计时实时时钟适合个人随身携带,可以自由设置对自己重要即将到来的日子,以提醒自己做好应对工作,同时还可以作为数字时钟用,当然还可以在该基础上增加闹铃功能或者裁减为更简单却十分有用的产品,例如篮球赛安放在篮板上方的倒计时牌。本课题的目的是让单片机开发者掌握单片机系统的安装和调试的方法,设计思路,实现方法,硬件调试及软件调试,巩固和加强“模拟电子技术”、“数字电子技术”课程的理论知识,培养独立分析问题和解决问题的能力以及创新能力和创新思维。倒计时实时时钟设计的成功,表示在数字电子技术领域内的入门,而且此基本电路可以简单地扩展设计,诸如家用定时自动报警、球赛计时器、抢答器、定时开关、自动打铃器、自动起闭路灯、可编程时间的自动控制器、动力设备延时启动控制器、各种定时电气的自动启用等,都是以此为基础的。因此,研究倒计时实时时钟及扩大其应用是单片机开发的重要课题4。1.3 本文的结构论文共分五个部分:第一部分简单介绍了课题背景及研究意义;第二部分对DS1302的硬件资源、功能等作了较详细的阐述;第三部分介绍了硬件电路的设计;第四部分介绍软件设计,程序采用C语言在CodeVisionAVR软件编写、调试;第五部分介绍系统调试。2 系统总体方案设计倒计时实时时钟是在实时时钟基础上的衍生品。它在实现显示当前日期和实践的基本功能之外,增加了自身计算和显示从当前日期到给定的未来一个日期(下称终点日期)之间的天数。因此,倒计时实时时钟应该具备以下功能:(1)能准确地显示当前的日期(年、月、日)和时间(时、分、秒)。(2)能根据设定的终点日期,自动计算当前日期到终点日期之间的天数,并显示。(3)当前日期、时间和终点日期的调整和设定功能。当系统第一次运行,或需要调整当前日期和时间,以及重新设定终点日期时,提供人工方式的设置手段。(4)当前日期、时间和终点日期的调整与设定过程应该简单、可靠,方便用户操作,人性化。(5)终点日期的重置和保持功能。用户可以重置终点日期,这样系统就成为能适合更多场合使用的迎XXX倒计时实时时钟,例如,设置终点日期为08年8月8日,它就是迎奥运倒计时实时时钟;而终点设置为11年1月1日,它就变成迎新年倒计时实时时钟了。设置的终点日期应能长期保持,系统掉电不丢失,系统能够自动根据当前日期和终点日期计算出两者之间相差的天数。(6)实时时钟掉电运行。倒计时实时时钟系统通常为广告牌的形式放置在走廊大厅或者单位小区的大门处,因此显示器件应该采用大型的高亮度LED数码管,方便人们在白天和比较远的地方观看。大型的高度LED数码管需要15V的电压,功耗比较大,不适合采用电池供电,通常是使用220V市电供电。当发生停电等情况时,系统的显示功能可以停止工作,但必须保证系统的实时时钟部分还在正常的计时运行,即“电停表不停”。这样当再次上电后,用户无须重新设置日期和时间。综上所述,我设计的倒计时实时时钟的硬件电路由主控部分(单片机ATmega16)、计时部分(实时时钟芯片DS1302)、显示部分(动态显示)、电源部分几个部分组成。各部分之间相互协作,构成一个统一的有机整体,实现倒计时实时时钟的功能。如下是对其时钟模块和显示模块的比较与评估。2.1 时钟模块采用ATmega16作为主控芯片,通常实时时钟的实现方案有两种途径:一是使用AVR本身的功能;二是采用专用的实时时钟芯片,如表2-1是这些方案的特点比较和评估。表2-1 实时时钟实现方案及特点方案实时时钟源实现方法特点1AVR内部定时器软件成本低,精度差,程序设计复杂,不易实现掉电可靠运行2外接32 768Hz晶体软件成本低,精度稍差,程序设计复杂,不易实现掉电可靠运行3专用实时时钟芯片硬件成本稍高,精度高,程序设计简单,容易实现掉电可靠运行表中的方案1、2都是利用AVR本身内部的功能来实现实时时钟的功能5,该方案的主要优点是成本低,但缺点也是非常明显:首先是不容易实现实时时钟的掉电运行;其次是系统软件设计比较复杂,这是因为软件不仅要实现所有的实时时钟的功能,还要考虑系统其他功能的实现。第3种方案的实现成本稍微高一点,但专用实时时钟芯片DS1302的集成度高,走时准确,具备自动日历和闰年自动调整等功能,特别是专用实时时钟芯片本身耗电非常小,非常容易实现实时时钟的掉电运行设计6,其电路如图2-1所示。图2-1ATmega16与DS1302的接口电路上述三种方案均是可行的,由于方案3外围接口电路简单,成本较低,精度高,程序设计简单,可以很好实现系统所要求的功能,故选用方案3。2.2 显示模块用单片机驱动LED数码管显示有很多方法,按显示方式分有静态显示和动态显示。静态显示就是显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出去后,数码管始终显示该数据(不变),CPU不再控制LED,到下一次显示时,再传送一次新的显示数据。静态显示的接口电路采用一个并行口接一个数码管,数码管的公共端按共阴极或共阳极分别接地或接VCC。这种接法,每个数码管都要单独占用一个并行I/O口,以便单片机传送字形码到数码管控制数码管的显示。显然其缺点就是当显示位数多时,占用I/O口过多。为了解决静态显示I/O口占用过多的问题,可采用串行接口扩展LED数码管的技术。静态显示方式的优点是显示的数据稳定,无闪烁,占用CPU时间少。其缺点是由于数码管始终发光,功耗比较大。 动态扫描用分时的方法轮流控制每个显示器的COM端,使每个显示器轮流电亮。在轮流点亮过程中,每位显示器的点亮时间极为短暂,但由于人的视觉暂留现象及发光二极管的余辉效应,给人的印象就是一组稳定的显示数据。动态驱动一般用于多位LED数码管显示,主要是节省驱动管脚,减少器件。从以上两种显示方式比较,我们可以看到,动态扫描可靠,综合性能更好。所以选用动态扫描方案7。3 核心芯片介绍3.1 DS1302简介DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟芯片,它可以对年、月、周、日、时、分、秒自动计时,且具有闰年补偿功能,工作电压宽达2.55.5V。它采用3线串行接口与CPU进行同步通信,并可采用突发方式依次传送多字节的时钟信号或RAM数据。DS1302内部有一个31字节的用于临时存放数据的RAM寄存器。DS1302还具备主电源/后备电源供电的双电源引脚,可以自动切换电源,同时提供了对后备电源进行涓细电流充电的能力8。3.1.1 引脚功能和结构图3-1 DS1302引脚配置图图3-1为DS1302的引脚排列。其中VCC1为后备电源,VCC2为主电源。DS1302由VCC1 或VCC2两者中的较大者供电。当VCC2 (VCC1+0.2V)时,VCC2给DS1302供电,同时可以向VCC1充电;当VCC2 (VCC1+0.2V)时,DS1302自动切换到由VCC2供电,同时还具有向VCC1充电(当VCC1接可充电电池时)的功能,充电电流的大小也可以通过设置相应的控制充电寄存器来改变9。图3-4是DS1302对后备电源VCC1进行涓细电流充电的示意图。充电过程由DS1302内部的2个寄存器控制。DS1302的这个功能,为实现实时时钟的掉电运行提供了方便、可靠的方案。图3-4 DS1302对后备电源进行涓细电流充电示意图3.2 ATmega16介绍3.2.1 ATmega16特点(1)采用先进RISC结构的AVR内核131条机器指令,且大多数指令的执行时间为单个系统时钟周期;32个8位通用工作寄存器;工作在16MHz时具有16MIPS的性能;配备只需要2个时钟周期的硬件乘法器(2)外围接口2个带有分别独立、可设置预分频器的8位定时器/计数器;1个带有可设置预分频器、具有比较、捕捉功能的16位定时器/计数器;片内含独立振荡器的实时时钟RTC;4路PWM通道;8路10位ADC;面向字节的两线接口TWI(兼容I2C硬件接口);1个可编程的增强型全双工的,支持同步/异步通信的串行接口USART;1个可工作于主机/从机模式的SPI串行接口(支持ISP程序下载);片内模拟比较器;内含可编程的,具有独立片内振荡器的看门狗定时器WDT。(3)宽电压、高速度、低功耗工作电压范围宽:ATmega16 4.55.5v;运行速度:ATmega16 016M;低功耗:ATmega16L工作在1MHz、3v、25度时的典型功耗为,正常工作模式 1.1mA,空闲工作模式 0.35mA,掉电工作模式 “状态1”-“状态2”,最后返回到“状态0”的。并且在整个过程中,按键的输出信号仅在“状态1”时给出了唯一的一次确认按键闭合的信号“1”(其它状态均输出“0”)。所以上面状态机所表示的按键系统,不仅克服了按键抖动的问题,同时也确保在一次按键整个的过程中,系统只输出一次按键闭合信号(“1”)。换句话讲,不管按键被按下的时间保持多长,在这个按键的整个过程中都只给出了一次确认的输出,它是一个最简单和基本的按键14数电。该系统共4个按键:SET_1、Up、Enter和SET_2。在正常显示工作状态下,Up和Enter无任何功能,这两个键仅在日期和时间设置状态时才起作用。图5-3是SET_1键的功能状态转换图。图5-3 按键SET_1功能状态转换图在正常显示状态时,按一下SET_1键,转入当前时间设置1状态,此时第1位数码管闪烁,提示用户现在是设置时的高位(见图5-3);如果再继续按SET_1键,进入当前日期设置1状态,同样第1位数码管闪烁,提示用户现在是设置年的高位;如果再按SET_1键,则返回正常显示状态。在按键设置过程中,只要在10s内没有按键操作,将放弃本次的设置,自动返回正常显示状态。时间设置子状态转换过程(当前时间设置为状态2)如图5-4所示。图5-4 时间设置子状态转换图设置过程按位进行,Up键的作用是将当前设定位的数加1;Enter键确认当前设置,进入下一位的设置。处于当前设定位的数码管闪烁显示,以提示用户。只有第6次按Enter键后,系统才正式确认用户的全部设置,并将其写入DS1302。同样,只要在10s内没有按键的操作,将放弃本次操作,自动返回正常显示状态。SET_2键的功能与SET_1键类似,它转入的是终点日期的设置状态。当前日期和终点日期的设置操作与图5-4所示的转换过程类似。另外,在用户设置过程中,系统对用户的设定进行了自动的限定处理,时、分、秒、月份、日期都要做限定。例如,月份最高不能出现大于12的数字,那么当前设置月份的高位时,无论按多少次的Up键,该位数字智能限定在0和1之间转换;当月份低位数字大于3时,设定月份的高位为1后,低位数字会自动清为0;转入设置月份的低位时,如果月高位已经为1了,那么低位数字智能在0、1、2这三个数字之间转换。总之按键的过程尽量做到精益求精,尽量做到人性化的设计。考虑到使用者并非专业人员,绝对有可能胡乱按键,在这种情况下,要依靠程序来确保正常运行。6 系统调试整个系统功能的实现,调试是关键。6.1 硬件调试硬件调试是确保电路正常工作的重要保证。对硬件电路的调试首先是动态显示部分的调试, 可以将驱动电路与LED显示电路部分一起调试,将驱动电路与LED显示电路在Proteus上画出,然后直接给电路一组高或低的电平对应特殊的段码或位码, 看显示的效果, 以此判断LED是否正常。图6-1 倒计时实时时钟系统基于Proteus的硬件仿真图通过送入特殊的段码,动态显示部分可以显示送入的段码。在动态显示部分正常工作的基础上,根据系统硬件设计在Proteus上画出整个系统原理图,然后点击Play(注意,此时并没有加上系统程序),根据硬件各连接点的电位,判断其是否连接正确。其电路图如图6-1所示。6.2 软件调试CVAVR软件的主工作窗口如图6-2所示。图6-2 CVAVR主工作窗口系统软件主要包括以下几个模块:DS1302读/写,LED动态扫描及按键识别与处理,剩余天数计算。首先处理好LED动态扫描函数模块,每隔2ms扫描一次,使仿真效果达到不闪烁,亮度均匀即可。然后根据CVAVR软件直接提供的对DS1302读/写的基本操作函数对其进行调试,使数码管能够显示实时时间即完成对DS1302的读操作,写操作亦可从后面按键识别与处理模块完成后实现验证。按键采用状态机编程思想,每隔10ms读取一次键值,能够有效的到达消抖处理,该部分程序作为模块化可被移植,也很容易验证完成。通过CVAVR上的编译,在软件语法无错误的基础上,对整个软硬件系统的联调,主要检查各工作状态时显示的内容效果以及按键效果测试。经过这几步的调试后,可以得到初步的实验效果,再根据一些如精度要求的细节去细调系统使之完善。经过软硬件的联调,系统达到了课题的要求。6.3 软硬联调效果展示系统默认终点日期为北京奥运会日期即08/08/08,由于终点日期小于当前日期,所以倒计时天数信息显示为0,该系统显示时间的时候绿色圆形LED会每隔一秒钟闪烁一次,而当显示为日期的时候,红色方形LED会每隔一秒钟闪烁一次,以便区分显示信息。图6-3 调试显示当前实时时间及倒计时信息左边圆形绿色LED灯闪烁图6-4 调试显示当前实时日期及倒计时信息右边方形红色LED灯闪烁如图6-5为设置终点日期为2010/5/28后的效果,测试当时日期为10/05/23,倒计时信息显示为剩余5天,能正确计算剩余天数。图6-5 通过按键重置终点日期后的倒计时信息展示7 总结本设计利用单片机ATmega16控制串行实时时钟芯片DS1302构成倒计时实时时钟电路,实现实时时间与日期显示和倒计时显示。该电路使用简单的三线接口,为单片机节省大量的接口资源,时钟芯片DS1302带有后备电池,具备对后背电源进行涓细电流充电的能力,保证电路断电后仍保存时间和数据信息,这些优点解决了目前常用实时时钟占用单片机资源多以及计时不可靠以及掉电丢失等缺点。该时钟功能强大,性能优越,能为很多领域,特别是对时钟工作的精确性和可靠性有较高要求的场合,提供较好的倒计时实时时钟。但是,由于DS1302易受环境影响,会使该电路出现时钟混乱等问题,还有区分时间和日期的LED不能很好的秒闪烁,但是系统很好的解决了混闪问题,得益于程序的状态机思想,总之这些不足的地方还有待继续研究和改进15。致 谢在此衷心感谢所有为该论文写作提供帮助的人们。首先,特别感谢我的指导教师XXX老师,从选题、系统的设计与实现到论文的撰写,X老师给了我很多建设性的指导与建议,他严谨的治学态度、认真负责的精神时刻督促着我更好地完成自己的工作。感谢信息与通信工程系的各位老师们,在我完成毕业设计期间,老师们所创造的乐观向上、团结进取的氛围感染了我,使我更加相信自己,更有信心克服困难。感谢和我小组的同学们,他们在系统的实现阶段给予了我无私与耐心的帮助。最后,再次对这四年间所有关心、指导和帮助过我的师长与同学致以最诚挚的谢意!参考文献1甘勇,张杰,田辉. 微型计算机原理及应用M. 北京:北京航空航天大学出版社,2006.82马潮. AVR单片机嵌入式系统原理与应用实践M. 北京:北京航空航天大学出版社,2007.103鲁云飞,阎焕忠,任志禄等. 51单片机在全自动倒计时控制器中的应用J.沈阳建筑工程学院学报(自然科学版),2002.1:68-694李广弟. 单片机基础M. 北京:北京航空航天大学出版社,2001.75沈文. AVR单片机C语言开发入门指导M. 北京:清华大学出版社,2003.56黄明强. DS1302在单片机系统中的应用J.保定师范专科学校学报,2004,17(2)7张毅刚,彭喜元编著. 单片机原理及接口技术M. 北京:人民邮电出版社,2008.118DALLAS SEMICONDUCTOR.DS1302 Trickle Charge Timekeeping Chip9王明顺,赵德平. 可涓流充电的串行实时时钟芯片DS1302及应用设计J.国外电子元器件,1997,(2)10ATmeaga16 Datasheets11何建国. 倒计时LED显示屏的设计J. 国外电子元器件,1999.10(10):40-4112康华光,陈大钦. 电子技术基础:模拟部分M. 北京:高等教育出版社,1996.613张自聪,金永兴. 基于AT89S52的奥运倒计时牌的设计J. 中国计量学院学报,2007,12:305-30714王永军,李景华. 数字逻辑与数字系统M. 北京:电子工业出版社,2006.115洪海丽,段传华,王明俊. LED显示屏闪烁问题的分析及解决J. 仪器仪表,2008.1:27-29
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 营销创新


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!