毕业论文:基于单片机的时钟设计.doc

上传人:文****钱 文档编号:41621 上传时间:2018-05-09 格式:DOC 页数:23 大小:349.11KB
下载 相关 举报
毕业论文:基于单片机的时钟设计.doc_第1页
第1页 / 共23页
毕业论文:基于单片机的时钟设计.doc_第2页
第2页 / 共23页
毕业论文:基于单片机的时钟设计.doc_第3页
第3页 / 共23页
毕业论文:基于单片机的时钟设计.doc_第4页
第4页 / 共23页
毕业论文:基于单片机的时钟设计.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、目录0引言11电子钟简介111电子时钟的背景115时钟的应用22设计任务分析221设计分析222设计意义33关于单片机331单片机的发展史333发展趋势535单片机的中断系统74系统功能及操作741系统功能的确定7411基本功能7412扩展功能842系统操作说明85系统硬件设计851芯片的选择852实验板电路原理图953功能电路分析10531时钟电路10532复位电路11533键盘电路11534数码显示电路12535蜂鸣器电路126系统软件设计1361数据单元分配13611数据存储单元分配13612标志位单元分配1362计时时钟实现的基本方法1363实现时钟程序设计步骤14631主程序模块设计

2、14632计时子程序模块的实现14633显示子程序模块的实现15634时钟设定子程序模块的实现15635日期、定时设定子程序模块的实现1664程序说明16641定时器初值计算16642程序初始化16643误差分析及校正16644实现闪动设定16645实现连续加116646定时音与显示相冲突问题及解决方案167系统仿真1671软件介绍1772电子钟系统PROTUES仿真178系统调试与功能说明1781硬盘调试1782系统性能测试与功能说明1783系统时钟误差分析1784软件调试问题及解决18结束语18致谢18参考文献19毕业论文题目基于单片机的时钟设计作者指导老师学院系专业级年制班年月日基于单片

3、机的时钟设计摘要本文设计的是基于单片机的时钟设计。该设计主要利用单片机来实现其功能,在这次设计中,我们采用LED数码管显示时、分、秒,以24小时计时方式,根据数码管动态显示原理来进行显示,用12MHZ的晶振产生振荡脉冲,定时器计数,并采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置,具有显示时间的基本功能,还可以实现对时间的调整,时钟走时精度高,使用方便,功能多,便于集成化,在介绍本单片机的发展情况基础上,说明了本设计实现的功能,以及实验板硬件情况,并对各功能电路进行了分析。主要工作放在软件编程上,用实验板实现时间、日期、定时及它们的设定功能,详细对软件编程流程以及调试进行了说明,并

4、对计时误差进行了分析及校正,提出了定时音与显示相冲突问题及解决方案。实验证明效果良好,可以投入使用。因此,设计开发时钟具有良好的应用前景。关键词单片机;时钟;定时器;数码管ABSTRACTTHISDESIGNISTHECLOCKDESIGNBASEDONMCUTHEDESIGNMAINLYUSESSINGLECHIPTOACHIEVEITSFUNCTION,INTHISDESIGN,WEUSELEDDIGITALDISPLAYHOURS,MINUTES,SECONDS,TO24HOURTIME,ACCORDINGTOTHEPRINCIPLEOFDYNAMICDISPLAYOFDIGITALTU

5、BETODISPLAY,USETHE12MHZCRYSTALOSCILLATIONPULSE,THETIMERCOUNT,ANDADIGITALCIRCUITIMPLEMENTATIONOFTHE“WHEN“,“SUB“,“SECONDS“THEFIGURESSHOWTHATTHETIMINGDEVICE,CANDISPLAYTHEBASICFUNCTIONOFTIME,ALSOCANREALIZETHEADJUSTMENTOFTHETIME,THECLOCKOFHIGHPRECISION,CONVENIENTUSE,MULTIPLEFUNCTIONS,EASYINTEGRATION,BASE

6、DONINTRODUCINGTHEDEVELOPMENTSITUATIONOFTHEMICROCONTROLLER,THEDESIGNANDIMPLEMENTATIONOFTHEFUNCTION,ASWELLASTHEEXPERIMENTALBOARDHARDWARECONDITIONS,ANDTHEFUNCTIONOFEACHCIRCUITAREANALYZEDTHEMAINWORKINTHESOFTWAREPROGRAMMING,USINGEXPERIMENTALBOARDTOREALIZETHETIME,DATE,TIMEANDSETTINGOFTHEIRFUNCTIONS,THESOF

