verilog设置24进制计数器_任意进制计数器 || 反馈复位法 反馈置数法 || 超级重点 || 数电...

zz/2024/3/2 10:37:57

任意进制计数器 || 反馈复位法 反馈置数法 || 超级重点 || 数电

前面介绍了4位二进制计数器和十进制计数器,但它们的计数长度、计数方式是固定的。

例如:

  • 十进制计数器74160,其计数的模为10,计数方式为加1计数,从0000开始,每个时钟脉冲加1,直到1001,即十进制数9,然后再回到0000。
  • 4位二进制计数器74161或者74163,其计数的模为16,计数方式为加1计数,从状态0000开始,每个时钟脉冲加1,直到1111,即十进制数15,然后再回到0000。

但在数字电路应用中,需要用到计数长度任意,计数方式非顺序递增或递减的计数器,我们把这种计数器叫做任意进制计数器。

本文将介绍如何利用已有的集成计数器,通过外电路的不同连接,设计任意进制计数器。

任意进制计数器的设计方法有两类:

  • 反馈复位法(清零法)
  • 反馈置数法

1反馈复位法

1.1异步清零 反馈复位 74160

以例子来介绍,

用带有异步清零端的十进制计数器74160构成模6加法计数器,设计思路是:

假设计数器74160从初始状态Q3Q2Q1Q0=0000开始计数,

接收到第1个时钟脉冲后状态变为0001,

接收到第2个时钟脉冲后状态变为0010,

接收到第3个时钟脉冲后状态变为0011,

接收到第4个时钟脉冲后状态变为0100,

接收到第5个时钟脉冲后状态变为0101,

接收到第6个时钟脉冲后状态变为0110,如果此时利用状态0110,通过组合电路产生异步清零信号,并反馈到74160的清零端,于是计数器尽在状态0110短暂停留后就立刻复位到0000状态,这样,就跳跃了计数器74160的4个状态,而获得了6进制计数器。

3758a1fe-2913-eb11-8da9-e4434bdf6706.png

根据前面的设计思路,我们只需要附加1个与非门,与非门的输入为计数器状态Q2和Q1,与非门的输出连到计数器的异步清零端,如下图(a)所示。但是清零时Q3Q2Q1Q0不一定会同时变为0000,可能会产生中间状态,使得清零不可靠,所以可以使用一个RS锁存器来改进清零电路。如下下图所示。

3b58a1fe-2913-eb11-8da9-e4434bdf6706.png

3e58a1fe-2913-eb11-8da9-e4434bdf6706.png

1.2 同步清零 反馈复位 74163

这里的反馈状态是0101(5)而不是之前的0110(6)。注意体会同步清零和异步清零的区别。

4658a1fe-2913-eb11-8da9-e4434bdf6706.png

对于上图,设计数器的初始状态为Q3Q2Q1Q0=0000,

第1个时钟脉冲到来后,状态变为0001,(CLR非)为高电平,

第2个时钟脉冲到来后,状态变为0010,(CLR非)为高电平,

第3个时钟脉冲到来后,状态变为0011,(CLR非)为高电平,

第4个时钟脉冲到来后,状态变为0100,(CLR非)为高电平,

第5个时钟脉冲到来后,状态变为0101,导致(CLR非)变为低电平,但清零并不马上发生,

因为74163是同步清零,要等到第6个时钟脉冲到来后,清零才生效,使计数器状态变为0000,然后(CLR非)回到高电平。

我们可以发现这种采用同步清零的反馈法,不会出现短暂的过渡状态。

2反馈置数法

反馈置数法是利用计数器的同步置数控制端的数据输入端,把计数器状态置到某个数值来实现任意进制计数器。

置入的数值可以是0000到1111之间的任意数值。

当置入0000时,和复位或者清零的作用是相同的,因此这种方法比第一种反馈复位法灵活性要大。

如下图,现在我们还是用一个例子来介绍这种方法。

用带有同步置数控制端的74163构建8421BCD码计数器。

设计思路是:

假定计数器初始状态为Q3Q2Q1Q0=0000,

一开始让计数器正常计数,计到1001后,通过置数使计数器在下一个状态进入0000,跳过1010~1111这个状态。

4858a1fe-2913-eb11-8da9-e4434bdf6706.png

如下图,再看一个例子,很好理解了吧。

4d58a1fe-2913-eb11-8da9-e4434bdf6706.png

再看一个。

5358a1fe-2913-eb11-8da9-e4434bdf6706.png

下面解答使用的方法是两次置数。

5858a1fe-2913-eb11-8da9-e4434bdf6706.png

3采用多片集成计数器设计任意进制计数器

