-
2021-12-18 16:34:09
任务描述
本关任务:利用两个在第3关设计的十进制计数器,用级联的方法构建一个24进制计数器,要求具有同步置数、异步清零功能。
相关知识
设计提示:状态9是边界状态,而状态4是一个中间状态,这里先用两个十进制计数器通过“骨肉相连”构建100进制计数器,然后将它们的状态联合反馈以及联合产生进位输出,反馈原理与前面关卡一致。
引脚说明
信号 I/O 位宽 说明 D1,D0 输入 4 位 并行数据加载端 Reset 输入 1 位 异步清零端:Reset=1时,Q=0 Clock 输入 1 位 时钟脉冲,上升沿有效 Load 输入 1 位 同步置数端:Reset=0、Load=1、Clock↑时,Q=D Enable 输入 1 位 使能端:Reset=0时,Enable=1递增计数、0保持 Q1,Q0 输出 4 位 状态输出端:分别表示十位和个位 Co 输出 1 位 进位输出端:状态Q1Q0=23时,Co=1 更多相关内容 -
Verilog自顶向下设计24进制计数器(FPGA)
2018-04-25 23:51:40使用Verilog自顶向下设计24进制计数器(例子为1Hz,可修改频率),并用数码管动态显示,已在Basys2开发板验证通过。 -
二十四进制计数器.zip
2020-07-03 23:07:34这是我们数电实验题目: 使用74ls160和74ls161设计24进制计数器即: 用一片 74LS160 同步十进制计数器和一片 74LS161 同步二进制计数器,连接成二十四 进制的计时电路。输入信号为数字脉冲信号。 -
用74LS161置数法制24进制计数器-Multisim仿真
2021-12-24 15:08:08用74LS161置数法制24进制计数器-Multisim仿真 -
24进制计数器
2014-09-13 16:06:49这是基于VHDL语言设计的24进制计数器,通过对输入脉冲实现计数。 -
24进制计数器数码管显示用VHDl编写.zip
2019-06-20 17:40:3624进制计数器数码管显示用VHDl编写 -
74ls160用整体置数法接成23进制计数器实验电路multisim源文件
2020-11-26 22:05:4174ls160用整体置数法接成23进制计数器实验电路multisim源文件,multisim10及以上版本可以正常打开仿真,是教材上的电路,可以直接仿真,方便大家学习。 -
基于集成计数器的N进制计数器设计与仿真
2021-01-31 10:17:56介绍以集成计数器74LS161和74LS160为基础,用归零法设计N进制计数器的原理与步骤。用此方法设计了3种36进制计数器,并用Multisim10软件进行仿真。计算机仿真结果表明设计的计数器实现了36进制计数的功能。基于集成... -
verilog设置24进制计数器_任意进制计数器 || 反馈复位法 反馈置数法 || 超级重点 || 数电...
2020-10-21 15:14:32任意进制计数器 || 反馈复位法 反馈置数法 || 超级重点 || 数电前面介绍了4位二进制计数器和十进制计数器,但它们的计数长度、计数方式是固定的。例如:十进制计数器74160,其计数的模为10,计数方式为加1计数,从...任意进制计数器 || 反馈复位法 反馈置数法 || 超级重点 || 数电
前面介绍了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进制计数器。
根据前面的设计思路,我们只需要附加1个与非门,与非门的输入为计数器状态Q2和Q1,与非门的输出连到计数器的异步清零端,如下图(a)所示。但是清零时Q3Q2Q1Q0不一定会同时变为0000,可能会产生中间状态,使得清零不可靠,所以可以使用一个RS锁存器来改进清零电路。如下下图所示。
1.2 同步清零 反馈复位 74163
这里的反馈状态是0101(5)而不是之前的0110(6)。注意体会同步清零和异步清零的区别。
对于上图,设计数器的初始状态为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这个状态。
如下图,再看一个例子,很好理解了吧。
再看一个。
下面解答使用的方法是两次置数。
3采用多片集成计数器设计任意进制计数器
步骤:
- 根据待设计任意进制计数器的模,确定集成计数器所需要的数量,并进行级联。
- 用前面学习的反馈复位法或者反馈置数法完成任意进制计数器设计。
下面看一个例子,试用74163构成模24同步计数器。
下面再看一个例子,使用74160构成模24同步计数器。
丢题目,
视频:MOOC-数字逻辑电路-第9单元 时序逻辑功能-任意进制计数器
-
可编程硬件描述语言VHDL Quartus 八进制计数器源代码.pdf
2021-08-20 21:17:46VHDL Quartus 八进制计数器源代码 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY COUNTER_8 IS PORT ( CLK : IN STD_LOGIC; RS : IN STD_... -
30进制计数器.zip
2020-07-03 23:10:33这是我们这次的数电实验题目: 用一片 74LS160 同步十进制计数器和一片 74LS161 同步二进制计数器,连接成三十进 制的计时电路。输入信号为数字脉冲信号。 -
用74LS163做24进制计数器
2021-11-18 23:36:37如何用74LS163做24进制计数器 有两个163芯片和一个00芯片 -
可编程硬件描述语言VHDL Quartus 六十进制计数器设计报告.pdf
2021-08-20 21:19:19六十进制计数器设计报告 目录 六十进制计数器设计报告 1 一、 题目剖析 2 二、 设计思路 2 三、 设计过程 2 1 、 真值表 2 2 、 源代码分析 2 3 、 仿真分析 5 功能仿真 5 4 、 注意事项 6 四、 总结 6 -
二进制计数器_verilog_
2021-10-03 04:30:29一个简单的二进制计数器,但将其拆分为数据通路和状态机,便于理解学习 -
用74ls161做的24进制计数器
2011-12-15 21:37:37用74ls161做的24进制计数器,可以看看,免费的,用七段数码管做的 -
可编程硬件描述语言VHDL Quartus 带允许端的十二进制计数器设计报告.pdf
2021-08-20 21:20:32带允许端的十二进制计数器设计报告 目录 带允许端的十二进制计数器设计报告 1 一、 题目剖析 2 二、 设计思路 2 三、 设计过程 2 1 、 真值表 2 2 、 源代码分析 4 四、 仿真分析 6 1 、 波形分析 6 2 、 注意事项 6... -
使用 T 触发器的二进制计数器:二进制计数器-matlab开发
2021-06-01 02:07:38它是一个使用 T 触发器的二进制计数器。 添加掩码以使电路清晰。 T 触发器是使用 Xor 和 D 触发器制作的,因为 T 触发器在 Simulink 中不可用。 -
同步24进制计数器FPGA设计Verilog逻辑源码Quartus工程文件.zip
2021-08-23 11:19:14同步24进制计数器FPGA设计Verilog逻辑源码Quartus工程文件, Quartus软件版本11.0, FPGA型号为CYCLONE4E系列中的EP4CE6E22C8,可以做为你的学习设计参考。 module cnt_24(ten,one,co,clk,clr); input clk; //... -
【Verilog HDL】24进制计数器
2020-12-20 18:58:28文章目录24进制计数器设计要求【 1. 源代码 】顶层文件1. 分频器模块2. 控制模块3. 个位计数器模块4. 十位计数器模块5. 数码管模块【 2. 仿真图 】 24进制计数器设计要求 将4HZ信号分频得到的1HZ时钟信号作为计数...24进制计数器设计要求
- 将4HZ信号分频得到的1HZ时钟信号作为计数脉冲。
- 具有加/减计数、开始/暂停计数、清零功能。
- 计数值通过两位数码管显示。
- 计数到最大值23、最小值0 时点亮LED,其他情况熄灭。
【 1. 源代码 】
顶层文件
1. 分频器模块
//N=4fen pin module FDiv(clk,clkout,en); input wire clk,en; output reg clkout; reg [3:0] q1; always @ (posedge clk) begin if (en==1) begin q1=q1+1; if(q1>=2) // N/2 begin q1=0; clkout=~clkout; end end else clkout=1; end endmodule
2. 控制模块
module Control(shi,ge,L1,L2); input wire [3:0] shi,ge; output reg L1,L2; always@(shi,ge) begin if(shi==4'b0010 && ge==4'b0011) //max L1=1; else L1=0; if(shi==4'b00 && ge==4'b00) L2=1; else L2=0; end endmodule
3. 个位计数器模块
module Counter_ge(clk,en,clr,ctrl,out,co,shiwei); input clk,clr,ctrl,en; input [3:0] shiwei; output reg co; output reg [3:0] out; always@(posedge clk,negedge clr) begin if(!clr) begin co<=0;out<=0; end else if(en) begin if(ctrl) //++ begin if(out==3&&shiwei==2) begin out<=0;co<=1;end //加计数,到23 else if(out==9) begin out<=0;co<=1;end //09,19 else begin out<=out+4'b1;co<=0;end end else //-- begin if(out==0&&shiwei==0) begin out<=3;co<=1;end //减计数,减到0 else if(out==0)begin out<=9;co<=1;end //20 10 else begin out=out-4'b1;co<=0;end end end end endmodule
4. 十位计数器模块
module Counter_shi(clk,en,clr,ctrl,out,co,gewei); input clk,clr,ctrl,en; input [3:0] gewei; output reg co; output reg [3:0] out; always@(posedge clk,negedge clr) begin if(!clr) begin co<=0;out<=0; end else if(en) begin if(ctrl) //++ begin if(out==2&&gewei==0) begin out<=0;co<=1; end//十位out: 加计数,到23 else begin out<=out+4'b1;co<=0;end end else //-- begin if(out==0&&gewei==3)begin out<=2;co<=1;end //十位out:减计数,减到0 else begin out=out-4'b1;co<=0;end end end end endmodule
5. 数码管模块
//共阴数码管 module Shuma(in,out); input wire [3:0] in; output reg [7:0] out; always@(*) begin if(in==4'b0000) //0 0x3f out<=8'b011_1111; else if(in==4'b0001) //1 0x06 out<=8'b000_0110; else if(in==4'b0010) //2 0x5b out<=8'b101_1011; else if(in==4'b0011) //3 0x4f out<=8'b100_1111; else if(in==4'b0100) //4 0x66 out<=8'b110_0110; else if(in==4'b0101) //5 0x6d out<=8'b110_1101; else if(in==4'b0110) //6 0x7d out<=8'b111_1101; else if(in==4'b0111) //7 0x07 out<=8'b000_0111; else if(in==4'b1000) //8 0x7f out<=8'b111_1111; else if(in==4'b1001) //9 0x6f out<=8'b110_1111; else if(in==4'b1010) //A 0x77 out<=8'b111_0111; else if(in==4'b1011) //B 0x7c out<=8'b111_1100; else if(in==4'b1100) //C 0x39 out<=8'b011_1001; else if(in==4'b1101) //D 0x5e out<=8'b101_1110; else if(in==4'b1110) //E 0x79 out<=8'b111_1001; else if(in==4'b1111) //F 0x71 out<=8'b111_0001; else out<=8'b00; end endmodule // code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
【 2. 仿真图 】
温故知新
24 进制计数器也可以通过一个 24的计数器 ( 从0计数到23 ),然后对计数值取余作为个位数,取商作为十位数而实现。·
-
6进制计数器计数器 VHDL
2018-03-07 18:35:19基于fpga,使用vhdl语言编写的6进制计数器。输入时钟为1hz -
60进制计数器multisim源文件
2020-11-19 22:35:4860进制计数器multisim源文件,采用74LS161方案,到60后自动清零,两个数码管显示,multisim10及以上版本的软件可以打开仿真 -
7493二-十进制计数器.pdf
2021-09-07 20:59:257493二-十进制计数器 -
60进制计数器Multisim仿真实例,Multisim10以上版本可打开运行.zip
2021-06-21 17:42:1860进制计数器Multisim仿真实例,Multisim10以上版本可打开运行 -
24进制计数器的设计
2021-01-26 16:52:17本关任务:利用两个在第3关设计的十进制计数器,设计一个24进制计数器,要求具有同步置数、异步清零功能。 相关知识 计数是一种最简单的基本运算。计数器就是实现这种运算的逻辑电路,计数器在数字系统中主要是对...任务描述
本关任务:利用两个在第3关设计的十进制计数器,设计一个24进制计数器,要求具有同步置数、异步清零功能。
相关知识
计数是一种最简单的基本运算。计数器就是实现这种运算的逻辑电路,计数器在数字系统中主要是对脉冲的个数进行计数,以实现测量、计数和控制的功能,同时兼有分频功能。计数器在数字系统中应用广泛,如在电子计算机的控制器中对指令地址进行计数,以便顺序取出下一条指令,等等。
引脚说明
信号 输入/输出 位宽 说明 Clock 输入 1 位 时钟脉冲,上升沿有效 Reset 输入 1 位 异步清零端:Reset=1时,Q=0 Enable 输入 1 位 使能端:Reset=0时,Enable=1递增计数、0保持 Load 输入 1 位 同步置数端:Reset=0、Load=1、Clock上升沿时,Q=D D1,D0 输入 4 位 并行数据加载端 Q1,Q0 输出 4 位 状态输出端:分别表示十位和个位 Co 输出 1 位 进位输出端:状态Q1Q0=23时,Co=1 -
JK触发器构成的十二进制计数器.zip
2021-07-05 19:23:13数电课程设计、仿真文件、原理图、mltisim设计 -
74ls160构成12进制计数器.ms14
2020-06-24 16:56:15首先,因为74ls160是十位计数器,所以要用两个741s160实现12进制计数器;个位计数器开始运行计数功能0000-1001,然后用RCO变成1,启动十位计数器计数功能,十位计数器变成1,个位计数器从0重新开始,RCO变为0,十位... -
verilog设置24进制计数器_通用计数器的功能简介
2020-10-21 15:14:37也可称之为智能计数器,采用十进制数字显示被测信号频率表,被广泛应用于航天、航空、电子技术、测控等技术领域。通用计数器是一种具有多种测量功能,多种用途的电子计数器,它可以测量频率,周期,时... -
24进制计数器(基于VHDL语言)
2010-06-04 16:56:1524进制计数器(基于VHDL语言)用VHDL语言书写 -
74ls160按并行进位接成54进制计数器实验电路multisim源文件
2020-11-26 22:04:1274ls160按并行进位接成54进制计数器实验电路multisim源文件,multisim10及以上版本可以正常打开仿真,是教材上的电路,可以直接仿真,方便大家学习。