7、TWAREPROGRAMMINGANDDEBUGGINGPROCESSINDETAILAREDESCRIBED,ANDTHETIMINGERRORANALYSISANDCORRECTION,THETIMINGANDTONEANDDISPLAYCONFLICTPROBLEMSANDSOLUTIONSTHEEXPERIMENTPROVEDTHATTHEEFFECTISGOOD,CANBEPUTINTOUSETHEREFORE,THEDESIGNANDDEVELOPMENTOFTHECLOCKHASAGOODAPPLICATIONPROSPECTKEYWORDSSINGLECHIPMICROCOMP

8、UTERCLOCKTIMERDIGITALTUBE10引言在日常生活和工作中,我们常常用到定时控制,如扩印过程中的曝光定时等。早期常用的一些时间控制单元都使用模拟电路设计制作的,其定时准确性和重复精度都不是很理想,现在基本上都是基于数字技术的新一代产品,随着单片机性价比的不断提高,新一代产品的应用也越来越广泛。大则可以构成复杂的工业过程控制系统,完成复杂的控制功能;小则可以用于家电控制,甚至可以用于儿童电子玩具。它功能强大、体积小、质量轻、灵活好用,配以适当的接口芯片,可以构成各种各样、功能各异的微电子产品。随着电子技术的飞速发展,家用电器和办公电子设备逐渐增多,不同的设备都有自己的控制器,使

9、用起来很不方便。这些具有人们所需要的智能化特性的产品减轻了人的劳动,扩大了数字化的范围,为家庭数字化提供了可能。根据这种实际情况,本文设计了一个单片机多功能时钟系统,它有基本的时间功能,还有定时功能,既可作为闹铃,也可扩展为定时对家电等电气产品的自动控制,可以避免多种控制器的混淆,利用一个控制器对多路电器进行控制;可增加温度传感器,进行实时温度显示,进一步扩展为利用不同的温度某些电气产品进行自动控制;也可增加湿度传感器,进行实时湿度显示,以便对湿度进行控制,方便人们的生活。1电子钟简介11电子时钟的背景20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力

10、地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通

11、过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。212电子时钟简介1957年,VENTURA发明了世界上第一个电子表,从而奠定了电子时钟的基础,电子时钟开始迅速发展起来。现代的电子时钟是基于单片机的一种计时工具,采用延时程序产生一定的时间中断,用于一秒的定义,通过计数方式进行满六十秒分钟进一,满六十分小时进一,满二十四小时小时清零。从而达到计时的功能,是人民日常生活补课缺少

12、的工具。13电子时钟的基本特点现在高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟、石英钟、石英表都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调试,数字式电子钟用集成电路计时时,译码代替机械式传动,用LED显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时、分、秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。14电子时钟的原理该电子时钟由89C51,BUTTON,六段数码管等构成,采用晶振电路作为驱动电路,由延时程序和循环程序产生的一秒定时,达到时分秒的计时,六十秒为一分钟,六十分钟为一小时,满二十四小时为一天。而电路中唯一的一个控制键却拥有多种

13、不同的功能,按下又松开,可以实现屏蔽数码管显示的功能,达到省电的目的;直接按下不松开,则可以通过按键实现分钟的累加,每按一次分钟加一;而连续两次按下按键不放松,则可实现小时的调节,同样每按一次小时加一。15时钟的应用时钟已成为人们日常生活中必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。2设计任务分析21设计分析针对要实现的功能,采用AT89S51单片机进行设计,AT89S51单片机

14、是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的FLASH只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准MCS51指令系统及80C51引脚结构。这样,既能做到经济合理又能实现预期的功能。在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,3又能便于添加各项功能。程序可分为闹钟的声音程序、时间显示程序、日期显示程序,秒表显示程序,时间调整程序、闹钟调整程序、定时调整程序,延时程序等。运用这种方法,关键在于各模块的兼容和配合,若各模块不匹配会出现意想不到的错误。首先,在编程之前必须了解硬件结构尤其是各引脚的用法,以及

