VHDL设计十进制计数器

VHDL设计十进制计数器
VHDL设计十进制计数器

EDA课程设计——清零置数十进制计数器程序清单:

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity cdu10 is

port(clk,en,load,reset:in std_logic;

d:in std_logic_vector(3 downto 0);

cout:out std_logic;

q:out std_logic_vector(3 downto 0));

end cdu10;

architecture exx1 of cdu10 is

signal qq:std_logic_vector(3 downto 0);

begin

p0:process(clk,en,load,reset)

begin

if( reset='0' )then qq<="0000";

elsif (clk'event and clk='1') then

if load='0' then qq<=d;

elsif (en='1') then

if qq="1001" then qq<="0000";

else qq<=qq+'1';

end if;

end if;

end if;

end process p0;

q<=qq;

p1:process( qq )

begin

if qq="1001" then cout<='1';

else cout<='0';

end if;

end process p1;

end exx1;

仿真波形:

实验一 两位十进制计数器

实验一两位十进制计数器 一实验目的 二实验要求 三实验内容及步骤 (1)两位十进制计数器项目的建立 1 新建一个文件夹作为工程项目的记录 2 创建工程项目 运行QUARTUS2软件,建立工程,方法是选择file菜单下执行new project wizard 命令(2)基于QUARTUS2的两位十进制计数器的原理图设计 建立原理图文件 1 运行QUARTUS2软件,选择file菜单执行new。。的命令 2 选择block diagram/schematic file 流程图和原理图文件,单击ok进入原理图编辑界面,即建立一个空的原理图文件 3元件的选择和放置 在原理图编辑区单击鼠标右键或双击鼠标左键,在对应的Name输入相应的名字,即可调出。选择Repeat-insert mode 即可重复调用 4修改输入输出元件(引脚)属性双击任意一个元件,即可修改元件参数 5 电路图连线 注意网络标号的放置,用鼠标单击线条,则该线处于选中状态,再按右键,选择properties,即可填入网络标号 6 保存原理图文件 Ctrl+s 或点击file菜单中的save保存,就生成了原理图文件 7原理图 基于QUARTUS2的两位十进制计数器的编译 QUARTUS2的编译方法是选中processing菜单的start compliation 项或者单击快捷键按钮进行编译 基于QUARTUS2两位十进制计数器的功能测试 1 新建波形文件 选择菜单file中的new。。命令,选择verification/debugging中的vector waveform file方式后单击ok按键,进入QUARTUS2波形编辑器 在name栏下的空白处双击鼠标,出现insert node or bus对话框,单击node finder 按钮,选择引脚 2 设置仿真时间区域 在edit菜单中选择end time 项,在弹出的,设置整个仿真的时间,单击ok 执行edit菜单中的grid size 。。命令,设置时间的栅格,点击ok 3设置输入信号波形 选中clk时钟信号,选择时钟设置键,设置时钟周期为1us 设置clr信号 设置en信号

十进制4位加法计数器设计

洛阳理工学院 十 进 制 4 位 加 法 计 数 器 系别:电气工程与自动化系 姓名:李奇杰学号:B10041016

十进制4位加法计数器设计 设计要求: 设计一个十进制4位加法计数器设计 设计目的: 1.掌握EDA设计流程 2.熟练VHDL语法 3.理解层次化设计的内在含义和实现 设计原理 通过数电知识了解到十进制异步加法器的逻辑电路图如下 Q3 则可以通过对JK触发器以及与门的例化连接实现十进制异步加法器的设计 设计内容 JK JK触发器的VHDL文本描述实现: --JK触发器描述 library ieee; use ieee.std_logic_1164.all; entity jk_ff is

port( j,k,clk: in std_logic; q,qn:out std_logic ); end jk_ff; architecture one of jk_ff is signal q_s: std_logic; begin process(j,k,clk) begin if clk'event and clk='0' then if j='0' and k='0' then q_s <= q_s; elsif j='0' and k='1' then q_s <= '0'; elsif j='1' and k='0' then q_s <= '1'; elsif j='1' and k='1' then q_s <= not q_s; end if; end if; end process; q <= q_s; qn <= not q_s; end one; 元件门级电路: 与门VHDL文本描述实现: --与门描述library ieee; use ieee.std_logic_1164.all;

电子设计-两位自动计数器

课程作业 题目:《电子设计》 ——两位自动计数器 姓名:李XX 学院:物理机电与工程学院 系:电子科学系 专业:信电 年级: 学号: 指导教师: 年月日

两位自动计数器 一、两位自动计数器的功能工作原理 两位自动计数器两位数码管自动显示0-99,数字可清零。电路主要由NE555,4518,4511实现。上电后,电路自动计数.由0增至99,不断循环计数.数字上升速度快慢由NE555振荡频率决定.S1为计数清零按键.NE555构成时钟信号发生器,CD4518为二/十进制加法计数器,CD4511为译码驱动器,调节R17可调节NE555的振荡频率.C1为充放电电容,电容容量愈大,充电时间愈长,,则振荡频率愈低。 原理图: 二、元器件的选择 编号名称型号数量 R1、R2 电阻10KΩ 2 R3—R16 电阻1KΩ14 R17 可变电阻0—100KΩ 1 C1 极性电容10UF 1 C2 电容10^3 1 C3 电容10^4 1 U1 芯片NE555 1 U2A、U2B 芯片4518 2 U3、U4 芯片4511 2 ——八段数码管—— 2 S1 计数清零按键—— 1 三、芯片的功能 (1)NE555构成的是时钟信号发生器

(2)CD4518为二/十进制加数器

CD4518/CC4518是二、十进制(8421编码)同步加计数器,内含两个单元的加计数器,其功能表如真值表所示。每单个单元有两个时钟输入端CLK和EN,可用时钟脉冲的上升沿或下降沿触发。由表可知,若用ENABLE信号下降沿触发,触发信号由EN端输入,CLK 端置“0”;若用CL℃K信号上升沿触发,触发信号由CL℃K端输入,ENABLE端置“1”。RESET端是清零端,RESET端置“1”时,计数器各端输出端Q1~Q4均为“0”,只有RESET 端置“0”时,CD4518才开始计数。 CD4518采用并行进位方式,只要输入一个时钟脉冲,计数单元Q1翻转一次;当Q1为1,Q4为0时,每输入一个时钟脉冲,计数单元Q2翻转一次;当Q1=Q2=1时,每输入一个时钟脉冲Q3翻转一次;当Q1=Q2=Q3=1或Q1=Q4=1时,每输入一个时钟脉冲Q4翻转一次。这样从初始状态(“0”态)开始计数,每输入10个时钟脉冲,计数单元便自动恢复到“0”态。若将第一个加计数器的输出端Q4A作为第二个加计数器的输入端ENB的时钟脉冲信号,便可组成两位8421编码计数器,依次下去可以进行多位串行计数。 CD4518功能: CD4518是一个双BCD同步加计数器,由两个相同的同步4级计数器组成。 CD4518引脚功能(管脚功能)如下: 1CP、2CP:时钟输入端。1CR、2CR:清除端。 1EN、2EN:计数允许控制端。1Q0~1Q3:计数器输出端。 2Q0~2Q3:计数器输出端。Vdd:正电源。Vss:地。 CD4518是一个同步加计数器,在一个封装中含有两个可互换二/十进制计数器,其功能引脚分别为1~7和9~{15}.该CD4518计数器是单路系列脉冲输入(1脚或2脚;9脚或10脚),4路BCD码信号输出(3脚~6脚;{11}脚~{14}脚)。 CD4518控制功能:CD4518有两个时钟输入端CP和EN,若用时钟上升沿触发,信号由CP输入,此时EN端为高电平(1),若用时钟下降沿触发,信号由EN输入,此时CP端为低电平(0),同时复位端Cr也保持低电平(0),只有满足了这些条件时,电路才会处于计数状态.否则没办法工作。 CD4518采用并行进位方式,只要输入一个时钟脉冲,计数单元Q1翻转一次;当Q1为1,Q4为0时,每输入一个时钟脉冲,计数单元Q2翻转一次;当Q1=Q2=1时,每输入一个时钟脉冲Q3翻转一次;当Q1=Q2=Q3=1或Q1=Q4=1时,每输入一个时钟脉冲Q4翻转一次。这样从初始状态(“0”态)开始计数,每输入10个时钟脉冲,计数单元便自动恢复到“0”态。若将第一个加计数器的输出端Q4A作为第二个加计数器的输入端ENB的时钟脉冲信号,便可组成两位8421编码计数器,依次下去可以进行多位串行计数。 清零原理:就是将CD4518的清零端连在一起,接一个开关,按下开关就会清零,但是如果直接连在一起前级的低电平会对后级的清零有影响,因此需要接一个二极管,因为二极管具有单向导电性,因此不会对后级有影响。 (3)CD4511为译码驱动器

24进制计数器设计报告.doc

24进制计数器设计报告 单时钟同步24进制计数器课程设计报告1.设计任务1.1设计目的1.了解计数器的组成及工作原理。 2.进一步掌握计数器的设计方法和计数器相互级联的方法。 3.进一步掌握各芯片的逻辑功能及使用方法。 4.进一步掌握数字系统的制作和布线方法。 5.熟悉集成电路的引脚安排。 1.2设计指标1.以24为一个周期,且具有自动清零功能。 2.能显示当前计数状态。 1.3设计要求1.画出总体设计框图,以说明计数器由哪些相对独立的功能模块组成,标出各个模块之间互相联系,时钟信号传输路径、方向。 并以文字对原理作辅助说明。 2.设计各个功能模块的电路图,加上原理说明。 3.选择合适的元器件,利用multisim仿真软件验证、调试各个功能模块的电路,在接线验证时设计、选择合适的输入信号和输出方式,在确定电路充分正确性同时,输入信号和输出方式要便于电路的测试和故障排除。 4.在验证各个功能模块基础上,对整个电路的元器件和布线进行合理布局。 5.打印PCB板,腐蚀,钻孔,插元器件,焊接再就对整个计数器电路进行调试。

2.设计思路与总体框图.计数器由计数器、译码器、显示器三部分电路组成,再由555定时器组成的多谐振荡器来产生方波,充当计数脉冲来作为计数器的时钟信号,计数结果通过译码器显示。 图1所示为计数器的一般结构框图。 十位数码显示管译码驱动异步清零计数器计数脉冲(由555电路产生)个位位数码示像管译码驱动异步清零计数器强制清零▲图1计数器结构框图3.系统硬件电路的设计3.1555多谐荡电路555多谐振荡电路由NE555P芯片、电阻和电容组成。 由NE555P的3脚输出方波。 ▲图2555电路3.2计数器电路集成计数芯片一般都设置有清零输入端和置数输入端,而且无论是清零还是置数都有同步和异步之分。 有的集成计数器采用同步方式,即当CP触发沿到来时才能完成清零或置数任务;有的集成计数器则采用异步方式,即通过触发器的异步输入端来直接实现清零或置数,与CP信号无关。 本设计采用异步清零。 由2片十进制同步加法计数器74LS160(图2-1-1)、一片与非门74LS00(图2-1-2)和相应的电阻、开关。 由外加送来的计数脉冲(由555电路产生)送入两个计数器的CLK端,电路在计数脉冲的作用下按二进制自然序依次递增1,当个位计数到9时,输出进位信号给十位充当使能信号进位。

10进制加法计数器课程设计

西北师范大学知行学院 数字电子实践论文 课题:74ls161组成的十进制加法计数器 (置数法) 班级:14电本 学号:14040101114 姓名:于能海

指导老师:崔用明 目录 第1章前言 (1) 1.1 摘要 (1) 1.2 设计目的 (2) 1.3 设计内容及要求 (2) 第2章设计方案 (3) ....................................................................................................................... 错误!未定义书签。 2.1主要芯片功能介绍 (3) 2.2.1 四位二进制计数器74161介绍 (3) ............................................................................................................... 错误!未定义书签。 2.2 工作原理 (4) 第3章硬件设计 (4) 3.1 单元电路设计 (4) 3.2 总硬件电路图 (5) 第4章仿真与试验 (6) 4.1 仿真结果 (6) 4.2 调试中遇到的问题 (7) 第5章结论和体会 (8)

第1章前言 1.1 摘要在数字电路技术的课程中,计数器的功能是记忆脉冲的个数,它是数字系统中应用最广泛的基本时序逻辑构件。计数器在微型计算机系统中的主要作用就是为CPU和I/O设备提供实时时钟,以实现定时中断、定时检测、定时扫描、定时显示等定时控制,或者对外部事件进行计数。一般的微机系统和微机应用系统中均配置了定时器/计数器电路,它既可当作计数器作用,又可当作定时器使用,其基本的工作原理就是"减1"计数。计数器:CLK输入脉冲是一个非周期事件计数脉冲,当计算单元为零时,OUT输出一个脉冲信号,以示计数完毕。 本十进制加法计数器是基于74161芯片而设计的, 该十进制加法计数器设计理念是用于工厂流水线上产品计数,自动计数,方便简单。 关键词:74ls161计数器 Introduction In the course of digital circuit technology, the counter memory function is the number of pulses, it is a digital system, the most widely used basic sequential logic components. The main role of the counter in the micro-computer system is to provide real-time clock for the CPU and I / O devices to achieve the timer interrupt, timing detection, scheduled scanning, the timing display timing control, or to count external events. General computer systems and computer application systems are equipped with a timer / counter circuit, it can as a counter action, but also as a timer, the basic working principle is "minus 1" count. Counter: CLK input pulse is a non-periodic event count pulses to zero when calculating unit, OUT outputs a pulse signal, to show the count is completed. The decimal addition counter is designed based on the 74161 chip, the low potential sensor senses when to rely on external signals, sensors in an object within the sensing range, otherwise it is a high potential. Within the sensing range of the sensor when an object is moved out of date, sensor potential from high to low and then high, appears on the edge. Counter is automatically incremented and displayed on a digital control. The decimal addition counters have two seven-segment LED. It can count from 0 to 99 objects, and easy to expand. The design concept of decimal addition counter is used to count on a factory assembly line products, automatic counting, convenient and simple. Keywords:74ls161counter

Verilog10进制计数器电路

练习 设计一个10进制计数器电路,把10进制计数器的计数结果送到一位数码管显示,要求计数器的计数频率为1Hz。系统时钟为25MHz,要求系统同步复位,高电平有效。完成电路设计框图,各模块仿真以及系统功能仿真和下载编程。 分频器: module fenpin25(clk,rst,clk_1hz); input clk; input rst; output clk_1hz; reg clk_1hz; reg [23:0] cnt; always@(posedge clk or posedge rst) begin if(rst==1'b1) cnt<=24'd0; else if(cnt==13107119)begin cnt<=24'd0; clk_1hz<=~clk_1hz; end else cnt<=cnt+1; end endmodule 十进制计数器: module cnt10(rst,clk,cnt); input rst,clk; output [3:0] c nt; reg [3:0] c nt; always@(posedge clk) begin if(rst==1'b0) cnt<=4'b000;

else if(cnt==4'd9) cnt<=4'b000; else cnt<=cnt+1; end endmodule 十进制计数器仿真波形图: LED译码器: module qiduan(cnt,led,scan); input [3:0] c nt; output [6:0] l ed; output [3:0] s can; reg [6:0] l ed; wire [3:0] s can; assign scan=4'b0001; always@(cnt) begin case(cnt) 4'b0001:led=7'b0000110; 4'b0010:led=7'b1011011; 4'b0011:led=7'b1001111; 4'b0100:led=7'b1100110; 4'b0101:led=7'b1101101; 4'b0110:led=7'b1111100; 4'b0111:led=7'b0000111; 4'b1000:led=7'b1111111; 4'b1001:led=7'b1101111; 4'b1010:led=7'b1110111; default:led=7'b0111111; endcase end endmodule

二位十进制计数器

EDA技术及应用讲座作业 题目:基于EDA的二位十进制计数器 学校:中南大学 学科专业:生物医学工程 学生: 学号: 0405080704 任课教师: 完成日期: 2011 年 5 月 19日

基于EDA的二位十进制计数器 一实验目的 1了解QuartusII软件及基本操作; 2熟悉图形编辑器 Graphic Editor File 的设计方法; 3熟悉VHDL 语言设计方法; 4掌握简单计数器的图形设计方法和VHDL语言设计方法。 二任务要求 用两种EDA设计方法设计一个二位十进制计数器,具体要求如下: 1能累加计时; 2能循环计时(当计时到我们所需的数值时,能清零继续计数); 3能通过一个开关来选择计数器进制数; 4要求分别用图形设计方法和VHDL语言两种方法实现该设计; 5分析比较两种设计方法。 三计数器原理及其EDA实现方法 计数是一种最简单基本的运算,计数器就是实现这种运算的逻辑电路,计数器在数字系统中主要是对脉冲的个数进行计数,以实现测量、计数和控制的功能,同时兼有分频功能,计数器是由基本的计数单元和一些控制门所组成,计数单元则由一系列具有存储信息功能的各类触发器构成,这些触发器有RS触发器、T触发器、D触发器及JK触发器等。 在EDA设计中,可以采用两种方法来实现简单的计数器。采用图形设计方法,设计者可以调用设计软件提供的库元件,如基本的逻辑器件与门、或门、四位十进制计数器74160等等,并将这些元件以一定方式连接,从而构成目标计数器;采用VHDL语言设计方法,设计者只要根据VHDL语言规则定义目标计数器的管脚,并描述目标计数器的功能,然后设计软件便可以自动综合出目标计数器,采用这种设计方法,设计者不用考虑实际可用硬件的构成方式,因此很灵活方便。 本作业将利用Alter公司的设计软件Quartus II 9.1分别采用以上两种方法来实现一个二位十进制计数器,该计数器有两个可选进制24进制和12进制,可以通过一个开关来改变进制。该计数器在输入时钟的驱动下可以在00到24(或12)间循环计数,并将当前计数的十位和个位以BCD码输出。 四具体方案 4.1 图形设计方法 1设计思路 我采用了两个同步十进制计数器74160来实现二位十进制计数器,其原理图如图1所示。 图1中将个位计数器ONES的输出H0[0]-H0[3]通过一个或非门连接到十位计数器TENS的时钟输入,从而实现个位到十位的进位。当H0[0]-H0[3],由“1001”变为“0000时”,或非门将产生一个上升沿,从而触发十位数计数器加1。 74160具有一个异步清零脚(CLRN)和一个同步置数脚(LDN),我采用了同步置数脚来实现该计数器的循环计数。图1中24进制计数情况下,当两个计数器的输出为23(即“00100011”)时,通过一个与非门产生一个下降沿并输入到两个计数器的同步置数端,从而实现了循环计数。12进制计数时,只要输出为

十进制计数器设计

十进制计数器设计 一、实验目的:熟悉Quartus II的Verilog文本设计流程全过程,学习十进制计数器的设计、仿真,掌握计数器的工作原理。 二、实验原理:计数器属于时序电路的范畴,其应用十分普遍。该程序设计是要实现带有异步复位、同步计数使能和可预置型的十进制计数器。该计数器具有5个输入端口(CLK、RST、EN、LOAD、DATA)。CLK输入时钟信号;RST起异步复位作用,RST=0,复位;EN是时钟使能,EN=1,允许加载或计数;LOAD是数据加载控制,LOAD=0,向内部寄存器加载数据;DATA是4位并行加载的数据。有两个输出端口(DOUT和COUT)。DOUT 的位宽为4,输出计数值,从0到9;COUT是输出进位标志,位宽为1,每当DOUT为9时输出一个高电平脉冲。RST在任意时刻有效时,如CLK非上升沿时,计数也能即刻清0;当EN=1,且在时钟CLK的上升沿时刻LOAD=0,4位输入数据DA TA被加载,但如果此时时钟没有上升沿,尽管出现了加载信号LOAD=0,依然未出现加载情况;当EN=1,RST=1,LOAD=1时,计数正常进行,在计数数据等于9时进行输出高电平。 三、实验任务:在Quartus II上将设计好的程序进行编辑、编译、综合、适配、仿真,从时序仿真图中学习计数器工作原理,了解计数器的运行情况及时钟输入至计数器数据输出的延时情况。 四、实验步骤: (一)、建立工作库文件和编辑设计文件 任何一项设计都是一项Project(工程),而把一个工程下的所有文件放在一个文件夹内是一个非常好的习惯,以便于我们整理,利用和提取不同工程下的文件,而此文件夹将被EDA软件默认为Work Library(工作库),所以第一步先根据自己的习惯,建立个新的文件夹。 (1)新建文件夹:在盘建立并保存工程,将文件夹取名Jishuqi。 (2)输入源程序:打开Quartus II,选择菜单File→New→Design Files→VerilogHDL File→OK(如图1所示)。 图1 在空白处工作框处输入任务要求中的代码,代码如下: module CNT10 (CLK,RST,EN,LOAD,COUT,DOUT,DATA); input CLK, EN, RST,LOAD; input [3:0] DATA; output [3:0] DOUT; output COUT;

实验一十进制计数器的设计与仿真电子科技大学

实验一十进制计数器的设计与仿真 一、实验目的 熟悉QuartusⅡ的Verilog HDL文本设计流程全过程,学习计数器的设计、仿真和硬件测试。 二、实验原理 该程序设计是带有异步复位、同步计数使能、可预置型功能全面的十进制计数器。 (1)第一个条件句if(!RST)构成的RST接于寄存器下方的异步清0端CLR。 (2)第二个条件句if(EN)构成EN接于寄存器左侧的使能端ENA。 (3)第三个条件句if(LODA)构成LODA接于上面的多路选择器,使之控制选择来自DATA的数据,还是来自另一多路选择器的数据。 (4)不完整的条件语句与语句Q1<=Q1+1构成了加1加法器和4位寄存器。 (5)语句(Q1<9)构成了小于比较器,比较器的输出信号控制左侧多路选择器。 (6)第二个过程语句构成了纯组合电路模块,即一个等式比较器,作进位输出。 三、实验设备与软件平台 实验设备:计算机、FPGA硬件平台是Cyclone系列FPGA 软件平台:Quartus II (32-Bit)、5E+系统 四、实验内容 编写Verilog程序描述一个电路,实现以下功能:设计带有异步复位、同步计数使能和可预置型的十进制计数器。 具有5个输入端口(CLK、RST、EN、LOAD、DATA)。CLK输入时钟信号;RST 起异步复位作用,RST=0,复位;EN是时钟使能,EN=1,允许加载或计数;LOAD 是数据加载控制,LOAD=0,向内部寄存器加载数据;DATA是4位并行加载的数

据。有两个输出端口(DOUT和COUT)。DOUT的位宽为4,输出计数值,从0到9;COUT是输出进位标志,位宽为1,每当DOUT为9时输出一个高电平脉冲。 五、实验步骤 设计程序: module CNT10 (CLK,RST,EN,LOAD,COUT,DOUT,DATA); input CLK; input EN; input RST; input LOAD; input [3:0] DATA; output [3:0] DOUT; output COUT; reg [3:0] Q1 ; reg COUT ; assign DOUT = Q1; always @(posedge CLK or negedge RST) begin if (!RST) Q1 <= 0; else if (EN) begin if (!LOAD) Q1 <= DATA; else if (Q1<9) Q1 <= Q1+1; else Q1 <= 4'b0000; end end always @(Q1) if (Q1==4'h9) COUT = 1'b1; else COUT = 1'b0; Endmodule

2位10进制加法计数器课程设计

目录 第1章前言 (1) 1.1 摘要 (1) 1.2 设计目的 (1) 1.3 设计内容及要求 (1) 第2章设计方案 (2) 2.1 系统框图 (2) 2.2主要芯片功能介绍 (2) 2.2.1 四位二进制计数器74161介绍 (2) 2.2.2七段显示译码器7448介绍 (3) 2.3 工作原理 (4) 第3章硬件设计 (5) 3.1 单元电路设计 (5) 3.2 总硬件电路图 (7) 第4章仿真与试验 (8) 4.1 仿真结果 (8) 4.2 调试中遇到的问题 (8) 第5章结论和体会 (9) 第6章参考文献 (10)

第1章前言 1.1 摘要 在数字电路技术的课程中,计数器的功能是记忆脉冲的个数,它是数字系统中应用最广泛的基本时序逻辑构件。计数器在微型计算机系统中的主要作用就是为CPU和I/O设备提供实时时钟,以实现定时中断、定时检测、定时扫描、定时显示等定时控制,或者对外部事件进行计数。一般的微机系统和微机应用系统中均配置了定时器/计数器电路,它既可当作计数器作用,又可当作定时器使用,其基本的工作原理就是"减1"计数。计数器:CLK输入脉冲是一个非周期事件计数脉冲,当计算单元为零时,OUT输出一个脉冲信号,以示计数完毕。 本十进制加法计数器是基于74161芯片而设计的,依靠传感器感应外界信号,传感器在感应范围内有物体时输出低电位,反之则是高电位。当传感器的感应范围内有物体移过时,传感器电位由高到低再到高,出现上跳沿。计数器会自动加一,并将在数码管上显示。本十进制加法计数器有两位七段数码管。可计数0~99个物体,并易于扩展。 该十进制加法计数器设计理念是用于工厂流水线上产品计数,自动计数,方便简单。 1.2 设计目的 1、综合运用相关课程中所学到的理论知识去独立完成某一设计课题; 2、学习用集成触发器构成计数器的方法; 3、进一步熟悉常用芯片和电子器件的类型及特性,并掌握合理选用器件的原则; 5、初步了解电路设计、仿真的过程和方法; 4、锻炼分析问题解决问题的能力; 1.3 设计内容及要求 1、具有2位10进制计数功能; 2、利用传感器,不接触计数; 3、每一个物体经过,计数器自动加1; 4、具有显示功能; 5、并用相关仿真软件对电路进行仿真。

十进制计数器设计

实验四十进制计数器设计 ——综合性实验(一) 一、实验目的 1、学生在掌握所学知识(模拟电路、数字电路、VHD语言等)的基础之上,通过进行该实 验可将有关知识的连贯起来,提高自己本身的综合能力。 2、该实验的参考程序有逻辑错误,学生通过该实验修改程序可以深入的了解和掌握VHDL 语言。 二、实验要求 1、编写十进制计数器程序。 2、利用波形分析进行验证十进制计数器功能正确性。 三、实验设备 1、计算机一台 2、EDA——Ⅳ实验箱一台 四、实验提示 1.输入信号:计数信号(Cn)。 2.门控信号:手动清零(Rest)、手动允许计数(EN)。 3.输出总线信号:二进制——BCD码输出(Dout); 4.输出信号:进位信号(cy); 五、实验主要步骤 1.建立项目文件 2.建立程序文件 3.归属项目文件 4.输入程序 5.程序编译 6.建立波形文件 7.归属项目文件 8.调入引脚信息 9.编辑并编译波形文件 10.波形仿真 六、实验报告要求 1、分别叙述计数器工作原理和设计原理。

2、 绘制它们的程序流程图并进行程序分析。 3、 详细叙述和总结实验过程并进行仿真实验。 4、 进行十进制计数器波形分析与验证。 七、实验波形分析参考 图4.1为修改后的正确波形 图4.2实验指导书提供的计数波形分析 图4.3——6实验指导书提供的计数波形分析 图4.2 实验指导书提供的计数波形分析(不可计数) 图4.3 修改后的计数波形分析(计数不正确) 图4.4 修改后的计数波形分析(无进位) 图4.5 修改后的计数波形分析(十一进制) 图4.1 正确的计数波形分析

图4.6 修改后的计数波形分析(起始位不是零) 八、参考程序: ――******************************************* ――十进制计数器程序 ――适用环境实验教学 ――软件设计:孙晓明/ 自动控制实验室 ――设计时间:2005-02-18 ――最后修改时间:2006-02-7 ――******************************************* library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; ENTITY cntA is --Cn 计数脉冲 --Rest 清零信号 -- En 允许计数信号 --Dout[3..0] 十进制BCD码 -- Cy 进位码 port(Cn,Rest,EN :in std_logic; Dout : out std_logic_VECTOR ( 3 Downto 0 ); Cy : out std_logic); end cntA ; architecture sun1 of cntA is begin Process (Cn,Rest,EN) Variable Cqi : std_logic_VECTOR ( 3 Downto 0 ); Begin If Rest ='1' Then Cqi :=(Others =>'0'); cy<='0'; Elsif Cn'Event and Cn='1' then If EN='1' then If Cqi < "1001" then Cqi :=Cqi+1; --学生“If Cqi < "1010" then Cqi :=Cqi;” cy<='0'; --学生无 elsif cqi="1001" then cy<='1'; --学生无 Cqi :=(others =>'0');

十进制加法计数器

十进制加法器设计 1课程设计的任务与要求 课程设计的任务 1、综合应用数字电路知识设计一个十进制加法器。了解各种元器件的原理及其应用。 2、了解十进制加法器的工作原理。 3、掌握multisim 软件的操作并对设计进行仿真。 4、锻炼自己的动手能力和实际解决问题的能力。 5、通过本设计熟悉中规模集成电路进行时序电路和组合电路设计的方法,掌握十进制加法器的设计方法。 课程设计的要求 1、设计一个十进制并运行加法运算的电路。 2、0-9十个字符用于数据输入。 3、要求在数码显示管上显示结果。 2十进制加法器设计方案制定 加法电路设计原理 图1加法运算原理框图 如图1所示 第一步 置入两个四位二进制数。例如(1001)2,(0011)2和(0101)2,(1000)2,同时在两个七段译码显示器上显示出对应的十进制数9,3和5,8。

第二步将置入的数运用加法电路进行加法运算。 第三步前面所得结果通过另外两个七段译码器显示。即: 加法运算方式,则(1000)2+(0110)2=(1110)2 十进制8+6=14 并在七段译码显示出14。运算方案 通过开关S1——S8接不同的高低电平来控制输入端所置的两个一位十进制数,译码显示器U8和U9分别显示所置入的两个数。数A直接置入四位超前进位加法器74LS283的A4——A1端,74LS283的B4——B1端接四个2输入异或门。四个2输入异或门的一输入端同时接到开关S1上,另一输入端分别接开关S5——S8,通过开关S5——S8控制数B的输入,通过加法器74LS283完成两个数A和B的相加。由于译码显示器只能显示0——9,所以当A+B>9时不能显示,我们在此用另一片芯片74LS283完成二进制码与8421BCD码的转换,即S>9(1001)2时加上3(0011)2,产生的进位信号送入译码器U10来显示结果的十位,U11显示结果的个位。 3十进制加法器电路设计 加法电路的实现 用两片4位全加器74LS283和门电路设计一位8421BCD码加法器。由于一位8421BCD 数A加一位数B有0到18这十九种结果。而且由于显示的关系,当大于9的时候要加六转换才能正常显示,所以设计的时候有如下的真值表:

六位十进制计数器设计

河南科技学院新科学院电子课程设计报告 题目:六位十进制计数显示器 专业班级:电气工程及其自动化113班 姓名:吕志斌 时间:2013.05.27 ~2013.06.05 指导教师:邵锋张伟 完成日期:2013年06月05 日

6位十进制计数显示器设计任务书 1.设计目的与要求 设计6位十进制计数显示器电路,要认真并准确地理解有关要求,独立完成系统设计,要求所设计的电路具有以下功能: (1)能够实现0-999999的计数并显示; (2)具备计数数据的锁存功能; (3)采用数码管显示; (4)具备复位清零功能。 2.设计内容 (1)画出电路原理图,正确使用逻辑关系; (2)确定元器件及元件参数; (3)电路仿真; (4)SCH文件生成与打印输出; (5)PCB文件生成与打印输出。 3.编写设计报告 写出设计的全过程,附上有关资料和电路图,有总结体会。 4.答辩 在规定时间内,完成叙述并回答问题。 目录 1.引言 (1) 2.总体设计方案 (1)

2.1设计思路 (1) 2.2总体设计框图 (1) 3.设计原理分析 (1) 3.1计数器所用元器件74LS47 (1) 3.2译码显示电路所用器件 (3) 3.3译码显示电路工作原理分析 (4) 3.4锁存电路工作原理及器件 (4) 4.调试与仿真 (4) 5.体会与总结 (5) 参考文献 (5) 附录1仿真图 (6) 附录2原理图 (7)

6位十进制计数器设计 摘要:本文为完成六位十进制计数显示电路设计的完整过程,该电路是一种具备锁存复 位清零功能的显示电路。具有结构简单,原理清晰的特点。 关键词:计数锁存复位74LS4774LS161 74LS9374LS162 1引言 计数器的计数范围不够广,功能不太完善。在一些要求计数显示的场合需要较宽的计数范围,随着大规模集成电路的发展,数字技术显示技术也在不断的更新替换。然而,一些有时也需要一些专用的功能键。六位十进制显示器是一种能直接用数字显示范围且计数范围为0-999999的脉冲计数仪表,通过计数显示器将输入脉冲信号转换为对等的四位BCD码,再进入译码器将其转换为其位二进制数,最后经过驱动电路输入到七段式数字显示器显示十进制数。 2总体设计方案 本设计用74LS161芯片完成计数译码功能和锁存功能,将他们分别作为输入端接入74LS47译码,然后接入七段显示器完成显示功能。通过逻辑与非门与下一级的脉冲输入端完成进位,用开关KA.,KB分别控制复位清零和锁存。 2.1设计思路 本设计用六块74LS161来实现0-999999计数功能和完成锁存功能。将他们作为输入端接入6块74LS47芯片完成译码显示功能,用开关KA控制74LS161芯片的CLR 端和CLK端来控制计数器清零和下一位的进位功能。 2.2总体设计框架图 该电路输入脉冲先进入计数电路然后再进入译码电路,同时计数与电路给下一位输入脉冲,计数器经过译码器译码,然后由LED数码管显示(总体设计框架如图1)。 3设计原理分析 3.1计数器所用元器件74LS161

实验五 两位数十进制计数器显示实验(教师)

实验五两位数显示实验实验五两位数显示实验 ——综合性实验(二) 一、实验目的 1、学生在掌握所学知识(模拟电路、数字电路、VHD语言等)的基础之上,通过进行该实 验可将有关知识的连贯起来,提高自己本身的综合能力。 2、该实验的参考程序有逻辑错误,学生通过该实验可以深入的了解和掌握VHDL语言。 二、实验要求 1、编写并完善两位数动态扫描七段码显示程序。 2、下载实验箱上验证两位十进制计数器的显示功能正确性。 三、实验设备 1、计算机一台 2、EDA——Ⅳ实验箱一台 四、实验提示 1.该实验是在上一个计数器实验基础上完成的。 2.设计扫描显示模块,并且综合两位十进制计数器部分予以显示。 3.应该在同一个文件夹、同一个项目管理下完成。 4.注意显示器的动态刷新的设计原理。(刷新频率应该大于20Ms) 5.显示器输出信号:七段码输出信号和位选编码信号。 6.显示器输入信号:动态刷新信号;两位BCD码输入信号。 7.结构图的接口引脚的分配,需参考附录三10K10系列芯片。 五、实验报告要求 1、叙述扫描显示的工作原理和设计原理。 2、绘制它们的程序流程图并进行程序分析。 3、详细叙述和总结实验过程并进行仿真实验与硬件实验的分析。 4、在EDA实验箱上验证两位十进制计数器的显示功能。 参考1 :LED显示程序 ————两位数显示程序 ――适用环境实验教学 ――软件设计:孙晓明/ 自动控制实验室 ――设计时间:2005-02-23 ――最后修改时间:2006-02-4 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;

基于原理图的十进制计数器设计与仿真

《基于FPGA的现代数字系统设计》 实验名称:十进制计数器设计与仿真 姓名: 学号: 班级: 指导老师: 2013年3月11日

实验目的: (1)熟悉和掌握ISE Foudation 软件的使用 (2)掌握基本原理图进行FPGA设计开发的全流程 (3)理解和掌握“自底向下”的层次化设计方法 (4)温习数字电路设计的基础知识 实验要求: (1)使用原理图库中的门电路元件设计七段显示译码电路,以及十进制加法计数器。 (2)要求LED定位显示。 (3)完成LED七段码波形的仿真分析。 (4)在目标板按要求显示译码结果。 实验原理: 本次试验将完成的设计是一个具有数显输出的十进制计数器。示意图如2.1所示。 图2.1 七段数码管属于数码管的一种,是由7段二极管组成。按发光二极管单元衔接方式分为共阳极数码管和共阴极数码管。本实验使用共阴数码管。它是指将一切发光二极管的阴极接到一同构成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平相应字段就点亮,当某一字段的阳极为低电平相应字段就不亮。 显示译码器,一般是将一种编码译成十进制码或特定的编码,并通过显示器件将译码器的状态显示出来。最小项译码器输出能产生输入变量的所有最小项,而任何一个组合逻辑函数都可以变换为最小项之和的标准形式,故采用译码器和

门电路可实现任何单输出或多输出的组合逻辑函数。当译码器输出低电平有效时,一般选用与非门;当译码器输出高电平有效时,一般选用或门。 本实验可以采用ISE软件自带的“Decoder”库中的4线-16线译码器D4_16E (带使能端,输出高电平有效)和“Logic”库中的16输入或门OR16。 本次试验将完成的设计是一个具有数显输出的十进制计数器。 实验步骤: 1.完成七段数码管的绘制,按照正常操作新建工程,添加新原理图文件。(1)画出七段数码管A段的原理图,如图1所示,根据书上的七段数码管的真值表完成D$_16E与16位或门的连线,其中0的地方连地,1的地方连上D4_16E 芯片。完成A段的原理图之后,进行逻辑仿真,检查原理图是否有问题。 图1 数码管A段原理图 (2)为了确保原理图功能正确,建立激励文件,画出四个输入的波形图,要进行完备测试,测试激励应该包括所有的输入组合情况,这次有A(3:0)有0000~1111共16种组合情况。编辑修改激励波形。对于总线值提供模式设置的编辑功能,操作如图2.1所示。保存设置好的激励文件,如下图所示:

两位计数器电路设计

课题二:两位计数器电路设计(选做) 一.设计目的 本文通过对两位计数器电路的分析、仿真,阐述了计数器电路的一些设计方法,并论证了计数器电路的实现原理及过程。文中还使用了Hspice电路设计仿真软件,这样能让读者更直观的了解计数器电路的工作原理及组成结构。对数字电子技术课程中计数器有新的认识。对Hspice软件使用进一步的掌握。 二.设计原理 计数是一种最简单基本的运算,计数器就是实现这种运算的逻辑电路,计数器在数字系统中主要是对脉冲的个数进行计数,以实现测量、计数和控制的功能,同时兼有分频功能,计数器是由基本的计数单元和一些控制门所组成,计数单元则由一系列具有存储信息功能的各类触发器构成,这些触发器有RS触发器、T触发器、D触发器及JK触发器等。计数器在数字系统中应用广泛,如在电子计算机的控制器中对指令地址进行计数,以便顺序取出下一条指令,在运算器中作乘法、除法运算时记下加法、减法次数,又如在数字仪器中对脉冲的计数等等。 计数器的种类很多,按时钟脉冲输入方式的不同,可分为同步计数器和异步计数器;按进位体制的不同,可分为二进制计数器和非二进制计数器;按计数过程中数字增减趋势的不同,可分为加计数器、减计数器和可逆计数器。

二进制异步减计数器 (1)n位二进制异步计数器由n个处于计数工作状态(对于D 触发器,使Di=Qin;对于JK 触发器,使Ji=Ki=1) 的触发器组成。各触发器之间的连接方式由加、减计数方式及触发器的触发方式决定。对于加计数器,若用上升沿触发的触发器组成,则应将低位触发器的Q 端与相邻高一位触发器的时钟脉冲输入端相连(即进位信号应从触发器的Q 端引出);若用下降沿触发的触发器组成,则应将低位触发器的Q 端与相邻高一位触发器的时钟脉冲输入端连接。对于减计数器,各触发器的连接方式则相反。 (2)在二进制异步计数器中,高位触发器的状态翻转必须在低一位触发器产生进位信号(加计数)或借位信号(减计数)之后才能实现。故又称这种类型的计数器为串行计数器。也正因为如此,异步计数器的工作速度较低。 二进制同步计数器 为了提高计数速度,可采用同步计数器,其特点是,计数脉冲同时接于各位触发器的时钟脉冲输入端,当计数脉冲到来时,各触发器同时被触发,应该翻转的触发器是同时翻转的,没有各级延迟时间的积累问题。同步计数器也可称为并行计数器。 二进制同步加计数器 各位触发器的时钟脉冲输入端接同一计数脉冲CP ,各触发器的驱动方程分别为J0=K0=1、J1=K1=Q0、J2=K2=Q0Q1、J3=K3=Q0Q1Q2 。 在同步计数器中,由于计数脉冲CP 同时作用于各个触发器,所

相关文档
最新文档