ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:226.74KB ,
资源ID:6480553      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6480553.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电子时钟的设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

电子时钟的设计.docx

1、电子时钟的设计电子时钟的设计摘要:本设计主要基于AT89C51单片机的电子时钟设计,通过keil软件进行编程,根据设计的硬件电路来编写C语言程序,画出自己想要设计的电路图。本设计采用7SED八位共阳极数码管来实现电子时钟的显示。本系统将单片机AT89C51内部时钟读出冰通过八位数码管显示出来,通过按键设定的时间来改变闹钟的时间,单片机依据设定的时间来响铃,从而实现了系统的智能化。基于这种情况,我多方查阅资料,反复论证设计出了这款既简单实用,又价格便宜的单片机电子时钟。关键词:单片机;时钟;计时AbstractThisdesignusescrystaltoconnectwiththemachin

2、eAT89C51,takesAT89C51chipsascore.Itadoptsthedynamicstateofthescanningmethodtoshow.UsingthisMCUand7407driveelectriccircuit,weareabletoshowdate,time,fixthetime,makebellon6LEDfigurestubes.Wecanuse6keytoconstitutedate,adjusttime,enactthebellandsetthecountdowntimer.Whentheelectriccarryingouteachfunction,

3、thefigurestubeshowthetightfunction.Whenthealarmclockandthecountdowntimerwerereached,thevoicebegins.While3or4ispressed,thevoicestops.Thesoftwarepartisrealizedbyassemblerlanguage.Itwasdividedintotoshow,delay,adjust,makebell,infixedtimeetc.part.Wegettheendpurposecombiningthesoftwareandthehardware.Keywo

4、rds:ElectricclockMCU;Dynamicstatescaning;assemblerlanguage1绪论1.1课题研究的背景及意义时间宝贵是我们每个人都知道的真理,亘古不变,然而工作的忙碌性和繁杂性很容易让人忘记当前的时间或是工作中不能及时方便地知晓时间。交通上,火车汽车要准时到达,航班要准时起飞;在日常生活中,学校要求上学准时,公司召开的会议要求参加准时,重要约会要求到达准时;在工业生产中,许多工作环节都规定了精准的时间、间隔以及次序。所以说,随时准确地知道时间并且利用时间是学习、工作、生活的必要要求。单片机是一种集成电路芯片,它将各种功能集成到一块硅片上并且内含完善的微型

5、计算机系统。单片机自推出到现在已经发展了二十多年,应用领域有工业生产、通讯以及交通设备,还有办公自动化、PC机外围器件、汽车电子器件以及网络通讯等。单片机的优点有集成度高、功能强、可靠性高、体积小、功耗低、使用方便、价格低廉等,所以本设计讨论的电子时钟系统就是利用单片机制成。电子时钟与机械时钟相比具有很多优越性,首先,其主要特点是直观性,电子时钟可以通过数字显示反映出当前的时间。其次在使用寿命方面,因为电子钟不是机械驱动,所以使用寿命更长。然后在准确度方面,由于应用了电子集成电路和石英晶体振荡器,数字时钟的精准度远远超过了老式石英钟的石英机芯驱动。最后,电子时钟还能大大扩展老式钟表的功能,在准

6、确显示时间得基础上,还可借助单片机实现诸如闹铃、定时、自动报警等功能。电子时钟的意义不仅仅在于反应时间本身,这个时间系统还可以当做一个单位模块应用于其他设备中,比如定时广播、定时开关烤箱、定时关闭路灯,以及其他各种定时电气的自动启用等设备,都是内嵌了电子时钟而实现其时间功能的。因此,研究电字时钟及其拓展电路的应用,将会对以后研究其他自动化设备产生积极意义。1.2 国内外研究时间计时的历史要从公元1300年前开始追溯,那时人们主要是利用天文现象或流动物质的连续性运动来计时。我国天文学家张衡制造的漏水转浑天仪是最早出现的机械钟。公元1350年,意大利的丹蒂制造出第一台机械打点塔钟,这是最简单的钟表

7、。公元1582年左右,意大利物理学家伽利略发明了重力摆。18世纪到19世纪,钟表制造行业已逐步实现工业化大规模生产,并且已经达到了相当高的水平。20世纪,随着资本主义工业化国家的高速发展,电子行业逐渐展露锋芒,尤其在20世纪末,电子技术飞速发展,使全球进入一个信息化新时代,在这个趋势下,新兴的电子产品几乎渗透到我们生产生活的各个部分。与此同时,现代电子产品的性能一步步提升,电子产品更新换代的速度也越来越快。我国钟表行业的发展则经历了古代、近代、现当代。1949年以前,我国还没有手表制造业,1949年以后开始了我国钟表行业的发展;六十年代时,我国还是计划经济模式,全国化大生产,由国家投资,生产的

