最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

计数器工作原理

IT圈 admin 40浏览 0评论

2024年3月28日发(作者:欧晓莉)

计数器工作原理及应用

除了计数功能外,计数器产品还有一些附加功能,如异步复位、预置数(注意,有同步预置数和异

步预置数两种。前者受时钟脉冲控制,后者不受时钟脉冲控制)、保持(注意,有保持进位和不保持进

位两种)。虽然计数器产品一般只有二进制和十进制两种,有了这些附加功能,我们就可以方便地用我

们可以得到的计数器来构成任意进制的计数器。下面我们举两个例子。在这两个例子中,我们分别用同

步十进制加法计数器74LS160构成一个六进制计数器和一个一百进制计数器。

因为六进制计数器的有效状态有六个,而十进制计数器的有效状态有十个,所以用十进制计数器

构成六进制计数器时,我们只需保留十进制计数器的六个状态即可。74LS160的十个有效状态是BCD编

码的,即0000、0001、0010、0011、0100、0101、0110、0111、1000、1001[图5-1]。

图5-1

我们保留哪六个状态呢?理论上,我们保留哪六个状态都行。然而,为了使电路最简单,保留哪

六个状态还是有一点讲究的。一般情况下,我们总是保留0000和1001两个状态。因为74LS160从100

1变化到0000时,将在进位输出端产生一个进位脉冲,所以我们保留了0000和1001这两个状态后,我

们就可以利用74LS160的进位输出端作为六进制计数器的进位输出端了。于是,六进制计数器的状态循

环可以是0000、0001、0010、0011、0100和1001,也可以是0000、0101、0110、0111、1000和1001。

我们不妨采用0000、0001、0010、0011、0100和1001这六个状态。

如何让74LS160从0100状态跳到1001状态呢?我们用一个混合逻辑与非门构成一个译码器[图5.

3.37b],当74LS160的状态为0100时,与非门输出低电平,这个低电平使74LS160工作在预置数状态,

当下一个时钟脉冲到来时,由于等于1001,74LS160就会预置成1001,从而我们实现了状态跳跃。

图5.3.37b 用置数法将74160接成六进制计数器(置入1001)

比这个方案稍微繁琐一点的是利用74LS160的异步复位端。下面这个电路中[图5.3.34],也有

一个由混合逻辑与非门构成的译码器。

图5.3.34 用置零法将74LS160接成六进制计数器

不过,这个译码器当输入为0110时才输出低电平,使74LS160异步复位,进入0000这个状态。

从0000状态开始,随着时钟脉冲的不断到来,74LS160依次变为0001、0010、0011、0100、0101、和0

110状态[图5-2]。可能有人说:“不对!这个电路总共有七个状态,应该是七进制计数器呀!”我们

说,这个电路虽然要经历七个状态,但是只需六个脉冲就完成一个计数循环,因此它仍是六进制计数器。

2024年3月28日发(作者:欧晓莉)

计数器工作原理及应用

除了计数功能外,计数器产品还有一些附加功能,如异步复位、预置数(注意,有同步预置数和异

步预置数两种。前者受时钟脉冲控制,后者不受时钟脉冲控制)、保持(注意,有保持进位和不保持进

位两种)。虽然计数器产品一般只有二进制和十进制两种,有了这些附加功能,我们就可以方便地用我

们可以得到的计数器来构成任意进制的计数器。下面我们举两个例子。在这两个例子中,我们分别用同

步十进制加法计数器74LS160构成一个六进制计数器和一个一百进制计数器。

因为六进制计数器的有效状态有六个,而十进制计数器的有效状态有十个,所以用十进制计数器

构成六进制计数器时,我们只需保留十进制计数器的六个状态即可。74LS160的十个有效状态是BCD编

码的,即0000、0001、0010、0011、0100、0101、0110、0111、1000、1001[图5-1]。

图5-1

我们保留哪六个状态呢?理论上,我们保留哪六个状态都行。然而,为了使电路最简单,保留哪

六个状态还是有一点讲究的。一般情况下,我们总是保留0000和1001两个状态。因为74LS160从100

1变化到0000时,将在进位输出端产生一个进位脉冲,所以我们保留了0000和1001这两个状态后,我

们就可以利用74LS160的进位输出端作为六进制计数器的进位输出端了。于是,六进制计数器的状态循

环可以是0000、0001、0010、0011、0100和1001,也可以是0000、0101、0110、0111、1000和1001。

我们不妨采用0000、0001、0010、0011、0100和1001这六个状态。

如何让74LS160从0100状态跳到1001状态呢?我们用一个混合逻辑与非门构成一个译码器[图5.

3.37b],当74LS160的状态为0100时,与非门输出低电平,这个低电平使74LS160工作在预置数状态,

当下一个时钟脉冲到来时,由于等于1001,74LS160就会预置成1001,从而我们实现了状态跳跃。

图5.3.37b 用置数法将74160接成六进制计数器(置入1001)

比这个方案稍微繁琐一点的是利用74LS160的异步复位端。下面这个电路中[图5.3.34],也有

一个由混合逻辑与非门构成的译码器。

图5.3.34 用置零法将74LS160接成六进制计数器

不过,这个译码器当输入为0110时才输出低电平,使74LS160异步复位,进入0000这个状态。

从0000状态开始,随着时钟脉冲的不断到来,74LS160依次变为0001、0010、0011、0100、0101、和0

110状态[图5-2]。可能有人说:“不对!这个电路总共有七个状态,应该是七进制计数器呀!”我们

说,这个电路虽然要经历七个状态,但是只需六个脉冲就完成一个计数循环,因此它仍是六进制计数器。

发布评论

评论列表 (0)

  1. 暂无评论