15、内部寄存器、存储单元的用法,否则,编程无从下手,电路也无法设计。这是前期准备工作。第二部分是硬件部分依据想要的功能分块设计设计,比如输入需要开关电路,输出需要显示驱动电路和数码管电路等。第三部分是软件部分先学习理解汇编语言的编程方法再根据设计的硬件电路进行分块的编程调试,最终完成程序设计。第四部分是软件画图部分设计好电路后进行画图,包括电路图和仿真图的绘制。第五部分是软件仿真部分软硬件设计好后将软件载入芯片中进行仿真,仿真无法完成时检查软件程序和硬件电路并进行修改直到仿真成功。第六部分是硬件实现部分连接电路并导入程序检查电路,若与设计的完全一样一般能实现想要的功能。最后进行功能扩展,在已经正确

16、的设计基础上,添加额外的功能22设计意义在日常生活和工作中,我们常常用到定时控制,如扩印过程中的曝光定时等。早期常用的一些时间控制单元都使用模拟电路设计制作的,其定时准确性和重复精度都不是很理想,现在基本上都是基于数字技术的新一代产品,随着单片机性价比的不断提高,新一代产品的应用也越来越广泛。大则可以构成复杂的工业过程控制系统,完成复杂的控制功能;小则可以用于家电控制,甚至可以用于儿童电子玩具。它功能强大、体积小、质量轻、灵活好用,配以适当的接口芯片,可以构成各种各样、功能各异的微电子产品。随着电子技术的飞速发展,家用电器和办公电子设备逐渐增多,不同的设备都有自己的控制器,使用起来很不方便。这

17、些具有人们所需要的智能化特性的产品减轻了人的劳动,扩大了数字化的范围,为家庭数字化提供了可能。根据这种实际情况,设计了一个单片机多功能时钟系统,它有基本的时间功能,还有定时功能,既可作为闹铃,也可扩展为定时对家电等电气产品的自动控制,可以避免多种控制器的混淆,利用一个控制器对多路电器进行控制;可增加温度传感器,进行实时温度显示,进一步扩展为利用不同的温度某些电气产品进行自动控制;也可增加湿度传感器,进行实时湿度显示,以便对湿度进行控制,方便人们的生活。3关于单片机31单片机的发展史14位单片机41975年,美国德克萨斯仪器公司首次推出4位单片机TMS1000;此后,各个计算机公司竞相推出四位单

18、片机。日本松下公司的MN1400系列,美国洛克威尔公司的PPS/1系列等。四位单片机的主要应用领域有PC机的输入装置,电池充电器,运动器材,带液晶显示的音/视频产品控制器,一般家用电器的控制及遥控器,电子玩具,钟表,计算器,多功能电话等。28位单片机1972年,美国INTEL公司首先推出8位微处理器8008,并于1976年9月率先推出MCS48系列单片机。在这以后,8位单片机纷纷面市。例如,莫斯特克和仙童公司合作生产的3870系列,摩托罗拉公司生产的6801系列等。随着集成电路工艺水平的提高,一些高性能的8位单片机相继问世。例如,1978年摩托罗拉公司的MC6801系列及齐洛格公司的Z8系列,

19、1979年NEC公司的UPD78XX系列。这类单片机的寻址能力达64KB,片内ROM容量达48KB,片内除带有并行IO口外,还有串行IO口,甚至还有AD转化器功能。8位单片机由于功能强,被广泛用于自动化装置、智能仪器仪表、智能接口、过程控制、通信、家用电器等各个领域。316位单片机1983年以后,集成电路的集成度可达几十万只管/片,各系列16位单片机纷纷面市。这一阶段的代表产品有1983年INTEL公司推出的MCS96系列,1987年INTEL推出了80C96,美国国家半导体公司推出的HPC16040,NEC公司推出的783XX系列等。16位单片机主要用于工业控制,智能仪器仪表,便携式设备等场

20、合。432位单片机随着高新技术只智能机器人,光盘驱动器,激光打印机,图像与数据实时处理,复杂实时控制,网络服务器等领域的应用与发展,20世纪80年代末推出了32位单片机,如MOTORLORA公司的MC683XX系列,INTEL的80960系列,以及近年来流行的ARM系列单片机。32位单片机是单片机的发展趋势,随着技术的发展及开发成本和产品价格的下降,将会与8位单片机并驾齐驱。564位单片机近年来,64位单片机在引擎控制,智能机器人,磁盘控制,语音图像通信,算法密集的实时控制场合已有应用,如英国INMOS公司的TRANSPUTERT800是高性能的64位单片机。32单片机的特点1单片机的存储器R

