您当前的位置:五五电子网电子知识单元电路时钟-定时电路用89C2051设计一款高精度三路倒计时器 正文
用89C2051设计一款高精度三路倒计时器

用89C2051设计一款高精度三路倒计时器

点击数:7951 次   录入时间:03-04 11:39:27   整理:http://www.55dianzi.com   时钟-定时电路

  用74系列、40系列小规模数字芯片设计的倒计时器非常多,但显示不直观(无LED数码管),调整参数不灵活,计时精度低(采用RC振荡)。用单片机自制倒计时器,不但电路简单,而且功能可根据需要自行设计。下面介绍一种用89C2051自制的高精度三路倒计时器。
  
  一、功能介绍
  
  1.独立的三路倒计时。每一路均可独立设置启动、关闭。
  
  2.倒计时范围0~20小时,可任意设定,且关机后数据不丢失。计时精度高:误差<O.ls3.独立的三路输出。第1路蜂鸣器输出:15s;第2路PNP晶体管输出:Ss;第3路PNP晶体管输出:直至关机。
  
  二、工作原理
  
  电路原理图见图1。整机由89C2051、三只LED数码管、K1~K4、R、T等元器件组成。89C2051内部Tl定时器完成100ms定时中断功能。为了减少硬件,从89C2051的Pl口直接输出LED数码管的段码,BCD转换由软件完成。位码从P3.0、P3.1、P3.7输出。键盘扫描与LED位码共用I/O口。
  
  由于89C2051的灌入电流为20mA,故可直接驱动蜂鸣器和PNP晶体管。
  
  LED数码管采用共阴高亮型,数码管LED1要旋转1800。这是因为三位数码管要显示“19: 99”,故用数码管LED1的小数点表示“1”。LED的管脚图见图2。PCB印制板图见图3。

418563


  
  三、软件编制
  
  软件流程见图4。在T1中断程序中编制一个软时钟,在定时处理程序中不断查询时间,并根据每路的启动状态,判断是否要减数。
  
  每路倒计时到“0”后,均要判断其他两路是否已启动。如果没有启动,则CPU进入掉电模式,工作电流<1.5μA,因此在电路中末设计电源开关,系统再次启动工作由复位键K4完成。每路倒计数的初值、启动状态(是否开始倒计数),均可单独设定并存在89C2015的RAM中,只要不断电,数据就不会改变。

软件流程


  
  四、操作说明
  
  1.开关功能
  
  电路中设有K1—K4四个开关。各开关功能如下:
  
  K1:定时路数切换。上电后LED显示第1路定时时间。按下K1,LED显示第1路定时启动状态:  【F】表示关,【n】表示开。连续按K1,依此进  1入第2路、3路设置,最后进入关机状态,LED显示【OFF】。此时按下K3则关机。
  
  K2:小时位加1。超过9小时,LED1的小数位亮。表示十位数为“1”,因此该位LED数码管可显示的最大定时时间为19小时。LED1安装时要倒过来,而且最好选用绿龟的。
  
  K3:分钟数加1、启动状态切换【F/n/F】、关机确认。
  
  (1)当LED数码管显示定时时间时,按一下K3,相应路数的分钟数加1。可调范围为0~59分钟。
  
  (2)当LED数码管显示【1,F】、【2.F】或【3.F】时,按一下K3,则显示器的【F】变为【n】,再次按一下K3,则【n】变为【F】。一旦进入(n],则相应路数的倒计时启动。
  
  (3)当LED数码管显示【OFF】时,表示CPU已处于关机模式,此时按下K3,CPU进入掉电模式。
  
  K4:复位  按下K4,复位89C2051,MCU脱离掉电模式,系统重新启动。
  
  上述本电路定时初值及启动状态均可由用户随时修改。
  
  2.定时初值及启动状态的设定
  
  三路定时初值及启动状态均可一次设置好,设定的方法如下:
  
  (1)接住K1~K3中的任意一个键约Ss后,LED数码管的显示开始闪烁,表示已进入初值和启动状态设定模式。
  
  (2)通过对K1~K3的操作(参见前面对开关功能的叙述),可以对三路的定时初值及启动状态进行设定。
  
  五、注意事项
  
  1.当MCU用6MHz晶振时,工作电压的范围为2.6~5.5V。
  
  2.外接继电器,请注意其工作电压,并注意对晶体管的保护。




本文关键字:暂无联系方式时钟-定时电路单元电路 - 时钟-定时电路

上一篇:暗室定时器电路