6位LED显示时钟计时器.doc_第1页
6位LED显示时钟计时器.doc_第2页
6位LED显示时钟计时器.doc_第3页
6位LED显示时钟计时器.doc_第4页
6位LED显示时钟计时器.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

时钟计时器的设计目 录1.引 言,11.1.设计意义11.2.系统功能要求11.3.本组成员所做的工作12.方案设计13.硬件设计14.软件设计15.系统调试26.设计总结27.附 录A;源程序28.附 录B;作品实物图片29.参考文献2时钟计时器的设计1. 引 言1.1. 设计意义时钟计时器在现在应用场合非常的广泛,近年来,随着科学技术的进步和时代的发展,人们对时钟的功能和精度提出了越来越高的要求,各种时钟的设计也越来越重要。秒表/时钟计时器是在一种计时器上实现两种基本功能的一种器件。它广泛应用于各种场所,同时,它以其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化,而受到广大消费者的喜爱引 言近年来随着计算机技术的飞速发展,计算机也正式形成了通用计算机系统和嵌入式计算机系统二个分支。单片机作为最典型的嵌入式系统,由于其微小的体积和极低的成本,广泛应用于家用电器、仪器仪表、工业控制单元以及通信产品中,成为现代电子系统中最重要的智能化工具。同时数模电技术、微电子技术也快速发展使得大量集成芯片出现,从而实现很多简单功能代替了原来的模拟电路。这样利用单片机、集成芯片和电子电路就可以很方便的进行设计,其中最典型、现在应用也很多的就是电子产品的设计。本设计就是利用单片机技术将秒表和时钟两种计时器的功能集中到一种计时装置上,从而实现计时器功能的集成化,使其使用起来更加方便。本设计的一大特点就是在硬件设计中采用实时时钟芯片来实现计时,大大简化了硬件电路,从而使设计更加简便易行。1.2. 系统功能要求时钟计时器要求用单片机及6位数码管显示时,分,秒,以24小时计时方式运行,能整点提醒(但蜂鸣器,次数代表整点时间),使用按键开关可实现时,分调整,秒表|时钟功能转换,省电(关闭显示)及定时设定提醒(蜂鸣器)的歌功能。1.3. 本组成员所做的工作方案原理论证 焊接调试设计报告2. 方案设计方案论证 :为了实现LED显示器的数字显示,可以采用静态显示法和动态显示法。由于静态显示法需要数据锁存器等硬件,接口要复杂些,又考虑到时钟显示只有6位,且系统没有其他复杂的处理任务,所以决定采用动态扫描法实现LED的显示。 单片机采用易购的AT89S52系列,这种单片机具有足够的空余硬件资源,可以实现其他的扩充功能。如果考虑使用电池供电,则可采用LV系列单片机。时钟计时器电路系统的总体设计框图如下所示按键开关AT89S52 P0单片机控制器 P26位LED显示器 列驱动蜂鸣器3. 硬件设计时钟计时器的硬件电路如图所示。该电路采用AT89S52单片机最小化应用实际;采用共阳7段LED显示器;P0口输出段码数据;P2.0P2.5口作列扫描输出;P1.0、P1.1、P1.2、和P1.3口接4个按键开关,用于调时及功能设置;P1.7端口接5v的小蜂鸣器,用于按键发音及定时提醒、整点到时提醒等;为了提供共阳LED数码管的列扫描驱动电压,用三极管9012做电源驱动输出;采用12MHZ晶振,可提高秒计时的精确性。 4. 实验目的1. 掌握stc89c52编程原理。a.掌握stc89c52可编程并行接口的工作原理及初始化方法,验证各种工作方式的功能。b.掌握用stc89c52扩展PC机并行接口的方式。c.了解stc89c52工作在方式1时,利用应答信号控制数据传输的过程。2.了解键盘电路的工作原理。 矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是44个。这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率。3.掌握键盘接口电路的编程方法。 设计人机界面接口,要求在微机屏幕上动态地显示当前实验的内容和实验的结果,包括stc89c52的工作方式,输入的数据和输出的结果 设计人机界面接口,要求在微机屏幕上,以菜单方式列出并行接口stc89c52原理实验的内容,并根据实验内容设置好工作方式选择跳线开关,用户可以通过键盘选择实验的内容。设计原理与分析1、实验原理: 为了实现LED显示器的数字显示,可以采用静态显示法和动态显示法。由于静态显示法需要数据锁存器等硬件,接口要复杂些,又考虑到时钟显示只有6位,且系统没有其他复杂的处理任务,所以决定采用动态扫描法实现LED的显示。 单片机采用易购的AT89S52系列,这种单片机具有足够的空余硬件资源,可以实现其他的扩充功能。如果考虑使用电池供电,则可采用LV系列单片机。时钟计时器电路系统的总体设计框图如下所示(1)最小系统及控制原理图(2)LED显示及驱动4. 软件设计主程序本设计中计时采用定时器T0中断完成,秒表使用定时器T1中断完成。主程序循环调用显示子程序和查键子程序,当端口有开关按下时,转入相应功能程序。其主程序执行流程如下图开始按时间鸣叫次数初始化调用显示子程序进入功能程序按键下?整点到以上为主程序流程图显示子程序时间显示子程序每次显示6个连续内存单元的十进制BCD码数据,首地址在调用显示程序时现指定。显示时,先取出内存地址中的数据,然后查的对应的显示用段码从P0口输出,P2口将对应段码选中供电,就能显示该地址单元的数据值。为了显示小数点及“-”“A”等特殊字符,在显示班级和计时时应采用不同的显示子程序。定时器T0中断服务程序定时器T0用于时间计时。定时溢出中断周期设为50ms,中断进入后先进行定时中断初值校正,当中断里累计20次时,对秒计数单元进行加1操作。时钟计数单元地址分别在70H71H、76H77H、78H79H中,最大计时值为23时59分59秒。7AH单元内存放“熄灭符“数据(#0A),用于时间调整时的闪烁功能。在计数单元中,采用十进制BCD码计数,满10进位。流程图如下加1s处理T0中断保护现场定时初值校正1s到恢复现场,中断返回 T0中断计时程序流程图5. 系统调试调试分为硬件调试和软件调试硬件调试:在焊接电路板的时候,应该从最基本的最小系统开始,分模块,逐个进行焊接测试。在对各个硬件模块进行测试时,要保证软件正确的情况下去测试硬件,要不然发生错误时,不知道到底是哪一方出错了。当然,在设计的过程中也存在着失误和不足,在调试中进行修改了。软件调试:软件为老师所提供提供,其原理在上一模块以作说明,在这里再作说明,软件经调试无误,直接将其下再到单片机中,看是否达到所要的效果软件部分是先参考书上的例子,然后自己根据硬件电路写程序,由于以前所学是单片机汇编语言,所以这个系统在编写程序过程中都采用汇编语言编写。刚刚开始,编写不会一次性通过,经过仔细分析修改最后编译成功。6. 设计总结本文是关于基于ST89S52设计的时钟计时器,能够进行计时,显示时间,定时提醒等功能。是非常实用的一个设计,此次的设计对于我们更好的学习和掌握相关知识有很大的帮助。在此次设计中,我们得到以下体会:一、 在这次时钟计时器设计的过程让我进一步熟悉KEIL及Proteus的使用。 二、重新复习并进一步学习了MCS-52优点,明确了研究目标。 三、在后的设计中,既要想到电路器件的联合使用,又要灵活变通,举一反三。四、在焊接方面,我们了解到焊接某些器件时,要先消去电烙铁上的静电,防止静电对芯片特别是放大器件造成伤害,焊接二极管、三极管等芯片时要快,防止持续高温损坏芯片。我们在焊接时争取一次性焊接成功,当焊接好时再去检查时非常困难,所以要非常的仔细。五、从中我们学习到了大家的团结是非常重要的,组里的每一个成员都是必不可少的,因此团结合作的精神是非常的重要的。课程设计心得 在此次设计中,我们得到以下体会:一、 在这次时钟计时器设计的过程让我进一步熟悉KEIL及Proteus的使用。 二、重新复习并进一步学习了单片机,明确了研究目标。 三、在后的设计中,既要想到电路器件的联合使用,又要灵活变通,举一反三。四、在焊接方面,我们了解到焊接某些器件时,要先消去电烙铁上的静电,防止静电对芯片特别是放大器件造成伤害,焊接二极管、三极管等芯片时要快,防止持续高温损坏芯片。我们在焊接时争取一次性焊接成功,当焊接好时再去检查时非常困难,所以要非常的仔细。/*/ / 采用8位LED动态扫描时钟演示程序/ LRM 2004.03.31 /*/使用12MHZ晶振,P0口输出段码,P2口作列扫描,用共阳LED数码管/#include reg51.hcode char dis_711=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff;/* 共阳LED段码表 0 1 2 3 4 5 6 7 8 9 不亮 */ code char scan_con8=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f; / 列扫描控制字data char disdata6=0x00,0x00,0x00,0x00,0x00,0x00;/计时单元数据初值,共6个data char dis8=0x00,0x00,0x00,0x00,0x00,0x00,0x0a,0x00;/显示单元数据,共6个数据data char con1s=0x00,con04s=0x00,con=0X00; /1秒定时用sbit key0=0x90;sbit key1=0x91;sbit key2=0x92;/*/1毫秒延时程序/*/delay1ms(int t)int i,j;for(i=0;it;i+) for(j=0;j=6) con=0;TR1=0;ET1=0;TR0=1;ET0=1; /if(con!=0) if(key1=0) delay1ms(10); while(key1=0); disdatacon+; if(disdatacon=10) disdatacon=0;discon=disdatacon;dis6=0x0a; /if(con!=0) if(key2=0) delay1ms(10); while(key2=0); if(disdatacon=0) disdatacon=0x09; else disdatacon-; discon=disdatacon;dis6=0x0a; EA=1;/*/扫描程序/*/scan()char k;for(k=0;k6;k+) P0=dis_7disk;P2=scan_conk;delay1ms(1);P2=0xff; /*/初始化程序/*/clearmen()int i;for(i=0;i=10) disdata0=0;disdata1+; if(disdata1=6) disdata1=0;disdata2+; if(disdata2=10) disdata2=0;disdata3+; if(disdata3=6) disdata3=0;disdata4+; if(disdata4=10) disdata4=0;disdata5+; if(disdata5=2 ) if(disdata4=4) disdata4=0;disdata5=0; dis0=disdata0

温馨提示

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

评论

0/150

提交评论