21、OM和RAM时严格区分的。ROM称为程序存储器,只存放程序,固定常数,及数据表格。RAM则为数据存储器,用作工作区及存放用户数5据。2采用面向控制的指令系统。为满足控制需要,单片机有更强的逻辑控制能力,特别是单片机具有很强的位处理能力。3单片机的I/O口通常时多功能的。由于单片机芯片上引脚数目有限,为了解决实际引脚数和需要的信号线的矛盾,采用了引脚功能复用的方法,引脚处于何种功能,可由指令来设置或由机器状态来区分。4单片机的外部扩展能力很强。在内部的各种功能部件不能满足应用的需求时,均可在外部进行扩展,与许多通用的微机接口芯片兼容,给应用系统设计带来了很大的方便。33发展趋势单片机微型计算机是

22、微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3、3代的发展,正朝着多功能、高性能、低电压、低功耗、低价格、大存储容量、强I/O功能及较好的结构兼容性方向发展。其发展趋势不外乎以下几个方面1、多功能单片机中尽可能地把所需要的存储器和I/O口都集成在一块芯片上,使得单片机可以实现更多的功能。比如A/D、PWM、PCA(可编程计数器阵列

23、)、WDT(监视定时器看家狗)、高速I/O口及计数器的捕获/比较逻辑等。有的单片机针对某一个应用领域,集成了相关的控制设备,以减少应用系统的芯片数量。例如,有的芯片以51内核为核心,集成了USB控制器、SMARTCARD接口、MP3解码器、CAN或者IIC总线控制器等,LED、LCD或VFD显示驱动器也开始集成在8位单片机中。2、高效率和高性能为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP的设计技术,使单片机的性能有了明显的提高,表现为单片机的时钟频率得到提高;同样频率的单片机运行效率也有了很大的提升;由于集成度的提高,单片机的寻址能力、片内ROM(FLASH)和RAM的容

24、量都突破了以往的数量和限制。由于系统资源和系统复杂程度的增加,开始使用高级语言(如C语言)来开发单片机的程序。使用高级语言可以降低开发难度,缩短开发周期,增强软件的可读性和可移植性,便于改进和扩充功能。3、低电压和低功耗6单片机的嵌入式应用决定了低电压和低功耗的特性十分重要。由于CMOS等工艺的大量采用,很多单片机可以在更低的电压下工作(12V或09V),功耗已经降低到UA级。这些特性使得单片机系统可以在更小电源的支持下工作更长的时间。4、低价格单片机应用面广,使用数量大,带来的直接好处就是成本的降低。目前世界各大公司为了提高竞争力,在提高单片机性能的同时,十分注意降低其产品的价格。34主要应

25、用领域和特点(1)家用电器领域用单片机控制系统取代传统的模拟和数字控制电路,使家用电器(如洗衣机、空调、冰箱、微波炉、和电视机等)功能更完善,更加智能化和易于使用。(2)办公自动化领域单片机作为嵌入式系统广泛应用于现代办公设备,如计算机的键盘、磁盘驱动、打印机、复印机、电话机和传真机等。(3)商业应用领域商业应用系统部分与家用和办公应用系统相似,但更加注重设备的稳定性、可靠性和安全性。商用系统中广泛使用的电子计量仪器、收款机、条形码阅读器、安全监测系统、空气调节系统和冷冻保鲜系统等,都采用了单片机构成的专用系统。与通用计算机相比,这些系统由于比较封闭,可以更有效地防止病毒和电磁干扰等,可靠性更

26、高。(4)工业自动化在工业控制和机电一体化控制系统中,除了采用工控计算机外,很多都是以单片机为核心的单片机和多机系统。(5)智能仪表与集成智能传感器目前在各种电气测量仪表中普遍采用了单片机应用系统来代替传统的测量系统,使得测量系统具有存储、数据处理、查询及联网等智能功能。将单片机和传感器相结合,可以构成新一代的智能传感器。它将传感器变换后的物理量作进一步的变化和处理,使其成为数字信号,可以远距离传输并与计算机接口。(6)现代交通与航空航天领域通常应用于电子综合显示系统、动力监控系统、自动驾驶系统、通信系统以及运行监视系统等。这些领域对体积、功耗、稳定性和实时性的要求往往比商用系统还要高,因此采

