




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机电子钟课程设计说明书1、设计课题任务和功能要求说明及总体方案介绍1.1 设计课题任务设计题目:数字电子钟本课程设计室采用单片机最小系统来实现以上要求,设计一个数字钟,要求开机时,显示“000000”的时间开始计时,并且用3个按键分别控制控制“秒” 、“分”、 “时”的调整,每按一次加1秒、1分;和1个小时。1.2 功能要求说明 该电子钟上电或按键复位后能自动显示系统提示符“P.”, 进入时钟准备状态;第一次按电子钟启动/调整键,电子钟从0时0分0秒开始运行,进入时钟运行状态;再次按电子钟启动/调整键,则电子钟进入时钟调整状态,此时可利用各调整键调整时间,调整结束后可按启动/调整键再次进入时钟运行状态。1.3 总体方案介绍及工作原理说明1.3.1 总体方案介绍 本次设计电子钟系统功能简单,用单片机的最小系统就能得以实现。而单片机的最小系统设计中实际上最重要的就是对键盘/显示器接口电路的设计,由于系统功能不同所以要求就不同,接口设计也就不同。对一个键盘/显示器接口设计应从整个系统出发,综合考虑软、硬件特点。利用单片机内部的定时/计数器进行中断定时,配合软件延时实现时、分、秒的计时。AT89S52是一个含有4K可编程可擦写只读存储器的低功率高性能CMOS 8位单片机。该器件运用了Atmel公司的高密度不易丢失存储技术且兼容MCS-51工业标准的设置和管角输出。片内的闪存允许用系统内模式编程或传统的不易失程序编写器。由于集成了一个通用8位CPU和闪存,使得Atml的AT89S52成为一片具有高灵活性,可有效解决大多嵌入式控制应用的高性能单片机。AT89S52支持如下标准特性:4K闪存,128字RAM,32条I/O线路,双16位定时/计数器,5V双 电平中断机构,一个全双工串行口,片内震荡和时钟电路。AT89S52是按照静态逻辑操作停止到0频率设计的,并且支持两套由软件选择的功率存储模式。被空闲模式停止的CUP可有RAM、定时/计数器、串口和中断系统使其继续运作。掉电模式用锁定振荡器停止一切芯片功能的方式存储RAM内的内容,直到下一次的硬件复位。系统框图如图1.1:1.3.2 工作原理说明数字电子钟的计时原理为:上电后,电子时钟从“000000”开始计时。当定时器0的定时时间满256s后,定时器0溢出一次,溢出满4000次后,数字电子时钟的秒加1,满60秒后,分加1,满60分后,时加1,满24时后,电子表重新从“000000”开始计时。其工作原理图如下图1.2:图1.2秒计时器原理图2、设计课题硬件系统的设计2.1 数字电子钟硬件系统各模块功能简要介绍2.1.1 时钟电路在AT89S52芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,输出端为引脚XTAL2。而在芯片内部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。时钟电路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲信号。2.1.2 复位电路复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序,并使其它功能单元处于一个确定的初始状态。本复位电路采用的是按键复位,它是通过复位端经电阻与VCC电源接通而实现的,它兼具上电复位功能。因本系统的晶振的频率为12MHz,所以,复位信号持续时间应当超过2s才能完成复位操作。 2.1.3 键盘电路 本系统采用的是独立式键盘结构,每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。它软件是采用查询式结构,首先逐位查询每根I/O口线的输入状态,如某一根I/O口线输入为低电平,则可确认该I/O口线所对应的按键已按下,然后,再转向该键的功能处理程序。 2.1.4 电源电路我们直接采用USB电源。它可以热插拔。这就让用户在使用外接设备时,不需要重复“关机将并口或串口电缆接上再开机”这样的动作,而是直接在电脑工作时,就可以将USB电缆插上使用。而且具有携带方便,成本低,制作电路简单的特点,输出电压足以支持单片机工作。 2.1.5 显示电路 系统采用动态显示方式,用P0口来控制LED数码管的段控线,而用P2口来控制其位控线。动态显示通常都是采用动态扫描的方法进行显示,即循环点亮每一个数码管,这样虽然在任何时刻都只有一位数码管被点亮,但由于人眼存在视觉残留效应,只要每位数码管间隔时间足够短,就可以给人以同时显示的感觉。8个欧姆电阻则起限流作用。电路结构采用动态扫描的方式,所有数码管的段控端公用单片机P0口的8根输出口线,数码管的段控端a、b、c、d、e、f、g、dp分别接到P0口的P0.0、P0.1、P0.2、P0.3、P0.4、P0.5、P0.6、P0.7口线上,每个数码管的位控线单独占用单片机P2口一根输出口线,8位数码管从高位到低位分别接P2.0P2.7引脚。段控码(低电平有效)由P0口输出经上拉电阻上拉电压后送到数码管的段控端,位控码由P2口输出经三极管S9050驱动后送到数码管的位控端。2.2 数字电子钟电路原理图、PCB图、元器件布局图2.2.1 数字电子钟电路原理图 数字电子钟电路原理图参见附录。2.2.2 数字电子钟PCB图数字电子钟PCB图参见附录。 2.2.3 元件布局图数字电子钟元件布局图参见附录。2.2.4 实物实验结果图数字电子钟实物实验结果图参见附录。2.3 数字电子钟元器件清单表2.1 数字电子钟元器件清单元件名称封装形式元件号LED数码管(共阳极)DIP-12L1LED数码管(共阳极)DIP-12L2300电阻AXIAL0.4R1R8200电阻AXIAL0.4R91K电阻AXIAL0.4R10330电阻AXIAL0.4R114.7K电阻AXIAL0.4R12R19S9050PNP三极管TO-5Q1Q8轻触开关1SW-4S1轻触开关2SW-4S2轻触开关3SW-4S3轻触开关4SW-4S4轻触开关5SW-4S5按键开关SW-OIP3S612M晶振XTAL1Y130pF电容RAD0.2C130pF电容RAD0.2C222F电容RB.2/.4C30.1F电容RAD0.2C4220F电容RB.2/.4C5USB电源接口USBU1001发光二极管DIODE0.4D1扩展插针SIP08J0扩展插针SIP08J1扩展插针SIP08J2扩展插针SIP08J3AT89S52DIP40U13、设计课题软件系统的设计3.1 单片机硬件资源的分配 本次设计用到了单片机正常工作的硬件资源,如(连接晶振的引脚XTAL1和XTAL2,复位引脚RESET),对其硬件资源还做了具体的安排。(1).P0口作为数码管显示器的段控输出口,对数码管显示器进行控制。(2).P1口P1.0P1.3接了四个独立式分别为1键、2键、3键4键,用于对键盘的控制,P1.5、P1.6、P1.7则作为ISP程序下载的输入端。(3).P2口该口全部用于数码管的位控端。(4).定时/计数器使用定时器0来实现本次电子钟的运行。(5).专用寄存器定时器控制寄存器TCON,通过设置该寄存器中TR0位的状态来控制定时/计数器0的启动/停止;中断允许寄存器IE,通过设置该寄存器EA/ET0位的状态来设置定时/计数器0中断允许/禁止;定时/计数器工作方式寄存器TMOD,设置定时/计数器0的工作方式。3.2 数字电子钟软件系统各模块功能简要介绍 本设计的软件部分采用C语言编写,并将其模块化,在主程序中进行调用。在主程序中首先要完成初始化工作,然后进入循环阶段,并带八位数码管显示。软件设计的重点在于秒脉冲信号的产生、显示的实现、以及按键的处理等方面。基于软件的秒脉冲信号通常有延时法和定时中断法。延时法一般采用查询方式,在延时子程序前后必然需要查询和处理的程序,导致误差的产生,因此其秒脉冲的精度不高;中断法的原理是,利用单片机内部的定时器溢出中断来实现。按键程序查看是否有按键按下,以实现相应的按键功能,并调显示程序以解决按键按住不放时不显示时间的问题。3.3 数字电子钟软件系统程序流程框图 图3.1 程序流程图3.4 数字电子钟软件系统程序清单 在AT89S52的单片机的P0和P2端口分别接有两个动态数码管,并且用P1口控制3个按键分别来控制“秒” 、“分”、 “时”的调整,每按一次加1秒、1分;和1个小时。其工作原理图如上图图2-1所示。在设计过程中我们用一个存储单元作为秒计数单元,就让秒计数单元加1,当秒计数达到60秒时,就自动返回0,重新秒计数。计数“分”和“秒”时也同上所述,对于计数单元中的数据要把它十位和个分开,方法采用对10整除和对10整余。在数码上显示,仍通过查表的方式实现。一秒时间的产生在这里采用软件的精确延时来实现。具体程序参见附录。4、设计结论仿真结果和误差分析及教学建议4.1 数字电子钟的设计结论及使用说明本次设计经过调试测验是比较成功的,各项指标都达到设计要求。只是因设计仓促,考虑不周全设计还存在不完美之处。1、简单介绍下使用电子钟时的操作步骤:(1)将+5V电源接到电子钟电源插口上,接通电源开关。(2)把电子钟电路板上的ISP程序下载口JP1通过下载线连接到计算机打印机接口,在计算机上通过下载软件Easy 51Pro把电子钟程序下载到单片机内。(3)电子钟程序下载到单片机以后,电子钟进入待命令状态,显示器显示“000000”。(4)按一下1键,电子钟从0时、0分、0秒开始运行,此时显示器LED5、LED4、LED3、LED2、LED1、LED0分别显示时、分、秒。(5)再次按一下1键,电子钟停止运行进入调整状态,此时通过2键3键、4键分别调整电子钟的时、分、秒。按一下其中的一个键对应的值加1。调节到用户想要的时间后,再次按一下1键,电子钟将以用户调整的时间为起点进入运行状态。总之,上电后,按1键奇数次时钟运行并计时,按偶数1键则停止电子钟运行。2、我们在调试时,为了保证效果,必须尽量减小测量误差,提高测量精度。调试结果是否正确,很大程度受测量正确与否和测量精度的影响。为此,需注意以下几点:(1) 正确使用测量仪器的接地端。(2) 测量电压所用仪器的输入端阻抗必须远大于被测处的等效阻抗。因为, 若测量仪器输入阻抗小,则在测量时会引起分流给测量结果带来很大误差。(3)要正确选择测量点,用同一台测量仪进行测量进,测量点不同,仪器内阻引起的误差大小将不同。(4)调试过程中,不但要认真观察和测量,还要于记录。记录的内容包括实验条件,观察的现象。只有有了大量的可靠实验记录并与理论结果加以比较,才能发现电路设计上的问题,完善设计方案。(5)调试时出现故障,要认真查找故障原因,切不可一遇故障解决不了的问题就拆掉线路重新安装。因为重新安装的线路仍可能存在各种问题。我们应该认真检查.4.2 数字电子钟的仿真结果Proteus嵌入式系统仿真与开发平台是由英国Labcenter公司开发的,是目前世界上最先进、最完整地嵌入式系统设计与仿真平台。它是一种可视化的支持多种型号单片机(如51、PIC、AVR、Motorola hcll等),并且支持与当前流行的单片机开发环境(Keil、MPLAB、IAR)连接调试的软硬件仿真系统。Proteus除了具有和其他EDA工具一样的原理图、PCB自动或人工布线及电路仿真功能外,针对微控制系统与外设的混合电路的电路仿真、软件仿真、系统协同仿真也做到了一体化和互动效果,是目前电子设计爱好者广泛使用的电子线路设计与仿真软件Protel和Multisim功能的联合和进一步扩展。Proteus软件已有近20年的历史,在全球拥有庞大的企业用户群,是目前唯一能够对各种处理器进行实时仿真、调试与测试的EDA工具,真正实现了在没有目标原型时就可以对系统进行设计、测试与验证。由于Proteus软件包括逼真的协同仿真功能,得到了包括剑桥大学在内的众多大学用户作为电子学或嵌入式系统的课程教学、实验和水平考试平台。目前,Proteus在国内单片机开发者及单片机爱好者之中已开始普及,有很多开发者已经开始用此开发环境进行仿真。首先打开protus 7 professional软件,在元件库中找到要选用的所有元件,然后进行原理图的绘制;绘制好后再选Keil已经编译好的*.hex文件,选择运行,观察显示结果,根据显示的结果和课设的要求再修改程序,再运行查,直到满足要求。按下1键即开始计时,再次按1键即停止计时。按2键进行时调整,按3键进行分调整,按4键进行秒调整即可实现如图4.2所示结果:图4.2 按1键开始计时4.3 数字电子钟的误差分析在上面的章节中已经介绍过,本电子钟设计是使用单片机的定时/计数器0在工作方式2下定时256s,根据定时时间和单片机最小系统的时钟周期使定时/计数器0重复中断4000次(近似)就是一秒的时间了,这里就存在着误差。并且延时也是预先估计算好的,而定时/计数器0并没有马上被赋予原来产生256s的初值,而是在中断服务程序中重新赋的初值,因而使用定时/计数器实现电子钟的运行存在着一定的误差。另外,单片机电子钟的计时脉冲基准是由外部晶振的频率经过12分频后提供,采用内部的定时/计数器来实现计时功能。所以,外接晶振频率精确度直接影响电子钟计时的准确性。4.4 设计体会为期几个星期的课程设计已经结束,在这几个星期的学习、设计过程中我感触颇深。使我对单片机的理论知识有了具体的认识。通过这次设计,我的理论知识掌握得更扎实,动手能力明显提高。同时,通过网上搜索等多方面的查询资料,比如我们用的AT89S52芯片。通过本次课程设计我学到许多在书本上没有的知识,也认识到理论联系实践的重要。理论学得好,但如果只会纸上谈兵,一点用都没有。通过这次课程设计,我掌握了常用元件的识别和测试;熟悉了常用的仪器仪表;通过对实际电路的分析,结合实际实验,并利用其它电路作为辅助,提出了一种制作数字钟的有效方法,解决了在制作数字钟时经常出现的数字显示不了,显示数字模糊的问题。以及如何提高电路的性能等等。在实验过程中,我们遇到了不少的问题。比如:显示不出数字,数字模糊这样的问题。在老师和同学的帮助下,把问题一一解决,那种心情别提有多高兴,很有成就感。同时,在实验中暴露出我们在理论学习中所存在的问题,有些理论知识还处于半只半解的状态,通过实验加深了我们对这些知识的理解。特别是在排查电路问题时,使我们熟练掌握了一些处理电路故障的方法。通过完成这次电子钟设计之后,让我感触颇丰,一次次的程序调试和文档修改让我对程序有了进一步的认知,文档的排版更是让我体会深刻。我对单片机的知识没掌握多少,而且平时听课的时候感觉大部分也都没听懂,课后也没有花很多时间去复习和钻研它,相信这也是很多同学的通病。单片机这门课是一项非常重视动手实践的科目,不能总是看书。但是学习它首先必须得看书,因为从书中我们需要大概了解一下,单片机的各个功能寄存器,我们使用单片机就是用软件去控制单片机的各个功能寄存器,所以我们必修对单片机的程序要有一定的基础,对我个人来说程序这一块还是比较劣势的,很多单片机要完成的功能我都还搞不定程序。因此我提出建议,学校能不能开放实验室,有时间就去进行一些单片机基础实验,老师可做些指导帮助同学们对程序的编写和调试有一定的作用,最重要是分析程序和看懂程序。同时我还希望老师能够多讲解一些例题,这样更容易让同学接受。最后用一句话来结束吧。“实践是检验真理的唯一标准”。只有把所学的理论知识运用到生活当中,才能发挥它最好的作用。参考文献1谢自美. 电子线路设计实验测试M. 华中科技大学出版社,2005.9 2夏继强. 单片机应用设计培训教程实践篇M. 北京:北京航空航天大学出版社, 2008.3何立明. MCS-51单片机应用系统设计(系统配置与接口技术)M.北京:北京航空航天大学出版社, 2003.4李广弟, 朱月秀, 王秀山. 单片机基础M. 北京:北京航空航天大学出版社, 2001.7.5曹巧媛.单片机原理及应用M.北京:电子工业出版社,1997.7.6李光飞.单片机课程设计实例指导M.北京:北京航空航天大学出版,2004.9.7曹才开.电工电子实训教程M.清华大学出版社,1998.致 谢 本设计在制作及进行过程中得到陈坚老师的悉心指导。论文行文过程中,严格按照陈老师的格式要求,在我遇到困难想放弃的时候给予我最大的支持和鼓励。陈老师严谨求实的治学态度,踏实坚韧的工作精神,将使我终生受益。在此,谨向陈老师致以诚挚的谢意和崇高的敬意。 感谢各位同学的协助,我们一起讨论、研究和分析问题。其中吴兵同学在程序设计过程中给了我很大的帮助,让我明白了程序的原理,并引导我如何去学好单片机,在此一并表示感谢。附 录数字电子钟原理图数字电子钟PCB图数字电子钟元件布局实物实验结果图具体程序如下:#includeunsigned char code dispcode=0xc0,0xf9,0xa4,0xb0,0x99,/段码 0x92,0x82,0xf8,0x80,0x90, 0xbf;unsignedchar disbitcode=0xf7,0xfb,0xfd,0xfe,0x7f,0xbf,0xdf,0xef; /位控码unsigned char dispbuf=0,0,10,0,0,10,0,0; /显视缓冲区unsigned char dispbitcut,second,minute,hour,i; /时分参量定义unsigned int tcnt; /定时器计算变量定义void ini(void); /定时器初始化子程序void display(void); /显视子程序void key(void); /判键子程序void delay(unsigned char m);void delay1(unsigned int n); /延时子程序void to(void); /中断void main(void) /主函数 ini(); /定时器初始化子程序 while(1) display(); /调显视 key(); /判键 void ini(void) /定时器初始化函数 TMOD=0x01; /定时器0工作方式1 TH0=(65536-50000)/256; /T0初值 TL0=(65536-50000)%256; TR0=1; /开定时器0 ET0=1; /开T0中断 EA=1; /开总中断void display(void) /显视函数 for(i=0;i8;i+) P0=dispcodedispbufi;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 法律文书要素提取员考试试卷及答案
- 2025年气液动阀门、电磁阀、自锁阀项目建议书
- 消费者保护工作总结
- 消防员年末工作个人总结
- 金融行业工作计划范文5篇
- 2025年碳纤维预浸布合作协议书
- 2025年厢式改装车、特种车辆合作协议书
- 2025年高纯超细石英粉合作协议书
- 2025年沐浴清洁海绵项目合作计划书
- 智慧城市背景下智能垃圾分类系统的政策支持与市场响应
- 2023-2024学年安徽省安庆市高二(下)期末考试物理试卷(含答案)
- YBT 2011-2014 连续铸钢方坯和矩形坯
- 检验科标本采集手册检验科标本采集手册参考
- 2024-2030年中国靶机行业市场发展趋势与前景展望战略分析报告
- JG∕T 197-2018 预应力混凝土空心方桩
- 山东省淄博市2024年高一下学期期末考试英语试题含解析
- 10kv线路带电跨越综合项目施工专项方案
- 材料、构配件进场检验记录表C4-44
- 有线广播电视机务员职业技能试题及答案
- 管沟开挖回填专项施工方案
- 产业园概念规划设计任务书
评论
0/150
提交评论