如何用74LS161实现12进制计数器?

如题所述

74LS161是四位二进制同步加法计数器,使用该计数器实现十二进制计数器主要有置数法和清零法两种方法。具体过程如下:

首先,需要观察74LS161的引脚图和功能真值表如下图所示:

观察功能真值表时需要注意74LS161时同步预置、异步清零计数器。故两种设计方法状态设计的状态变化不同,特别是预置数或清零时。

1、置数法设计十二进制计数器

置数法即通过74LS161同步预置数功能预置计数初值,计数至溢出时通过进位输出信号,再重新加载预置数实现循环十二进制计数功能。

根据功能真值表和置数法计数器计数规则,可以推出置数输入应为0100,即0100~1111共12个状态,由此推出其电路原理图如下:

电路波形仿真结果如下(从上至下依次是CLK和D(4)~D(8)共5个波形):

根据电路波形可以推出该电路的状态转移图如下(Q(4)~Q(1)依次对应D(8)~D(4)):

可以发现通过预置数0100后每接收一个脉冲,计数输出加1,计数结果为1111时进位输出为高电平,经反相器输入同步预置数端,下一个时钟到来时计数器加载预置数,重新计数,进位输出也恢复低电平。

2、清零法设计十二进制计数器

清零法即通过74LS161异步清零输出功能使74LS161从零开始计数至设定值时复位,从而实现循环十二进制异步计数器的功能。

根据功能真值表和清零法计数器计数规则,可以推出设定数值应为1100,即0000~1100共13个状态,但由于异步清零1100状态持续时间极短可以忽略。由此推出其电路原理图如下:

电路波形仿真结果如下:

状态转移图如下:

观察波形图和状态转移图,计数器从0000开始计数输入脉冲,当计数至1100的一瞬间,计数输出清0即状态0000;下一个时钟到来时,计数输出变为0001,构成异步清零十二进制计数器。

比较两种方法,可以发现异步清零法1100状态出现的时间极短,其进位输出为脉冲,在实际应用电路中容易受外界干扰,故常使用锁存器将其输出保持一个时钟周期。同步置数法的状态稳定,进位输出为矩形波,故实际设计较多使用同步置数法。

温馨提示:答案为网友推荐,仅供参考
相似回答