8、全都是机械表;到了七十年代到八十年代,随着国际电子技术的发展,我国电子表也跟上步伐,猛烈冲击了传统的机械钟表所占的全国垄断的形势;九十年代,石英钟表发展已基本完善,基本统一了我国的钟表市场。时至今日,石英技术在计时领域大放异彩,各种计时工具大多采用了石英晶体振荡器。1.3电子时钟概述如今,电子时钟形态各异,种类繁多,有微型、嵌入型的电子时钟,也有悬挂在公共场合的大型电子表,这些电子表大都外形美观,而且拓展了不少功能。由于单片机可以很容易实现芯片的智能化,所以在电子钟的基础上,人们可以根据自己的需要以及场合要求添加不同的附加功能。需要整点报时可添加蜂鸣器,需要测量环境温度可以添加温度传感器,或者

9、检测空气质量、空气湿度等,也可以设置定时闹铃功能甚至还可以添加USB端口读取其他设备数据。2电子时钟设计方案2.1系统功能实现总体设计思路此设计原理框图如图2-1所示,此电路包括以下四个部分:单片机,键盘,闹铃电路及显示电路。闹铃电路 图2-1 设计原理框图 经多方论证硬件我们小组采用AT89C51单片机和7SED八位共阳极数码管等来实现单片机电子时钟的功能。详细元器件列表如表2.1所示:表2.1 详细元器件列表AT89c511片7SED八位共阳极数码管1片NPN三极管1个104p电容6个30p电容2个10K电阻6个560欧姆电阻8个200欧姆电阻1个100欧姆电阻6个2.2 系统电路设计的电

10、路主要由四模块构成:单片机控制电路,显示电路、闹铃电路以及校正电路。详细电路功能图如图2-2:图2-2 详细电路功能图本设计采用C语言程序设计,使单片机控制数码管显示时、分、秒,当秒计数计满60时就向分进位,分计数器计满60后向时计数器进位,小时计数器按“23翻0”规律计数。时、分、秒的计数结果经过数据处理可直接送显示器显示。当计时发生误差的时候可以用校时电路进行校正。设计采用的是时、分、秒显示,单片机对数据进行处理同时在数码管上显示。2.3时钟各功能分析及图解2.3.1电路各功能图解分析 (1) 时钟运行图仿真开始运行时,按下key1键进入秒表计时状态,key6是秒表暂停键,可按key4键跳

11、出秒表计时状态时钟运行图如图 2-3 所示: 图2-3 秒表计时图(2)秒表计时图按下key4键时,时钟从12:00:00开始运行,其中key2键对分进行调整,key3对小时进行调整,key6可以让时钟暂停。如图2-4: 图2-4 时钟运行图(3)闹铃设置图及运行图当按下key5,开始定时,分别按key2调分,key3调时设置闹铃时间,然后按下key4键恢复时钟运行状态(图2-5)当闹铃设置时间到时,蜂鸣器将发出10秒中蜂鸣声(图2-6)。 图2-5 闹铃时间设置图 图2-6 闹铃运行图 该数字钟是用一片AT89C51单片机通过编程去驱动8个数码管实现的。通过6个开关控制,从上到下6个开关KE

12、Y1-KEY6的功能分别为:KEY1,切换至秒表;KEY2,调节时间,每调一次时加1;KEY3, 调节时间,每调一次分加1;KEY4,从其它状态切换至时钟状态;KEY5,切换至闹钟设置状态,也可以对秒表清零;KEY6,秒表暂停.控制键分别与P1.0P1.5口连接其中:1)通过P2口和P3口去控制数码管的显示如图所示P2口接数码管的ag端,是控制输出编码,P3口接数码管的18端,是控制动态扫描输出2)从P0.0输出一个信号使二极管发光,二极管在设置的闹钟时间到了时候发光,若有乐曲可以去驱动扬声器实现。2.4.2电路功能使用说明(1) 各个控制键的功能:可对时间进行校准调节(只能加);按下设置键数