27、用单片机系统更加重要。735单片机的中断系统中断技术在单片系统中有着十分重要的作用,它不仅可以提高单片机CPU的效率,也可以对突发事件处理。所谓中断就是当CPU正在执行程序A时,发生了另一个急需处理的事件B,这是CPU暂停当前执行的程序A,立即转去执行处理事件B的程序,处理完事件B后,再返回到程序A继续执行,这个过程被叫做中断。关于中断的概念有下列几个名词(1)程序A称为主程序,(2)处理事件B的程序称为中断服务程序,(3)主程序中转向中断服务程序的地方称为断点,(4)引起中断的原因即事件B称为中断源,(5)转去执行中断服务程序称为中断响应。关于中断的概念可以打个如下的比喻。领导(CPU)在自

28、己的房间办公(执行主程序),下属(外设)有问题打电话来请示(中断源),领导停下正在进行的工作,通过电话给下属做指示(执行中断服务程序),指示完后,领导挂断电话,继续做自己的工作(返回主程序继续执行)。中断是一个过程,当中央处理器CPU在处理某件事情时,外部又发生了另一紧急事件,请求CPU暂停当前的工作而去迅速处理该紧急事件。处理结束后,再回到原来被中断的地方,继续原来的工作。引起中断的原因或发出中断请求的来源,称为中断源。单片机一般允许有多个中断源,当几个中断源同时向CPU请求中断时,就存在CPU优先响应哪一个中断请求源的问题(优先级问题),一般根据中断源的轻重缓急排队,优先处理最紧急事件的中

29、断请求,于是便规定每一个中断源都有一个中断优先级别,并且CPU总是响应级别最高的中断请求。当CPU正在处理一个中断源请求的时候,又发生了另一个优先级比它高的中断源请求,如果CPU能够暂时中止对原来中断处理程序的执行,转而去处理优先级更高的中断源请求,待处理完以后,再继续执行原来的低级中断处理程序,这样的过程称为中断嵌套。4系统功能及操作41系统功能的确定411基本功能系统具有时间、日期、三路定时功能,并可以对时间、日期、定时进行设定,有定时提示音。要求计时精度尽量提高。显示格式为时间“时”(第1、2位)、“分”(第3、4位)、“秒”(第5、6位);日期“年”(第1、2位,如2007年显示为07

30、)、“月”(第3、4位)、“日”(第5、6位);定时“时”(第1、2位)、“分”(第3、4位)、“状态标志”(第5、6位)。键盘及数码管排列如图21所示。8412扩展功能该系统可以增加温度传感器,实现温度测量,以实时显示温度,用1、2位数码管显示;还可以增加湿度传感器,实现湿度测量,以实时显示湿度,用5、6位数码管显示。多路定时器功能也可扩展为对多种家电等电气产品的自动控制,比如电饭煲等;也可利用温度对某些电气产品进行自动控制,比如空调等;还可利用湿度传感器对湿度进行调节。如图41所示。图41系统功能图42系统操作说明(1)按K1键显示日期,3秒后自动返回时间显示,3秒内按K2键进入日期设置,

31、此时年位闪烁,按K1键进行年位加1或连续加1调整。按K2键依次切换到月位、日位,分别按K1键进行月位、日位调整,日位设置好后,再按K2键保存日期设定值,并返回显示时间。(2)按K2键大于1秒进入时间设置,此时小时位闪烁,秒位自动清零,按K1键进行小时调整,按K2键切换到分钟位,按K1键进行分钟调整,分位设置好后,再按K2键保存时间设定值,并返回显示时间,按所设定的时间值进行计时。(3)连续按K3键显示3路定时及其开关状态,当显示某一路定时时,3秒后自动返回时间显示,3秒内按K2键进入定时设置,设置同日期(5、6位显示00为当路定时关,显示01为当路定时开)。当路定时设置完后按K2键保存定时设定

32、值并返回时间显示。(4)按K4键显示实时温度和湿度,5秒后自动返回时间显示。5系统硬件设计51芯片的选择本设计选用AT89S52芯片,它是一种低功耗、高性能CMOS8位微控制器,9具有8K(0000H1FFFH)在线系统可编程FLASH存储器。片上FLASH允许程序存储器在线编程,也适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在线系统可编程FLASH,使得AT89S52为众多嵌入式控制应用系统提供灵活、高效的解决方案。AT89S52具有以下标准功能8K(0000H1FFFH)FLASH,256字节(00HFFH)数据存储器(RAM),64K(0000HFFFFH)程序存储器(ROM),3

