首页 > 文章中心 > 正文

六位计数器的了解

本文介绍一种使用单片机制作的双向多功能6位计数器,其面板框图如图1所示。该计数器电路原理如图2所示。它极大地方便了需要交替或者同时使用加数功能和减数功能的场合,例如:在某些生产线上,一方面进行合格品的自动累加计数,另一方面又要扣除从检验岗位返回的不合格品的数字,完成这种功能,通常需要使用两只计数器,还要经过计算才可以得到结果;现在只需要使用本文介绍的计数器就能够同时完成加数和减数的工作,而且即时得到结果的数字。现将该计数器介绍如下。

1.计数信号输入

具有两个计数信号输入端口,可以同时或者分别输人加数信号与减数信号。当输人其中一种信号时,另一个信号输入端无需任何设置,就让它悬空即可。

两个输人端口使用了内部带“斯密特”特性的端口,如果两个端口同时输人信号的话,程序会自动判断,判断原理如下:11=无输人;10=减数输人;01=加数输人;00=同时输人(利用芯片端口上拉,因此,平时端口为高电平,输人L电平有效)。

由于输人端口本身具有“斯密特”性能对计数信号的输人无疑具有较好的抗干扰能力。只要输人基本的0~3.5V直流脉冲或者电平信号,电路都可以正常响应。

提示:

输人信号可以使用红外线、光敏、机械开关和其它电子开关产生的开关脉冲,严禁脉冲最大电压超过DCSV(使用交流信号输人时,注意其峰值不能超过DCSV)。

最方便的是,无需使用有源的输人脉冲,只需要把输人端口对地线短接一次,就可以输人一个计数信号,因为本电路已经配置好输人端口为高电平状态。图2中单片机SP和6P的两个端口分别接与+5V端相连的两只4.7kiZ电阻的另一端。

程序智能处理两个端口来的输人信号:

11和00均为不处理,00虽然是两个端口同时输人,但是因为它们是相反性质,因此,互相抵消,屏幕数字保持不变。

01:需要把显示值增加一个字,>999999或者=用户设置的超限值,则加数控制输出会出现高电平。

10:需要把显示值减少一个字,到达000000时,减数控制输出会出现高电平。

2.控制输出:

具有两个很灵活应用的控制输出端口,其应用组合功能远远高于普通控制输出端口。

如果屏幕显示为000000,则OUTL输出高电平,这就是减计数的最终控制输出信号;如果屏幕显示为用户设置值,则OUTH输出高电平,这就是加计数的最终输出控制信号。

如果屏幕既不是000000,也不是用户的设置值,就都输出L电平。

3.操作按键

两键操作,ANO是设置键(移位键),AN1是置数键(清零键)。

(1)“置数(清零)”键

“置数(清零)”键的作用与两个控制输出端口的状态有关.如果OUTH输出高电平,表示计一数器是因为加数而造成需要清除屏幕数字,因此,按动“置数(清零)”键.屏幕将全部显示0;如果OUTL输出高电平,表示用户希望把屏幕全部0清除,那么,屏幕立即会显示用户的控制设置值。

提示:

也就是说,按动“置数(清零)”键将会在全0和用户设置值之间不断翻转状态。如果是全0,那就是做好加数的准备,如果是用户设置值,那就是做好减数的准备。

(2)设置键(移位键):

按动设置键(移位键)将进人用户超限值的预置状态,然后就用“置数(清零)”键来进行加预置数(第一次按动设置键才是进人设置状态)。

点动“置数(清零)”按键将每次递加一个字,每一位数字均会在0一9一0之间循环,由于数字被限制在仅仅[论\文\网LunWenNet\Com]10个字之间,因此,设置就无需减数键来操作了,这是本电路不安排“减数键”的道理。

简单地说,超限预置设置过程就是:

两键操作:设置键(移位键)、置数键(清零键)。

采用移位设定方法,按设置键(移位键)进人设定状态,相对应的位闪烁,从屏幕的最高位开始到个位的顺序进行预置超限设置。

按‘置数(清零)”键置数,按设置键(移位键)7次后退出。

在正常计数状下,第一次按“置数(清零)”键,屏幕清零;第二次按“置数(清零)”键,屏幕为用户设置值;反复按“置数(清零)”键,将不断反复以上两种状态:

4.保存用户设置数据

用户的超限值保留在电路中的存储器24002内,以便下次使用时无需重新设置。但是,必须在预置超限值时完成整个6位数字的设置操作.不能半途而废;否则,当次设置值减无效。

5.晶体频率

该计数器使用8.OOOMHz的晶振,以求执行指令和接受计数器输人更加快速。最高输人计数器的脉冲频率需要开发软件时在样品试验中确定,以便更好地通知用户。设置完毕后,不需要再按动任何按键就可退出设置状态,自然等待10秒钟左右后,系统自动退出设置状态。

6.灵活应用举例

可以利用两个端口之一来实现自动循环计数。例如:用户在加计数状态下使用,当训散值等于设置值时,OUTH就会输出一个高电平,如果把OUTH通过一只1kΩ左右的电阻连接到清除招改建的“热端”,就会瞬间将计数器复位到准备加计数的状态,从而成为实现自动清除屏幕数字的循环计数器。

7.外壳

使用尺寸为120x53x26mtn的“汽车钟”外壳来安装这种计数器,其中数码管采用6只共阴极数码管。

8.使用的单片机型号

单片机使用HT48R30A-1,ROM有2k,封装为24引脚的DIP双列直插式,也可以在更改印刷板后使用SOP24引脚封装。

9.其它功能提示说明

(1)实际印刷板上面有一只三极管,这是用来构成自动循环计数的反相三极管,其集电极接在“置数”按键上、其基极信号来自OUTH或者OUTL.焊盘F1可供选择是使用加数循环还是减数循环。默认为不循环(各焊盘悬空)。需要使用循环功能的,请在印刷板上把焊盘F1与OUTH或者OUTL焊盘连接起来。

提示:F1不能同时连接OUTH和OUTI,两点:

(2)印刷板上安排有一只输出控制指示灯LED,同样具有选择焊盘F2,可以把焊盘F2连接OUTH或者OUTL,就是说.LED可以作为加数控制输出指示灯或者减数控制输出指示灯.同样,不能把F2同时连接到OUTH和OUTL两点。默认为连接到OUTH焊盘(加计数控制输出指示灯)。

(3)本电路的最高计数频率实测为短秒45个输入脉冲(加数和减数同时输人或者分别输人)、使用时最高计数速度不大于每秒20个输人脉冲,以保证整个计数过程中不会丢失输人的计数脉冲。

(4)成品电路板被封装在一只120x53x26mm的塑料黑色外壳里,壳体上有嵌人式安装的弹性卡子。外壳背后有一排接线端子,如电路图所示,它们有+5V供电、加数脉冲输人、减数脉冲输入、加数控制输出、减数控制输出等7个端子。其中的两个GND地线端子,在印刷板实物上是分开走线的,因此,最好不要把脉冲输人地线与供电地线在外部直接短接,以保证输人信号不受干扰。