单片机电子时钟课程设计.doc_第1页
单片机电子时钟课程设计.doc_第2页
单片机电子时钟课程设计.doc_第3页
单片机电子时钟课程设计.doc_第4页
单片机电子时钟课程设计.doc_第5页
免费预览已结束,剩余13页可下载查看

下载本文档

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

文档简介

单片机技术课程设计说明书 数字电子钟 系 、 部: 电气与信息工程系 学生姓名: 全昌炽 指导教师: 王韧 职称 副教授专 业: 电子信息工程 班 级: 电子0901班 完成时间: 2011-12-22 摘 要时钟,自从它发明的那天起,就成为人类的朋友,但随着时间的推移,科学技术的不断发展,人们对时间计量的精度要求越来越高,应用越来越广。怎样让时钟更好的为人民服务,怎样让我们的老朋友焕发青春呢?这就要求人们不断设计出新型时钟。 数字电子钟的设计方法有多种,其中,利用单片机实现的电子钟具有编程灵活,便于电子钟功能的扩充,即可用该电子钟发出各种控制信号,精确度高等特点,同时可以用该电子钟发出各种控制信号。本文主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机AT89S52芯片和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。与传统机械表相比,它具有走时精确,显示直观等特点。它的计时周期为24小时,显满刻度为“23时59分59秒”,另外具有校时功能等特点。该电子钟可以做到的功能:上电或按键复位后能自动显示系统提示符“P.”进入时钟准备状态。第一次按电子钟启动/暂停键,电子钟从0时0分0秒开始运行,进入时钟运行状态。再次按电子钟启动/暂停键,则电子钟进入时钟暂停状态,此时可按下调整键调整时间,分别通过时间加,时间减两个按键调整时间。调整结束后可按启动/暂停键再次进入时钟运行状态。通过设置的A、B、C、D四个键来调整运行,并且利用了8位LED显示时分秒。此电子钟严格按照要求设计,最终达到预期的效果,能够正确显示“P”点以及时分秒的计时,算是一次比较成功的设计了。关键词:电子钟;单片机;汇编ABSTRACTClock, since it was invented that day, becomes the friend of mankind, but as time goes on, the continuous development of science and technology, people on the time measurement accuracy is higher and higher, more and more wide application. How to let the clock to better serve the people, how to make our old friend bloom? This requests the people to continue to design a new clock.The design of digital electronic clock methods are various, among them, realize the use of single-chip electronic clock with programming flexibility, ease of electronic clock function expansion, can use the electric clock out of control signal, high accuracy, and can use the electric clock out of control signal.This paper mainly introduces the MCU internal timer / counter to realize the electronic clock method, designed by the MCU and AT89S52 chip and LED digital tube as the core, supplemented by necessary circuit, composed of a single-chip electronic clock. Compared with the traditional mechanical watches, it has a precise path, intuitive display characteristics. Its time period is 24 hours, was in full scale as twenty-three fifty-nine 59 seconds, and a school function etc. The electronic clock can achieve the function of:Power on or reset button to automatically display the system prompt P. into clock ready state 2 for the first time by electronic clock start / adjusting keys, electronic bell from 0 when 0 minute 0 seconds start running, enter the clock running state. Again by the electronic clock start / adjusting keys, electronic bell clock adjustment state is entered, this time by the adjusting button to adjust the time, after adjustment according to the start / adjusting key again into the clock running state. By setting the A, B, C, D four keys to adjust the operation, and the use of 8 bit LED is displayed every minute.The electronic clock in strict accordance with the requirements of the design, finally achieve the desired effect, can correctly display P and of accurate timing, is a successful design.Key words:electronic clock; single-chip microcomputer; compilation目 录1电子钟功能及总体方案的介绍11.1 电子钟功能介绍11.1.1 基本功能要求11.2 总体方案介绍11.2.1 计时方案11.2.2 键盘/显示方案12硬件系统设计32.1硬件系统各模块功能介绍32.1.1显示电路32.1.2键盘控制电路32.1.3 电子钟的启、停及时间调整43 软件系统设计53.1单片机的使用资源情况53.2电子钟程序流程框图63.2.1主程序流程框图63.2.2键扫子程序流程框图73.2.3中断服务程序流程框图83.2.4显示子程序流程框图93.3电子钟总体程序清单94 电子钟设计结论104.1使用说明书104.1.1操作说明104.2电子钟运行结果104.2.1待机104.2.2启动104.2.3运行114.3 误差分析114.4 设计体会11参考文献12附 录12致 谢13II1电子钟功能及总体方案的介绍1.1 电子钟功能介绍1.1.1 基本功能要求 可调整运行的电子钟具有三种工作状态:“P.”状态、运行状态、调整状态。 (1)、“P.”状态,依靠上电或按复位键进入,在此状态下,按B、C、D键均无效,按A键有效,进入运行状态; (2)、运行状态,按A键进入,在此状态下,按B、C、D键均无效,只有按A键有效,按下A键后,退出运行状态,进入暂停状态; (3)、调整状态,在暂停此状态下,按A、B、C、D键均有效。如按下A键,则退出调整状态,进入运行状态;按下B键,则分别对时、分、秒位进行选择,按下C、D键对选择的位进行加减,调整结束后必须按A键,即可退出调整状态,进入运行状态。基本功能要求: “P.”稳定地显示在LED显示器的最左端数码管上,无A键按下(在“P.”状态下,按下B、C、D键无效),则不进入电子钟的运行状态,继续显示“P.”。 按下A键后,电子钟以起始时间:00时00分00秒开始运行。 再次按下A 键后,电子钟退出运行状态,进入暂停状态,利用B、C、D键把电子钟的显示时间修改为当前实时时间,时间修改正确后可再次按下A键,电子钟则退出调整状态,进入运行状态。 注意:每次按下C、D键,只允许加一,不允许连加。1.2 总体方案介绍1.2.1 计时方案利用AT89S52单片机内部的定时/计数器进行中断定时,配合软件延时实现时、分、秒的计时。该方案节省硬件成本,且能使读者在定时/计数器的使用、中断及程序设计方面得到锻炼与提高,对单片机的指令系统能有更深入的了解,从而对学好单片机技术这门课程起到一定的作用。1.2.2 键盘/显示方案AT89S52的P0口和P2口外接由八个LED数码管(LED7LED0)构成的显示器,用P0口作LED的段码输出口,P2口作八个LED数码管的位控输出线,P1口外接四个按键A、B、C、D构成键盘电路。AT89S52 是一种低功耗,高性能的CMOS 8位微型计算机。它带有8K Flash 可编程和擦除的只读存储器(EPROM),该器件采用ATMEL的高密度非易失性存储器技术制造,与工业上标准的80C51和80C52的指令系统及引脚兼容,片内Flash 集成在一个芯片上,可用与解决复杂的问题,且成本较低。简易电子钟的功能不复杂,采用其现有的I/O便可完成,所以本书中采用此的设计方案,结构如图1如示。图1 电子钟原理框图2硬件系统设计2.1 硬件系统各模块功能介绍2.1.1 显示电路在本次课程设计中,我采用的是八位共阳数码管,显示原理跟单个LED的显示原理完全相同,在段控线和位控线都串接一个电阻,以提高其输出功率,在这里采用470欧母电阻。2.1.2 键盘控制电路键盘是最常用的输入设备,是实现人机对话的纽带。按其结构形式可分为非编码键盘和编码键盘。编码键盘采用硬件方法产生键码。每按下一个键,键盘能自动生成键盘代码,键数较多,且具有去抖动功能。这种键盘使用方便,但硬件较复杂。非编码键盘仅提供按键开关工作状态,其键码由软件确定,这种键盘键数较少,硬件简单,广泛应用于各种单片机应用系统,在单片机控制电路中,可把单片机使用的键盘分为独立式和矩阵式两种。独立式实际上就是一组独立的按键,这些按键可直接与单片机的I/O口连接,即每个按键独占一条口线,这种接法简单。矩阵式键盘也称行列式键盘,因为键的数目较多,所以键按行列组成矩阵。本设计中键盘数目较少,且为安装方便,因此在本设计中采用独立式接法。按从一个键到键的功能被执行主要应包括两项工作:一是键的识别,即在键盘中找出被按的是哪个键,另一项是键功能的实现。第一项工作是使用接口电路实现的,而第二项工作则是通过执行相应服务程序来完成。具体来说,键盘接口应完成以下操作功能:(1) 键盘扫描,以判定是否有键被按下(称之为“闭合键”)。(2) 键识别,以确定闭合键的行列位置。(3) 产生闭合键的键码。(4) 排除多键、串键(复键)及去抖动。以上这些内容通常是以软硬件结合的方式来完成的,即在软件的配合下由接口电路来完成。但具体哪些由硬件哪些由软件完成,要看接口电路的情况。总的原则是,硬件复杂软件就简单,硬件简单软件就得复杂一些。2.1.3 电子钟的启、停及时间调整电子钟设置4个按键通过程序控制来完成电子钟的启、停及时间调整。A键控制电子钟的启、停;B键选择位;C键位加;D键位减。2.2 系统电路图原理图见附录。2.3 元器件清单器件型号数量器件型号数量单片机AT89S521个按键普通4个晶振12MHZ1个开关6脚开关1个电容22uf,33pf若干数码管HSN5642S2个电阻普通若干下载接口10针接口1个单排针10针接口1个蜂鸣器脉冲式1个图2 元器件清单3 软件系统设计3.1单片机的使用资源情况3.1.1资源使用说明l P3口为二极管的控制端l P0口用作地址/数据总线l P2口用作地址/数据总线l P1.0、P1.1、P1.2、P1.3口线作为键盘输入端既在AT89S52的P3口用来接八个发光二极管的阴极,控制其亮与灭,P0口和P2口外接由8个LED数码管构成的显示器,用P0口作LED的段码输出口(P0.0P0.7对应于LED的adp),P2口作LED的位控输出线,P2口外接四个个按键A、B、C、D(分别对应于P1.0、P1.1、P1.2、P1.3口)用于调整显示接口电路。3.1.2 数码管显示模块数码管显示是通过调用显示子程序来实现的,由于数码管的显示要有实时性,所以在执行其他程序时依然要经常调用显示子程序。数码管的段控由CPU改变P2口相应位电平来实现。3.1.3 按键控制模块 开始/暂停,位选择按键由外部中断来实现,加键,减键通过键盘扫描来实现。3.2电子钟程序流程框图3.2.1主程序流程框图图3 主程序流程框图3.2.2键扫子程序流程框图 图 4 键扫子程序流程框图程框图3.2.3中断服务程序流程框图 图5 中断服务程序流程框图 3.2.4显示子程序流程框图 图6 显示子程序流程图3.3电子钟总体程序清单4 电子钟设计结论4.1使用说明书4.1.1操作说明(1) 时间显示:电子钟上电后,8个数码管显示初始状态即最左边的一个数码管显示P.。如果未显示P.,只需按一下复位键即可使其显示出P.。按下A键后电子钟进入自动计时状态,电子钟显示00时00分00秒并开始运行。(2) 时间调整:若要进行时间调整,则需再次按下A键,进入时间暂停调整状态,然后按下B键进行位选,按下C键加,按下D键减,调整好时间后,按下A键就可以回到调整好的时间为基础的自动计时状态。无论是在自动计时,还是在调整校正时,都可按下复位键使系统回到显示P.的初始状态。4.2电子钟运行结果4.2.1待机(如图7所示)图7 P.显示4.2.2启动(如图8所示) 图8 启动4.2.3运行(如图9所示)图9 运行 4.3 误差分析在调试运行过程中,在所有参数正确的情况下,我的结果仍出现运行缓慢情况。产生误差的主要原因是我们用软件计时,计时1秒是采用定时器的中断服务程序。当电子钟运行1秒,执行中断程序需要一定时间,这个时间就是所产生的误差,这个误差是不可避免的。同时,单片机工作也会受到环境的影响,比如温度、湿度,以及其它电子设备的干扰。因此,应该让电子钟工作在适度温度、干燥和电子干扰较少的环境下,还有一种方法就是采用实时时钟芯片,这样可以使误差降低到最少。4.4 设计体会这次课程设计持续了几周时间,开始一直就想着等别人做出来再去请教别人,没想到,自己做出来的人并不多,也没有谁能够帮我的,于是就和吴娟去图书馆借书自己琢磨。借了胡辉主编的单

温馨提示

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

评论

0/150

提交评论