33、2位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口内晶振及时钟电路。其中,数据存储器(RAM)用于存放各种运算的中间结果,作缓存和数据暂存,以及设置特征标志等。AT89S52的片内数据存储器用位寻址方式,最大寻址范围为256字节(00HFFH)。按使用情况不同可分成低128字节(00H7FH)和高128字节(80HFFH)。其中低128字节为真正的RAM存储器,高128字节为特殊功能寄存器(SFR)区,如累加器ACC、程序状态字PSW、数据指针DPTR、程序计数器PC等。整个片内RAM区分布如图51所示。图51片内RAM区52实验板电路原

34、理图实验板电路结构框图如图52所示,原理电路图如图53所示。图52实验板结构框图10图53实验板原理图53功能电路分析531时钟电路实验板的时钟振荡源电路如图54所示。其中JT为110592MHZ的晶振,改变两电容CB的值即可对此晶振频率进行调节。该电路提供单片机工作所需的振荡频率,计算定时器初值即需此晶振频率,在通信时也需知道晶振频率,以对波特率进行计算。11图54时钟电路532复位电路如图55所示为实验板的复位电路,当RESET信号为低电平时,实验板为工作状态,当RESET信号为高电平时,实验板为复位或下载程序状态。由于AT89S52具有ISP的功能,即可以通过并口线直接将程序下载到单片机

35、内,因此,AT89S52具有两种状态,下载程序状态和运行状态。该复位电路能实现上电自动复位,也能手动复位,一般复位时RESET应保持20毫秒以上高电平,此复位时间由接地电容控制。图55复位电路533键盘电路如图56所示为阵列按键电路,各设置及转换信号由此电路输入,实验板提供了16个按键,由P1口经SN74F244(驱动芯片)输出扩展成44的阵列按键,P10P13为行线,P14P17为列线。SN74F244有一片选信号线G,当此口线为低电平时,A1A4与Y1Y4接通,反之,A1A4与Y1Y4断开。此键盘用扫描工作方式,若有键按下,则相应位端口被拉低为低电平,由于本系统只用了4个按键,所以只需对4

36、个按键进行扫描。扫描时,先置P33口为高电平,向P1口送0EFH(MOVP1,0EFH),再置P33口为低电平,读P1口(MOVA,P1),最后判断P1口低4位哪位是低电平,若某位为低电平,则相应按键被按下,如P10为低电平(ACC00),则K1键被按下。12图56阵列按键534数码显示电路如图57所示为数码显示电路,实验板使用了6个共阳数码管,P0口为段码信号线,B1B6为位控线,是P1口经SN74F573(反向驱动芯片,即输入为高电平,则输出为低电平,反之则输出为高电平,该芯片也有一片选信号C,当此信号为高电平时有效)反向得到,再由B1B6控制晶体管Q1Q6,以达到控制每位数码管的目的。系

37、统采用动态显示,先向P0口送第一位数码管需要显示的段码值,再给P1口送0FEH,延时1毫秒使第一位数码管显示,又向P0口送第二位数码管需要显示的段码值,P1口送0FDH,延时1毫秒,使第二位数码管显示。依次递推,直到最后一位数码管,然后再循环。改变延时时长可以调节数码管显示的亮度,由于单片机执行速度很快(微秒级),所以看上去数码管一直亮着。图57数码显示电路535蜂鸣器电路其硬件原理图如图58所示。此电路用于定时时发出提示音。SPEAKER与P32口相连,当SPEAKER输出高电平时蜂鸣器不响,而SPEAKER输出低电平时蜂鸣器发出响声。只需控制SPEAKER输出高低电平的时间和变化频率,就可

38、以让蜂鸣器发出不同的声音。此电路用于产生定时器提示音。图58蜂鸣器电路136系统软件设计系统的软件设计也是工具系统功能的设计。单片机软件的设计主要包括执行软件(完成各种实质性功能)的设计和监控软件的设计。单片机的软件设计通常要考虑以下几个方面的问题(1)根据软件功能要求,将系统软件划分为若干个相对独立的部分,设计出合理的总体结构,使软件开发清晰、简洁和流程合理;(2)培养良好的编程风格,如考虑结构化程序设计、实行模块化、子程序化。既便于调试、链接,又便于移植和修改;(3)建立正确的数学模型,通过仿真提高系统的性能,并选取合适的参数;(4)绘制程序流程图;(5)合理分配系统资源;(6)为程序加入