步骤:

  1. 根据待设计任意进制计数器的模,确定集成计数器所需要的数量,并进行级联。
  2. 用前面学习的反馈复位法或者反馈置数法完成任意进制计数器设计。

下面看一个例子,试用74163构成模24同步计数器。

5d58a1fe-2913-eb11-8da9-e4434bdf6706.png

6158a1fe-2913-eb11-8da9-e4434bdf6706.png

下面再看一个例子,使用74160构成模24同步计数器。

6558a1fe-2913-eb11-8da9-e4434bdf6706.png

6a58a1fe-2913-eb11-8da9-e4434bdf6706.png

丢题目,

6d58a1fe-2913-eb11-8da9-e4434bdf6706.png

视频:MOOC-数字逻辑电路-第9单元 时序逻辑功能-任意进制计数器


http://www.ngui.cc/zz/1568767.html

相关文章

【Multisim仿真】74LS90六十进制计数器

【Multisim仿真】74LS90六十进制计数器Multisim仿真演示 74ls90引脚图及功能 74LS90功能:二-五-十进制异步计数器(2 和5) A. 将输出QA与输入B相接,构成8421BCD码计数器; B&#x…

Fortran解一元四次方程程序

一元四次方程, 沈天珩求根公式, 具体公式 详见百科链接; 程序由main.f90和输入文件abcde.para构成,abcde分别为 程序的结果将给出abcde取值,参数符合天珩求根公式第几定理,四个根,以及将四个根分别带回方…

简单Python小程序:求根公式求一元二次方程式实数域的根

一、算法的构思 一元二次方程的一般式:ax^2bxc 0 我们知道,一元二次方程有解(根)的充要条件是:b^2-4ac>0。如果不满足此关系式,那么方程无解。接着当方程有解的时候又出现了两种情况:1.有两…

一元四次方程c语言程序编写,一元高次方程数值解法C程序实现探讨..doc

一元高次方程数值解法C程序实现探? 一元高次方程作为方程的一部分,对我们后续的学习起着相当重要的作用求解一元高次方程的根在计算数学方面既是难点也是重点。一元三次方程和一元四次方称有一般解法,但是比较复杂,且超过了一般的知识范围5次…

javaScript一元四次、三次方程求根算法

文章目录一、一元四次方程求根算法二、一元三次方程求根算法总结一、一元四次方程求根算法 天珩公式:https://baike.baidu.com/item/%E4%B8%80%E5%85%83%E5%9B%9B%E6%AC%A1%E6%96%B9%E7%A8%8B%E6%B1%82%E6%A0%B9%E5%85%AC%E5%BC%8F/10721996?fraladdin 代码如下&…

用java求解一元四次方程_Java程序设计(十四)----一个求一元二次方程根

* 程序的版权和版本声明部分* Copyright (c) 2012, 烟台大学计算机学院学生* All rights reserved.* 作 者: 刘镇* 完成日期: 2012 年 11 月 23 日* 版 本 号: 2.014* 对任务及求解方法的描述部分* 问题描述:编写一个FontFamily类…

java 一元二次方程_java求解一元二次方程

提高题 1) 设有一元二次方程如下: 2 aX bx c0 试根据从键盘输入的 a,b,c 求解方程的根。 【提示】要考虑各种情形:一是 a 为0的情形,方程根为-c/......Java 复习题汇总 编程题 1、编程序,输入 a,b,c,求方程 package 一元二次方程 2; import java.util.Scanner; public class 一…

matlab求解一元四次函数,excel数据函数参数是四个吗|求一个简单的一元四次函数的最大值...

求四次函数的最值先求导,令导数等于0,求出x的值,判断单调性,将x代入原函数4次幂的一元函数怎么计算解析:(1) 四次方程,有通用求根公式。A 此公式复杂,实际使用较麻烦B 其推导过程中可能会涉及复…

7-88 求一元二次方程的根

本题目要求一元二次方程ax2+bx+c=0的根,结果保留2位小数。 输入格式: 输入在一行中给出3个浮点系数a、b、c,中间用空格分开。 输出格式: 根据系数情况,输出不同结果: 1)如果方程有两个不相…

【组合数学】递推方程 ( 特征方程与特征根 | 特征方程示例 | 一元二次方程根公式 )

文章目录一、特征方程与特征根二、特征方程与特征根 示例 ( 重要 )一、特征方程与特征根 常系数线性齐次递推方程标准型 : {H(n)−a1H(n−1)−a2H(n−2)−⋯−akH(n−k)0H(0)b0,H(1)b1,H(2)b2,⋯,H(k−1)bk−1\begin{cases} H(n) - a_1H(n-1) - a_2H(n-2) - \cdots - a_kH(n-k)…