产品推荐:水表|流量计|压力变送器|热电偶|液位计|冷热冲击试验箱|水质分析|光谱仪|试验机|试验箱


仪表网>技术中心>应用设计>正文

欢迎联系我

有什么可以帮您? 在线咨询

基于单片机的数字秒表设计

   2012年03月12日 14:55  
  摘要:文中设计了一种以单片机为控制核心的数字秒表。该数字秒表采用C语言开发,通过数码管显示计时结果。对系统硬件电路和软件进行了设计,以Proteus和Keil软件为开发平台,对数字秒表进行了仿真。仿真结果表明该数字秒表精度高、稳定性强。
  
  当今,计算机技术带来了科研和生产重大飞跃,微型计算机的应用已渗透到生产、生活的各个方面。单片微型计算机具有体积小、价格低、功能强的特点,随着性能不断提高,其适用范围愈来愈宽,在计算机应用领域占有重要的地位。秒表应用于我们生活、工作、运动等需要计时的方面。秒表的数字化给人们生产生活带来了极大的方便,而且大大的扩展了秒表原先的功能。它由刚开始的机械式秒表发展到今天所常用的数字式秒表。秒表的计时精度越来越高,功能越来越多,构造也日益复杂。本文结合单片计算机,实现了一种基于AT89C52单片机的数字秒表的设计,并且利用Proteus和Keil软件实现了仿真。
  
  1、系统设计方案
  
  1.1系统设计要求
  
  (1)秒表计时zui大值为59分59.99秒。
  
  (2)秒表由六位七段LED数码管显示,其中高两位显示“分”,中间两位显示“秒”,低两位显示“0.01”秒。
  
  (3)秒表拥有计时、暂停、清零功能。
  
  (4)设置三个功能键:键1开始计时,键2暂停计时,键3清零计时。
  
  1.2总体方案设计
  
  数字秒表系统主要完成对计时实时的显示,精度达到0.01s,以及通过功能键可以使当前计时暂停或清零。系统主要包括时钟电路、复位电路、按键电路以及数码管显示电路。
  
  系统采用六个共阳极数码管,其中八位数据口与单片机的P0口通过74LS245双向总线收发器相接,以增加P0的驱动能力。6个片选信号连接单片机P2口的低六位。该电路可满足对计时时间的显示,zui小显示单位为0.01s,溢出则向前进位,显示时间的范围为0到59分59.99秒。3个功能键连接到P3口的低三位,控制系统的计时、暂停和清零。系统的整体组成框图如图1所示。
  
  2、硬件电路设计
  
  2.1单片机的选型
  
  由于本系统只需要单片机完成对计时的显示以及处理定时/计数的中断,对于I/O资源以及处理速度无特殊要求,所以选择Atmel公司生产的AT89C52单片机。AT89C52增加了在线调试功能,程序可以通过JTAG接口下载、调试和固化,可实现实时仿真和在线编程或在系统编程,具有通过网络进行升级、维护的功能。
  
  采用MSC-51系列的单片机相比有两大优势:(1)片内程序存储器采用快闪存储器,使程序的写入方便,还可任意的擦写1000次,使开发更为方便。(2)提供了更小的芯片,使整个硬件电路的体积更小。本设计采用了MSC-51系列89C52单片机,具有程序加密功能且物美价廉,经济实用。
  
  2.2时钟电路
  
  单片机工作的时间基准是由时钟电路提供的。在单片机的XTAL1和XTAL2两个管脚,接一只晶振及两只电容就构成了单片机的时钟电路。时钟电路如图2所示。电路中,电容器C1和C2对振荡频率有微调作用,通常取(30±10)pF,本设计选用30pF。电路中的品振采用石英晶体震荡器,晶振频率选择12MHz。石英晶体震荡器具有非常好的频率稳定性和抗外界干扰的能力。通过基准频率来控制电路中的频率的准确性。
  
  2.3复位电路
  
  单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。89系列单片机的复位信号是从RST引脚输入到芯片的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚有一个高电平并维持2个机器周期(24个振荡周期),则CPU就可响应并且将系统复位。复位分为手动复位和上电复位。系统复位电路如图3所示。
  
  2.4数码管显示电路
  
  本系统使用了6个共阳极数码管、设计LED显示驱动是一个非常重要的问题,显示电路由LED显示器、段驱动电路和位驱动电路组成。由于单片机的并行口驱动电流太小,不能直接驱动LED显示器,段驱动电路通过74LS245双向总线收发器使P0口与数码管的八段相连,可增加P0的驱动能力。位驱动电路通过六只NPN三极管驱动使P2口的低六位作为位选信号,使之产生足够大的电流,来驱动LED达到足够的亮度,显示器才能正常工作。如果驱动电路能力差,即驱动电流过小,数码管显示亮度不够,而驱动电路驱动电流太大容易损坏数码管。
  
  LED显示器显示控制方式有两种:静态和动态。本设计方案选择的是动态控制方式。由于一位数据的显示是由段码和位码信号共同配合完成的,因此,要同时考虑段和位的驱动能力,而且段的驱动能力决定位的驱动能力。
  
  2.5按键电路
  
  本系统设置3个功能按键分别为KEY1、KEY2和KEY3,其中KEY1是开始按键,与P3.0相连,按下时数码管开始计时;KEY2是停止按键,与P3.1相连,按下时数码管停止计时:KEY3是清零按键,与P3.2相连,按下时数码管全部清零。当数码管计时时,不能直接按清零按键,只能按停止按键才能停止,再按清零按键全部显示初始化0。
  
  3、系统软件设计
  
  系统软件由主程序模块、延时模块、键盘扫描程序模块以及数码管驱动程序模块组成。
  
  本设计中,计时采用定时器T0中断完成,其余状态循环调用显示子程序,当功能按键按下时,转入相应功能程序。其主程序流程图如图4所示。
  
  4、仿真结果
  
  程序在KeiluVision3环境下编写,编译通过后生成.hex文件加载到Proteus下可正常运行。程序刚运行前数码管显示初值为0000.00,按下键KEY1系统开始计时,程序中每0.01s进入一次定时中断。在程序运行过程中若按下键KEY2系统暂停计时,数码管显示计时截至状态;若按下键KEY3,数码管清零。图5为键KEY1抬起、键KEY2按下的状态。
  
  5、结束语
  
  本文利用AT89C52单片机设计了具有计时开始、暂停及清零功能的数字秒表,计时zui大值为59分59.99秒,计时精度为0.01秒。利用Proteus和Keil软件进行了仿真,达到了预期的效果。整体电路的计时精度高,电路结构简单,抗*力强,具有广泛的应用前景。

免责声明

  • 凡本网注明“来源:仪表网”的所有作品,均为浙江兴旺宝明通网络有限公司-仪表网合法拥有版权或有权使用的作品,未经本网授权不得转载、摘编或利用其它方式使用上述作品。已经本网授权使用作品的,应在授权范围内使用,并注明“来源:仪表网”。违反上述声明者,本网将追究其相关法律责任。
  • 本网转载并注明自其它来源(非仪表网)的作品,目的在于传递更多信息,并不代表本网赞同其观点或和对其真实性负责,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品第一来源,并自负版权等法律责任。
  • 如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
联系我们

客服热线: 15267989561

加盟热线: 15267989561

媒体合作: 0571-87759945

投诉热线: 0571-87759942

关注我们
  • 下载仪表站APP

  • Ybzhan手机版

  • Ybzhan公众号

  • Ybzhan小程序

企业未开通此功能
详询客服 : 0571-87759942