39、注释,提高可读性,实施软件工程;(7)注意软件的抗干扰设计,提高系统的可靠性。61数据单元分配611数据存储单元分配数据存储单元分配如下表所示项目秒分时日月年存储单元30H31H32H33H34H35H项目定时1开关定时1分定时1时定时2开关定时2分定时2时存储单元36H37H38H39H3AH3BH项目定时3开关定时3分定时3时存显示首地址堆栈起始单元存储单元3CH3DH3EH3FH50H612标志位单元分配标志位单元(20H)分配如下表所示位单元项目位单元项目01H1、2位数码管闪烁标志位08H定时1显示标志位02H09H定时2显示标志位03H3、4位数码管闪烁标志位0AH定时3显示标志位

40、04H0BH定时1响铃标志位05H5、6位数码管显示标志位0CH定时2响铃标志位06H0DH定时3响铃标志位07H日期显示标志位0EH总响铃标志位62计时时钟实现的基本方法时钟的最小计时单位是秒,使用定时器的方式1,最大的定时时间也只能达14到131毫秒。可把定时器的定时时间定为50毫秒,这样,计数溢出20次即可得到时钟的最小计时单位秒。计数20次可以用软件实现,对定时器溢出次数进行计数,计满20次即为1秒。从秒到分,从分到时,以及日、月、年都是通过软件累加并进行比较的方法实现的。63实现时钟程序设计步骤系统采用模块化结构,主程序只需调用各个子程序模块即可实现相应功能。其模块结构图如图61所示

41、。图61程序各模块方框图631主程序模块设计整个程序进行模块化设计,主程序只需调用相应的程序即可。主程序流程如图62所示。图62主程序流程图632计时子程序模块的实现当T0中断时,执行本程序,因T0设为50毫秒中断,故中断20次为1秒。中断程序分别有20次计数(1秒),60次计数(1分),60次计数(1小时),24次计数(1天),28、29、30、31次计数(1个月),12次计数(1年)。当前位到设定数值时写0或1,下一位加1。由于本世纪是21世纪,年位前两位是4的倍数,故判断闰年时只需对年的后两位进行计算,能被4整除为闰年,否则为平年,年位只进行加1,大于99时又重新开始。计时中断流程图如图

42、63所示。15图63计时子程序流程图图64显示子程序流程图633显示子程序模块的实现显示原理在前面已给予了说明,流程图如图64所示。634时钟设定子程序模块的实现当设定时间时,断开T0中断,秒单元清0,进入时、分单元设定。设定好后重装T0初值,开T0中断。流程图如图65所示。16图65时钟设定子程流程图635日期、定时设定子程序模块的实现日期、定时的设定同时钟设定。定时设定时,把时钟的秒位换成定时标志位,“00”为当路定时关,“01”为当路定时开,流程图与时钟设定程序相似。64程序说明641定时器初值计算因定时器工作于方式1,需要50MS的中断,所以计数初值216TFOSC1265536501

43、031105921061219456表示成十六进制为4C00H,故(TH0)4CH,(TL0)00H。642程序初始化程序初始化时,清相应内存单元(20H4FH共48个单元),送时间(00时00分00秒)、日期(07年10月01日)初值,送定时器T0、T1初值,TH0TH14CH,TL0TL100H,特殊寄存器(SP50H、TMOD11H)值等。643误差分析及校正当T0中断时,需重装定时初值,且要加上从断开T0中断到允许T0中断共有13个周期,以减小误差,故理论重装定时初值为(TH0)4CH,(TL0)13H。但该外接晶振电路的晶振频率可调,可能出现误差,所以实际不是这个值。经调试,当定时初

44、值为(TH0)4CH,(TL0)06H时,24小时约慢2秒,所以每当计时24小时之后,给秒单元(30H)送02H,使秒累加时从2加起,24小时就少加2秒,即可使时间得到校正。644实现闪动设定闪动可选用段码送00H实现,也可禁止当前位显示,选通位送0实现。本设计选用后者实现闪动,用定时器T1进行控制。645实现连续加1先判断键是否松开,若松开,则只执行一次加1程序段,进行单次加1;若未松开则连续执行加1程序段,实现连续加1。每执行一次加1程序段就调用显示子程序进行延时,以对调节速度进行控制。本系统以5HZ的速度连续加1,这样能快速对时间、日期、定时进行设定。646定时音与显示相冲突问题及解决方