13、字时钟进入闹钟设置状态,设置闹钟的时间;时加、分加键是在校准时间时或设置闹钟时间对小时数或分钟数调节而设置的;按下秒切换键就可以进入秒表模式,同时秒表也开始计时,按下秒表暂停、复位键就暂停、归零,如果要重新对秒计时则可以按秒表开始、复位;清零键可以对闹钟清零。(2)AT89C51单片机,通过编写程序对数码显示进行控制。(3)八个7段数码管显示时钟和秒表信号。3软件总体设计方案3.1 主程序流程图软件程序从开始执行,先通过初始化各个寄存器,经过扫描按键来决定是否设定参数来执行相应功能的程序,进而在数码管上显示。如图3-1:图3-1 主程序流程图3.2 总中断程序流程 图3-2 中断流程图时间的显

14、示通过此中断程序来控制,并且通过与设定的时间进行比较来判断是否让闹铃工作。程序中包含时间的设定,如设定tcount来使秒等工作,进而来控制分和时。如上图图3-2。1)秒表中断程序流程 秒表功能通过另一个程序来实现。通过保护主程序的数据来进行秒表功能。程序中需要设置秒表的具体显示方法。如图3-3: N Y N Y图3-3秒表中断程序流程图2)按键程序流程图3-4为时钟和闹钟的调节,程序中通过扫描来判断按键是否按下进行时间和闹钟的调节。图3-4按键程序流程图图3-5为进入中断和清零图,程序中通过扫描来判断按键是否按下进行执行相应的中断来事实现相应的功能。图3-5 中断和清零程序流程图4毕业设计结果

15、分析此时钟设计是利用protues仿真软件进行仿真,基本上实现了课程设计要求实现的功能。硬件部分设置了的六个按键。当按键一按下时,进入秒表显示状态,秒表开始计时,当按键六按下时,秒表暂停;当按键四按下时恢复到时间显示功能;当按键二按下时,进入调分状态,按一次,分加一,60一循环;按键三按下时,进入调时状态,按一次,时加一,60一循环;按键五按下时,进入闹铃设置功能,紧接着按下按键二和按键三进行时和分的设置,再按下按键4恢复显示时间,当显示的时间和定时设置的时间一致时,蜂鸣器发出蜂鸣声,蜂鸣时间我们设置为10秒。另外,闹铃电路有音乐闹钟的扩展的功能(可以将蜂鸣器换成扬声器再加一段音乐程序即可实现

16、)。调试阶段,出现一些问题。比如,实际小时显示到29才归零,分钟显示到60才进一经过软件调试,以上问题均一一排除,结果达到预期目标。但时间有限,部分扩展功能不能及时实现,比如音乐闹铃。5总结 功能上基本达标:时钟的显示,秒表显示,定时功能,调时功能。时钟显示功能,精确度完全可以满足日常生活显示时间的需要;秒表功能,可以满足比赛计时的需要;调时功能,方便快捷;定时功能准确可靠,还有扩展成音乐闹钟的余地。硬件设施合乎要求,软件设计可以配合硬件实现要求功能。但是由于时间比较短,出现部分不足:使用定时和秒表功能时时间显示功能停止运行。经讨论只是软件部分还不完善。不过,我们相信,如果时间充足,将软件改进

17、,我们完全可以很好实现所有功能。 另外,在本次设计的过程中,我发现很多的问题,虽然以前没有做过这样的设计但通过这次设计我学会了很多东西,单片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,虽然以前写过几次程序,但我觉得写好一个程序并不是一件简单的事,比如写一个程序看其功能很少认为编写程序简单,但到编的时候才发现一些细微的知识或低级错误经常犯做不到最后常常失败,所以有些东西只有学精弄懂并且要细心才行,只学习理论有些东西是很难理解的,更谈不上掌握。从这次的论文设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经

18、常的练习的过程中才能提高,我想这就是我在这次论文设计中的最大收获。参考文献1 李叶紫王喜斌.胡辉.孙东辉.编著MCS_51单片机应用教程清华大学出版社2008.6.2 陆剑单片机应用技术指导书 河南工业职业技术学院2005.12.3 汪道辉.单片机系统设计与实践.电子工业出版社 ( 50页 时、分、秒计时器设计,59页 键盘及接口技术).4 第二版.51系列单片机设计实例.北京航空航天大学出版社(8189页 数码管时钟电路的设计).5 辛友顺、胡永生、薛小玲.单片机应用系统设计与实现.福建科学技术出版社(184-186页 LED显示接口,190-193页 键盘接口).6 黄庆华、张永格.单片机