45、案由于蜂鸣器响时P32口的电平呈高频变化,频率1K2K,其间隙时间为051毫秒,小于6毫秒,因显示时每个数码管显示1毫秒,至少需要6毫秒,故蜂鸣器响时无法进行显示。为解决此问题,可增加锁存器,采用静态显示;也可增加一语音芯片,既可解决此问题,也可把定时音换成音乐或语音提示,或增加其它功能,使系统功能更强。7系统仿真1771软件介绍PROTEUS软件是LABCENTERELECTRONICS公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的布图与仿真。PROTEUS的软件仿真基于VSM技术,它与其他软件最大的

46、不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS51系列、PIC系列等等,以及单片机外围电路,比如键盘、LED、LCD等等。通过PROTEUS软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验室。72电子钟系统PROTUES仿真用PROTUES软件,根据数字电子钟的原理图,画出仿真图。8系统调试与功能说明单片机应用系统的调试包括硬件和软件两部分,但是他们并不能完全分开。一般的方法是排除明显的硬件故障,再进行综合调试,排除可能的软/硬件故障。81硬盘调试拿到电路板后,首先要检查加工质量,并确保没有任何方面的错误,如短路和断路,尤其要避免电源短路;元器件在安装前要逐一检查,

47、用万用表测其数值,看是否与所用相同;完成焊接后,应先空载上电(芯片座上不插芯片),并检查各引脚的电位是否正确。若一切正常,方可在断电的情况下将芯片插入,再次检查各引脚的电位及其逻辑关系。将万用表的探针放到单片机接电源的引脚上检测一下,看是否符合要求。82系统性能测试与功能说明走时默认为走时状态,按24小时制分别显示“时时分分秒秒”,有2个“”动态显示,时间会按实际时间以秒为最少单位变化。走时调整按KSEC对秒进行调整,按一下加一秒;按KMIN对分进行调整,按一下加一分;按KHOUR对时进行调整,按一下加一小时,从而达到快速设定时间的目的。83系统时钟误差分析时间是一个基本物理量,具有连续、自动

48、流逝、不重复等特性。我国时间基准来自国家授时中心,人们日常使用的时钟就是以一定的精度与该基准保持同步的。结合时间概念和误差理论,可以定义电子钟的走时误差SS1S2,S1表示程序实际运行计算所得的秒;S2表示客观时间的标准秒。S0时表示电子钟秒单元数值刷新滞后,即走时误差为“慢”;反之,S0表示秒单元数值的刷新超前,即走时误差为“快”。18本次设计的单片机电子钟系统中,其误差主要来源包括晶体频率误差,定时器溢出误差,延迟误差。晶体频率产生震荡,容易产生走时误差;定时器溢出的时间误差,本应这一秒溢出,但却在下一秒溢出,造成走时误差;延迟时间过长或过短,都会造成与基准时间产生偏差,造成走时误差。84

49、软件调试问题及解决软件程序的调试一般可以将重点放在分模块调试上,统调是最后一环。软件调试可以采取离线调试和在线调试两种方式。前者不需要硬件仿真器,可借助于软件仿真器即可;后者一般需要仿真系统的支持。本次课题,KEIL软件来调试程序,通过各个模块程序的单步或跟踪调试,使程序逐渐趋于正确,最后统调程序。仿真部分采用PROTUS6PROFESSIONAL软件,此软件功能强大且操作较为简单,可以很容易的实现各种系统的仿真。首先打开PROTUS6PROFESSIONAL软件,在元件库中找到要选用的所有元件,然后进行原理图的绘制;绘制好后再选择WAVE6000已经编译好的HEX文件,选择运行,观察显示结果,根据显示的结果和课题的要求再修改程序,再运行查,直到满足要求。结束语经过了一定的时间,基于单片机的电子时钟系统的设计已经完成。经试验验证,满足设计要求。由于加入了计时修正,在精度方面已经相当准确了,不过还可以达到更高精度,需要精确计算定时器T0中断次数的误差,再予以修正;在软件的定时部分可以进行改进,用循环程序实现,每次循环只需更改相应单元即可,这样使程序精简。该系统的扩展功能由于硬件原因不能实现,以后如硬件允许可以实现这部分功能,还可增加其它功能。本次设计主要涉及了单片机原理及接口技术的相关知识和汇编语言编程的诸多要领。设计中涉及的许多

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。