19、开发 与实例.电子工业出版社(127-162页 数字式电子时钟的设计).7 闫玉德、俞红.MCS-51单片机原理与应用(C语言版).机械工业出版社(49-104页 单片机的C程序设计).8 求是科技.单片机典型模块设计实例导航.人民邮电出版社(85-90页 单片机数字时钟).9 刘守义,王静霞。单片机应用技术.西安电子科技大学出版社,2002.10 李振军电路设计基础与典型范例M北京:电子工业出版社2008.01.致谢三年的时间眨眼间即过,大一入学的时候仿佛就发生在昨天,这三年收获了很多,也明白了很多,感谢母校对我三年的培养。写完论文意味着这三年的大学生活即将踏入尾声,以后不知何时才能回到母校

20、。我也感谢我们辅导老师对我的指导,纠正了我许多错误,同时也感谢我宿舍的哥们,帮助了我很多。在和他的交流中,自己同时也学到了很多东西,让我感觉受益匪浅。最后要感谢我的家人以及我的朋友们对我的理解、支持、鼓励和帮助,正是因为有了他们,我所做的一义;也正是因为有了他们,我才有了追求进步的勇气和信心。时间的仓促及自身专业水平的不足,整篇论文肯定存在尚未发现误阅读此篇论文的老师、同学,多予指正,不胜感激!附录根据流程图,经过认真分析得出控制电路的源程序如下 #include#define uchar unsigned char#define uint unsigned int#define delay_

21、time 3/*宏定义*/uchar k,dat=0,0,0,0,0,0,0,0;uint tcount,t,u;uchar dat1=0,0,0,0,0,0,2,1;uchar dat2=0,0,0,0,0,0,0,0;uchar alarms=0,0,0,0,0,0,0,0;uchar dis_bit=0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01;unsigned char code SEG711=0xC0,/*0*/ 0xF9,/*1*/ 0xA4,/*2*/ 0xB0,/*3*/ 0x99,/*4*/ 0x92,/*5*/ 0x82,/*6*/ 0xF

22、8,/*7*/ 0x80,/*8*/ 0x90,/*9*/ 0xBF,/*-*/ ;/*数字显示数组*/sbit miaobiao1=P10;sbit tminute=P11;sbit thour=P12;sbit miaobiao2=P13;sbit alarm=P14;sbit P0_0=P00;sbit P1_5=P15;sbit P1_6=P16;sbit P1_7=P17;/*端口定义*/uchar ms=0;uchar flag=0;uchar sec=0;uchar minit=0;struct timeuchar second;uchar minute;uchar hour;t

23、ime1; uchar n,i;void delay(n) while(n-) for(i=120;i0;i-); /*延时子程序*/ void modify(void) EA=0; if(thour=0) if(flag=0) dat16+;delay(280); if(dat169) dat16=0;dat17+; else if(dat171)&(dat163) dat17=0; dat16=0; if(flag=1) alarms6+;delay(300); if(alarms69) alarms6=0;alarms7+; if(alarms72) alarms7=0; dat6=al

24、arms6; dat7=alarms7; if(tminute=0) if(flag=0) dat13+;delay(280); if(dat3=9) dat14+;dat13=0; if(dat145) dat14=0; if(flag=1) alarms3+; delay(300); if(alarms39) alarms4+;alarms3=0; if(alarms45) alarms4=0; dat3=alarms3;dat4=alarms4; if(miaobiao1=0)TR0=0;ET0=0;TR1=1;ET1=1; if(miaobiao2=0) TR0=1;ET0=1;TR1

25、=0;ET1=0; dat20=0; dat21=0; dat23=0; dat24=0; dat26=0; dat27=0; ms=0; sec=0; minit=0; if(P1_5=0) TR0=0;ET0=0;TR1=0;ET1=0; if(alarm=0) TR0=0;ET0=0;TR1=0;ET1=0;flag=1; dat0=0; dat1=0; dat2=10; dat3=0; dat4=0; dat5=10; dat6=0; dat7=0; EA=1;/*按键扫描*/void init(void)TMOD = 0x11; TH0 = 0xDB; TL0 =0xFF; TH1=

26、0xDB; TL1=0xFF; ET0 = 1; /10ms ET1=1;/ TR1=1; TR0=1; tcount=0; ms=0; sec=0; minit=0; EA = 1;/*初始化*/void test(void)for(k=0;k23) time1.hour=0; dat5=10; dat2=10; dat0=dat10; dat1=dat11; dat3=dat13; dat4=dat14; dat6=dat16; dat7=dat17; flag=0; P0=0x01;if(alarms7=dat17)&(alarms6=dat16)&(alarms4=dat14)&(alarms3=dat13)&(dat11=100) ms=0; sec+; dat23=sec%10; dat24=sec/10; if(sec=60) sec=0; minit+; dat26=minit%10; dat27=minit/10;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1