verilog八位十进制计数器实验报告(附源代码)

8位10进制计数器实验报告

一、实验目的

●学习时序逻辑电路

●学会用verilog语言设计时序逻辑电路

●掌握计数器的电路结构

●掌握数码管动态扫描显示原理

二、实验内容

实现一个8bit十进制(BCD码)计数器

端口设置:

用拨动开关实现复位和使能

LED灯来表示8位数据

用数码管显示16进制的八位数据

1.复位时计数值为8‘h0

2.复位后,计数器实现累加操作,步长为1,逢9进1,,计数值达到8‘h99后,从0开始

继续计数

3.使能信号为1时正常计数,为0时暂停计数,为1时可继续计数。

4.每0.5s计数值加1

5.8位的结果显示在LED灯上,其中LED灯亮表示对应的位为1,LED灯灭表示对应的

灯为0

6.用isim进行仿真,用forever语句模拟时钟信号输入,并给变量赋值仿真initial语句。

7.用7段数码管的后两位显示16进制下8位结果。

三、实验结果

烧写结果:

拨动reset开关到1时,LED灯显示10010000,7段数码管显示“90”。

之后拨动WE开关呢,开始计数,LED开始变化并且7段数码管开始计数。从99后到达00,LED重新开始从00000000开始亮,且数码管重新从00开始计数。

之后拨动WE开关,暂停计数,LED暂停亮灭,七段数码管暂停变化,WE拨回1,继续计数。

拨动复位信号时,无视WE信号,直接复位。

仿真结果:

当输入reset信号时波形变化如下

当达到一个扫描信号的周期时的波形如下

当达到一个以上计数信号的周期时的波形

实验分析:

实验总体结构和模块间关系如图所示:(其中还需要补上使能信号)

实验原理:

由于要求实现数码管和LED灯的显示,先考虑LED灯,可以直接由8位输出信号控制,而数码管需要同时显示两个不同的数字,需要时分复用,即快速的交替显示十位和个位,利用人眼的视觉暂留来达到同时显示。这样就需要两种不同的频率信号。一种是每0.5s一次,作为计数信号,用脉冲生成器生成,另一种是1ms一次的扫描信号,用降频器生成,将计数信号输入计数器来计数,并将计数的值和扫描信号同时输入扫描显示模块。在扫描显示模块里用一个变量值在0和1间交替来指导选择信号选择数码管的不位数。交替的条件是收到扫描信号。7段数码管和LED灯都与计数值的变量相连即可实现。

实现细节

1.首先写一个脉冲生成器(div.v),每0.5s输出一次计数脉冲cnt

2.写一个计数器(cnt.v)设置一个8位计数变量,分成两个4位变量dnum(十位)

和num (个位)。如果接受到rst信号,则将计数变量置成x90.否则每次接受到计数信号,将计数变量的值增1,(同时考虑进位和回到x00的情况)

3.写一个扫描信号生成器(scan.v),每1ms生成一次扫描信号

4.写一个显示器(display.v),设置对数码管位数的4位选择信号sel和led灯的控

制变量dnum(高4位)和num(低四位)。设置seg作为7段数码管的控制变量。

设置一个中间变量a(初值0),如果接受到scan信号,将a 0变1或1变0.如果a为0,sel为x1101,显示数码管十位,如果a为1,sel为x1110,显示数码管个位。

5.以上各个模块均由时钟信号控制。

6.写一个top模块综合以上模块。

附录(源代码):

Div.v模块:

module div(

input clk,

input rst,

output reg cnt

);

reg [25:0] cnt_div;

always@(posedge clk or posedge rst)

begin

if(rst)

cnt_div<=26'b0;

else if(cnt_div==26'd49_999_999)

cnt_div<=26'b0;

else

cnt_div<=cnt_div+26'b1;

end

always@(posedge clk or posedge rst)

begin

if(rst)

else if(cnt_div==26'd49_999_999) cnt<=1'b1;

else

cnt<=1'b0;

end

endmodule

cnt.v模块:

module cnt(

input clk,

input WE,

input rst,

input cnt,

output reg [3:0] dnum,

output reg [3:0] num

);

always@(posedge clk)

begin

if(rst)

begin

num<=4'h0;

end

else if(WE && cnt)

begin

if(num==4'h9)

begin

num<=4'h0;

if(dnum==4'h9)

dnum<=4'h0;

else

dnum<=dnum+4'h1;

end

else

num<=num+4'h1;

end

end

endmodule

scan.v模块:

module scan(

input clk,

output reg scan_sgn

);

reg [16:0] scan_cnt;

initial scan_sgn=0;

initial scan_cnt=0;

always@(posedge clk)

begin

if(scan_cnt==17'd99_999)

scan_cnt<=17'd0;

else

scan_cnt<=scan_cnt+17'b1; end

always@(posedge clk)

begin

if(scan_cnt==17'd99_999)

scan_sgn<=1'b1;

else

scan_sgn<=1'b0;

end

endmodule

display.v模块:

module display(

input clk,

input scan_sgn,

input [3:0] num,

input [3:0] dnum,

output reg [7:0] seg,

output reg [3:0] sel

);

reg a=0;

//initial a =0;

always@(posedge scan_sgn) begin

if(a==1'b0)

a=1'b1;

else

a=1'b0;

end

always@(posedge clk)

begin

if(a==1'b0)

begin

sel=4'b1101;

case(dnum)

4'h0:

seg=8'b0000_0011;

4'h1:

seg=8'b1001_1111;

4'h2:

seg=8'b0010_0101;

4'h3:

seg=8'b0000_1101;

4'h4:

seg=8'b1001_1001;

4'h5:

seg=8'b0100_1001;

4'h6:

seg=8'b0100_0001;

4'h7:

seg=8'b0001_1111;

4'h8:

default:

seg=8'b0000_1001;

endcase

end

else

begin

sel=4'b1110;

case(num)

4'h0:

seg=8'b0000_0011;

4'h1:

seg=8'b1001_1111;

4'h2:

seg=8'b0010_0101;

4'h3:

seg=8'b0000_1101;

4'h4:

seg=8'b1001_1001;

4'h5:

seg=8'b0100_1001;

4'h6:

4'h7:

seg=8'b0001_1111;

4'h8:

seg=8'b0000_0001;

default:

seg=8'b0000_1001;

endcase

end

end

endmodule

top模块:

module top(

input clk,

input rst,

input WE,

output [7:0] seg,

output [3:0] sel,

output [3:0] dnum,

output [3:0] num

);

wire [3:0] dnum;

wire [3:0] num;

wire cnt;

wire scan_sgn;

div u_div(

.clk (clk ),

.rst (rst ),

.cnt (cnt )

);

cnt u_cnt(

.clk (clk ),

.rst (rst ),

.WE (WE ),

.cnt (cnt ),

.dnum (dnum ), .num (num ) );

scan u_scan(

.clk (clk ),

.scan_sgn (scan_sgn)

);

display u_display(

.clk (clk ),

.sel (sel ),

.seg (seg ),

.dnum (dnum ), .num (num ), .scan_sgn (scan_sgn)

);

endmodule

ucf文件:

Net "seg<7>" LOC = T17;

Net "seg<6>" LOC = T18;

Net "seg<5>" LOC = U17 ;

Net "seg<3>" LOC = M14 ; Net "seg<2>" LOC = N14; Net "seg<1>" LOC = L14; Net "seg<0>" LOC = M13;

Net "sel<0>" LOC = N16; Net "sel<1>" LOC = N15; Net "sel<2>" LOC = P18; Net "sel<3>" LOC = P17;

NET "WE" LOC=T9;

NET "rst" LOC=T10;

NET "clk" LOC=V10;

Net "num<0>" LOC = U16; Net "num<1>" LOC = V16; Net "num<2>" LOC = U15; Net "num<3>" LOC = V15; Net "dnum<0>" LOC = M11; Net "dnum<1>" LOC = N11; Net "dnum<2>" LOC = R11;

仿真代码:

module test5;

// Inputs

reg clk;

reg rst;

reg WE;

// Outputs

wire [7:0] seg;

wire [3:0] sel;

wire [3:0] dnum;

wire [3:0] num;

// Instantiate the Unit Under Test (UUT)

top uut (

.clk(clk),

.rst(rst),

.WE(WE),

.seg(seg),

.sel(sel),

.dnum(dnum),

.num(num)

);

initial begin

clk = 0;

#100;

WE = 1;

rst = 1;

#10;

rst=0;

end

always #1 clk=~clk;

endmodule

対本实验的总结和体会;

1、要仿真正确是烧写的前提,先仿真正确再烧写

2、要给每个模块定义的变量一个initial语句,否则在仿真中会出

现变量的值未定义的xxxx的情形

3、实验时仿真一直出现的一个问题是没有写initial语句,导致各

个模块的中间变量没有初值,而很多输出变量的变化条件都是

根据中间变量的上升沿河下降沿来触发的,这样中间变量即使

有值也不会产生电平变化,导致仿真时输出没有变化(虽然烧

写到板子上没有问题)

4、理解了仿真的原理是将整个project当成一个黑匣子,在isim

的仿真程序中需要写语句模拟整个project的输入信号比如clk

(用forever语句),rst和WE变量(在程序中赋值)

5、为了能使仿真时各个变量异步的变化,比如在时钟变化的过程

中使rst等其他输入变量变化,但是initial语句又是顺序执行的,此时可以写多个initial语句来并行得是变量变化。

计数器的设计实验报告

计数器的设计实验报告 篇一:计数器实验报告 实验4 计数器及其应用 一、实验目的 1、学习用集成触发器构成计数器的方法 2、掌握中规模集成计数器的使用及功能测试方法二、实验原理 计数器是一个用以实现计数功能的时序部件,它不仅可用来计脉冲数,还常用作数字系统的定时、分频和执行数字运算以及其它特定的逻辑功能。 计数器种类很多。按构成计数器中的各触发器是否使用一个时钟脉冲源来分,有同步计数器和异步计数器。根据计数制的不同,分为二进制计数器,十进制计数器和任意进制计数器。根据计数的增减趋势,又分为加法、减法和可逆计数器。还有可预置数和可编程序功能计数器等等。目前,无论是TTL还是

CMOS集成电路,都有品种较齐全的中规模集成计数器。使用者只要借助于器件手册提供的功能表和工作波形图以及引出端的排列,就能正确地运用这些器件。 1、中规模十进制计数器 CC40192是同步十进制可逆计数器,具有双时钟输入,并具有清除和置数等功能,其引脚排列及逻辑符号如图5-9-1所示。 图5- 9-1 CC40192引脚排列及逻辑符号 图中LD—置数端CPU—加计数端CPD —减计数端CO—非同步进位输出端BO—非同步借位输出端 D0、D1、D2、D3 —计数器输入端 Q0、Q1、Q2、Q3 —数据输出端CR—清除端 CC40192的功能如表5-9-1,说明如下:表5-9-1 当清除端CR为高电平“1”时,计数

器直接清零;CR置低电平则执行其它功能。当CR为低电平,置数端LD也为低电平时,数据直接从置数端D0、D1、D2、D3 置入计数器。 当CR为低电平,LD为高电平时,执行计数功能。执行加计数时,减计数端CPD 接高电平,计数脉冲由CPU 输入;在计数脉冲上升沿进行8421 码十进制加法计数。执行减计数时,加计数端CPU接高电平,计数脉冲由减计数端CPD 输入,表5-9-2为8421 码十进制加、减计数器的状态转换表。加法计数表5-9- 减计数 2、计数器的级联使用 一个十进制计数器只能表示0~9十个数,为了扩大计数器范围,常用多个十进制计数器级联使用。 同步计数器往往设有进位(或借位)输出端,故可选用其进位(或借位)输出信号驱动下一级计数器。 图5-9-2是由CC40192利用进位

6位数字频率计

数字频率计

目录 一、设计任务书 二、设计框图及整体概述 三、各单元电路的设计方案及原理说明 四、结果分析 五、体会和总结 附录一、电路设计总图 附录二、50MHz变成2Hz的模块VHDL语言源程序 附录三、FPGA实验开发板EP2C5T144C8芯片管脚锁定表 第页 一、设计任务书

设计一个6位数字频率计,测量范围为000000~999999; 应用QuartusII_7.2以自底向上层次化设计的方式设计电路原理图; 应用FPGA实验开发板下载设计文件,实现电路的功能。 二、设计框图及整体概述 1.设计框图 2、主要芯片及作用 T触发器:将2HZ的频率翻转成1HZ。 74192:1个74HC192能实现0~9的计数功能,6个74HC192可以连成0~999999的计数。74374:是8位的锁存器,可以选用3个来设计24位的锁存器。74374将计数器输出的测量数据暂时储存起来,并提供给数码管显示。 7448:是BCD—7段译码器,用来显示测量结果。

3、设计原理说明 数字频率计是专门用于测量交流信号周期变化速度的一种仪器,频率的定义是每秒时间内交流信号(电压或电流)发生周期性变化的次数。 因此频率计的任务就是要在1秒钟时间内数出交流信号从低电平到高电平变化的次数,并将测得的数据通过数码管显示出来。 50MHz 时钟信号通过模块VHDL 语言源程序变成2Hz 的时钟信号,通过T 触发器将2HZ 翻转成1HZ ,1HZ 经过分频产生3个电平信号,1秒脉宽的高电平提供给计数器工作;1秒脉宽的高电平提供给锁存器工作;0.5秒脉宽的高电平用于计数器清零。有了这三个电平信号,就可以用6片74192工作来计数000000~999999,74374用来锁存计数器输出的测量数据,再用7448译码器来显示出来。 三、各单元电路的设计方案及原理说明 1. 时钟分频模块 VCC clk_50m INPUT clk_1hz OUTPUT clk1clk fenpin inst PRN CLRN T Q TFF inst2 VCC 时钟分频原理图 原理:50MHz 时钟信号通过模块VHDL 语言源程序变成2Hz 的时钟信号。将T 触发器的T 端接高电平,T 触发器则转化为T ’触发器,2HZ 的脉冲通过它变为1HZ 。 2. 时序产生模块

数字钟设计报告——数字电路实验报告

数字钟设计实验报告 专业:通信工程 姓名:王婧 班级:111041B 学号:111041226

数字钟的设计 目录 一、前言 (3) 二、设计目的 (3) 三、设计任务 (3) 四、设计方案 (3) 五、数字钟电路设计原理 (4) (一)设计步骤 (4) (二)数字钟的构成 (4) (三)数字钟的工作原理 (5) 六、总结 (9) 1

一、前言 此次实验是第一次做EDA实验,在学习使用软硬件的过程中,自然遇到很多不懂的问题,在老师的指导和同学们的相互帮助下,我终于解决了实验过程遇到的很多难题,成功的完成了实验,实验结果和预期的结果也是一致的,在这次实验中,我学会了如何使用Quartus II软件,如何分层设计点路,如何对实验程序进行编译和仿真和对程序进行硬件测试。明白了一定要学会看开发板资料以清楚如何给程序的输入输出信号配置管脚。这次实验为我今后对 EDA的进一步学习奠定了更好的理论基础和应用基础。 通过本次实验对数电知识有了更深入的了解,将其运用到了实际中来,明白了学习电子技术基础的意义,也达到了其培养的目的。也明白了一个道理:成功就是在不断摸索中前进实现的,遇到问题我们不能灰心、烦躁,甚至放弃,而要静下心来仔细思考,分部检查,找出最终的原因进行改正,这样才会有进步,才会一步步向自己的目标靠近,才会取得自己所要追求的成功。 2

二、设计目的 1.掌握数字钟的设计方法。 2熟悉集成电路的使用方法。 3通过实训学会数字系统的设计方法; 4通过实训学习元器件的选择及集成电路手册查询方法; 5通过实训掌握电子电路调试及故障排除方法; 6熟悉数字实验箱的使用方法。 三、设计任务 设计一个可以显示星期、时、分、秒的数字钟。 要求: 1、24小时为一个计数周期; 2、具有整点报时功能; 3、定时闹铃(未完成) 四、设计方案 一个基本的数字钟电路主要由译码显示器、“时”,“分”,“秒”计数器和定时器组成。干电路系统由秒信号发生 3

实验五 时序逻辑电路实验报告 计数器

实验五 时序逻辑电路实验 一、实验目的 1.掌握同步计数器设计方法与测试方法。 2.掌握常用中规模集成计数器的逻辑功能和使用方法。 二、实验设备 1.直流稳压电源、信号源、示波器、万用表、面包板 2.74LS190、74LS393、74LS04 3.1kΩ电阻、发光二极管 三、实验原理 1.计数器 计数器不仅可用来计数,也可用于分频、定时和数字运算。在实际工程应用中,一般很少使用小规模的触发器组成计数器,而是直接选用中规模集成计数器。 2.(1) 四位二进制(十六进制)计数器74LS161(74LS163) 74LSl61是同步置数、异步清零的4位二进制加法计数器,其功能表见表5.1。 74LSl63是同步置数、同步清零的4位二进制加法计数器。除清零为同步外,其他功能与74LSl61相同。二者的外部引脚图也相同,如图5.1所示。 表5.1 74LSl61(74LS163)的功能表 3.集成计数器的应用——实现任意M进制计数器 一般情况任意M进制计数器的结构分为3类,第一类是由触发器构成的简单计数器。第二类是由集成二进制计数器构成计数器。第三类是由移位寄存器构成的移位寄存型计数器。第一类,可利用时序逻辑电路的设计方法步骤进行设计。第二类,当计数器的模M较小时用一片集成计数器即可以实现,当M较大时,可通过多片计数器级联实现。两种实现方法:反馈置数法和反馈清零法。第三类,是由移位寄存器构成的移位寄存型计数器。 4.实验电路: 十进制计数器

六进制扭环计数器 具有方波输出的六分频电路 图5.1 74LS161(74LS163)外部引脚图 四、实验内容及步骤 1.集成计数器实验 (1)按电路原理图使用中规模集成计数器74LS163和与非门74LS00,连接成一个同步置数或同步清零十进制计数器,并将输出连接至数码管或发光二极管。然后使用单次脉冲作为触发输入,观察数码管或发光二极管的变化,记录得到电路计数过程和状态的转换规律。 (2)根据电路图,首先用D触发器74LS7474构成一个不能自启的六进制扭环形计数器,同样将输出连接至数码管或发光二极管。然后使用单次脉冲作为触发输入,观察数码管或发光二极管的变化,记录得到电路计数过程和状态的转换规律。注意观察电路是否能自启,若不能自启,则将电路置位有效状态。接下来再用D触发器74LS7474构成一个能自启的六进制扭环形计数器,重复上述操作。 2.分频实验 同步置数法 同步清零法

EDA实验报告-实验3计数器电路设计(DOC)

暨南大学本科实验报告专用纸 课程名称EDA实验成绩评定 实验项目名称计数器电路设计指导教师郭江陵 实验项目编号03 实验项目类型验证实验地点B305 学院电气信息学院系专业物联网工程 组号:A6 一、实验前准备 本实验例子使用独立扩展下载板EP1K10_30_50_100QC208(芯片为EP1K100QC208)。EDAPRO/240H实验仪主板的VCCINT跳线器右跳设定为3.3V;EDAPRO/240H实验仪主板的VCCIO跳线器组中“VCCIO3.3V”应短接,其余VCCIO均断开;独立扩展下载板“EP1K10_30_50_100QC208”的VCCINT跳线器组设定为 2.5V;独立扩展下载板“EP1K10_30_50_100QC208”的VCCIO跳线器组设定为3.3V。请参考前面第二章中关于“电源模块”的说明。 二、实验目的 1、了解各种进制计数器设计方法 2、了解同步计数器、异步计数器的设计方法 3、通过任意编码计数器体会语言编程设计电路的便利 三、实验原理 时序电路应用中计数器的使用十分普遍,如分频电路、状态机都能看到它的踪迹。计数器有加法计数器、可逆计数器、减法计数器、同步计数器等。利用MAXPLUSII已建的库74161、74390分别实现8位二进制同步计数器和8位二——十进制异步计数器。输出显示模块用VHDL实现。 四、实验内容 1、用74161构成8位二进制同步计数器(程序为T3-1); 2、用74390构成8位二——十进制异步计数器(程序为T3-2); 3、用VHDL语言及原理图输入方式实现如下编码7进制计数器(程序为T3-3): 0,2,5,3,4,6,1 五、实验要求 学习使用Altera内建库所封装的器件与自设计功能相结合的方式设计电路,学习计数器电路的设计。 六、设计框图 首先要熟悉传统数字电路中同步、异步计数器的工作与设计。在MAX+PLUS II中使用内建的74XX库选择逻辑器件构成计数器电路,并且结合使用VHDL语言设计转换模块与接口模块,最后将74XX模块与自设计模块结合起来形成完整的计数器电路。并借用前面设计的数码管显示模块显示计数结果。 ◆74161构成8位二进制同步计数器(程序为T3-1)

八位十进制数字频率计

EDA课程设计报告书 题目:8位十进制数字频率计的设计姓名: 学号: 所属学院: 专业年级: 指导教师: 完成时间:

8位十进制数字频率计的设计 一、设计介绍 数字频率计是采用数字电路制做成的能实现对周期性变化信号频率测量的仪器。频率计主要用于测量正弦波、矩形波、三角波和尖脉冲等周期信号的频率值。其扩展功能可以测量信号的周期和脉冲宽度。通常说的,数字频率计是指电子计数式频率计。频率计主要由四个部分构成:输入电路、时基(T)电路、计数显示电路以及控制电路。在电子技术领域,频率是一个最基本的参数。数字频率计作为一种最基本的测量仪器以其测量精度高、速度快、操作简便、数字显示等特点被广泛应用。许多物理量,例如温度、压力、流量、液位、PH值、振动、位移、速度等通过传感器转换成信号频率,可用数字频率计来测量。尤其是将数字频率计与微处理器相结合,可实现测量仪器的多功能化、程控化和智能化.随着现代科技的发展,基于数字式频率计组成的各种测量仪器、控制设备、实时监测系统已应用到国际民生的各个方面。 二、设计目的 (1)熟悉Quatus 11软件的基本使用方法。 (2)熟悉EDA实验开发系统的使用方法。 (3)学习时序电路的设计、仿真和硬件设计,进一步熟悉VHDL设计技术。 三、数字频率计的基本原理 数字频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,通常情况下计算每秒待测信号的脉冲个数,此时我们称闸门时间为1秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长则每测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。数字频率计的主要功能是测量周期信号的频率。频率是单位时间(1S)信号发生周期变化的次数。如果我们能在给定的1S时间对信号波形计数,并将计数结果显示出来,就能读取被测信号的频率。数字频率计首先必须获得相对稳定与准确的时间,同时将被测信号转换成幅度与波形均能被数字电路识别的脉冲信号,然后通过计数器计算这一段时间间隔的脉冲个数,将其换算后显示出来。这就是数字频率计的基本原理。频率计测量频率需要设计整形电路使被测周期性信号整形成脉冲,然后设计计数器对整形后的脉冲在单位时间重复变化的次数进行计数,计数器计出的数字经锁存器锁存后送往译码驱动显示电路用数码管将数字显示出来,需要设计控制电路产生允许产生的门匣信号,计数器的清零信号和锁存器的锁存信号使电路正常工作,再设计一个量程自动转换使测量围更广。 四系统总体框架

24小时制时、分、秒计时器设计报告

时钟仿真实验报告 一、任务及要求 用51单片机设计时、分、秒计时器,具体要求如下。 1、具有时、分、秒计时功能和8位数码管显示功能,显示格式为:“时-分-秒”; 2、用Proteus设计仿真电路进行结果仿真; 3、4人组成设计小组完成,小组成员有明确分工,1人负责总体方案设计及报告撰写,2人负责功能模块函数设计,1人负责仿真电路设计及调试。 4、完成程序设计、仿真电路设计、结果仿真,完成报告并上传空间课程栏目中的课程设计报告子栏目中。 二、设计方案: 1、总体方案构思:通过使用定时计数器以及中断溢出,50ms中断溢出一次,溢出20次为1S。所以当定时溢出计数变量temp自加20次时计数变量miao自加1,直到加到第60次时miao(秒)清零,并且计数变量fen自加1,直到fen加到第60次时,fen(分)清零且shi(时)

自加1,直到shi加到第24次时,shi(小时)清零。最后经译码后,通过扫描显示模块程序将得到的时钟结果以动态显示的方式显示在8位一体共阳数码管上。 2、程序功能模块说明:此时钟程序包括时钟中断计时、延时函数、显示函数等模块 3、仿真电路构成:此次时钟程序的仿真电路的设计较简单,硬件部分主要有AT89C52单片机芯片一块、八位一体LED共阳数码管一块、8个普通电阻以及8个逻辑非门。其中8个普通电阻用作P0口上拉电阻。另外,由于数码管是共阳的,而实际程序中的位码是以低电平有效的,所以八个逻辑非门用来取反单片机输出的位码。 4、时钟计时程序设计思想分析:采用定时计数器T0,工作方式1,定时50ms,再对定时溢出中断次数计数,若溢出了20次则时间为1秒! 5、函数模块程序流程图:

8位十进制频率计_EDA课程设计报告

EDA课程设计报告 名称: 8位十进制频率计 学号: 姓名: 年级专业: 2011级电子信息工程 学院: 物电学院 指导老师: 日期: 2014年6月2日 安徽师范大学物理与电子信息学院 College of Physics and Electronic Information, Anhui Normal University

目录 一、设计目的 (2) 二、设计要求 (2) 三、设计思路 (3) 四、设计原理 (3) 五、设计仿真 (3) 六、实验现象 (4) 七、设计源码 (4) 八、总结 (9) 参考书目 (9) 引言 数字频率计是数字电路中的一个典型应用,实际的硬件设计用到的器件教多,连线比较复杂,而且会产生比较大的延时,造成测量误差、可靠性差。随着现场可编程阵列FPGA的应用,以EDA工具作为开发手段,运用VHDL等硬件描述语言语言,将使整个系统大大简化,提高了系统的整体性能和可靠性。 一、课程设计目的 1)巩固和加深对“EDA技术”、“数字电子技术”的基本知识的理解,提高综合运用本课程所学知识的能力。 2)培养学生根据课题需要选学参考书籍、查阅手册、图表和文献资料的自学能力。通过独立思考,深入钻研相关问题,学会自己分析解决问题的方法。 3)培养硬件设计、软件设计及系统软、硬件调试的基本思路、方法和技巧,并能熟练使用当前较流行的一些有关电路设计与分析的软件和硬件。 二、课程设计要求 1)脉冲信号的频率就是在单位时间内所产生的脉冲个数,其表达式为,f为被测信号的频率,N 为计数器所累积的脉冲个数,T为产生N个脉冲所需的时间。所以,在1秒时间内计数器所记录的结果,就是被测信号的频率。 2)被测频率信号取自实验箱晶体振荡器输出信号,加到主控室的输入端。 3)再取晶体振荡器的另一标准频率信号,经分频后产生各种时基脉冲:1ms,10ms,0.1s,1s等,时基信号的选择可以控制,即量程可以改变。 4)时基信号经控制电路产生闸门信号至主控门,只有在闸门信号采样期间内(时基信号的一个周期),输入信号才通过主控门。 5)f=N/T,改变时基信号的周期T,即可得到不同的测频范围。 6)当主控门关闭时,计数器停止计数,显示器显示记录结果,此时控制电路输出一个置零信号,将计数器和所有触发器复位,为新一次采样做好准备 三、课程设计思路 频率测量的基本原理是计算每秒钟内待测信号的脉冲个数。这就要求TESTCTL的计数使能信号TSTEN能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT10的ENA使能端进行同步控制。当TSTEN高电平时,允许计数;低电平时,停止计数,并保持其所计的数。在停止计数期间,首先需要一个锁存信号LOAD的上跳沿将计数器在前1秒钟的计数值锁存进32位锁存器REG32B中,并由外部的7段译码器译出并稳定显示。锁存信号之后,必须有一清零信号CLR_CNT对计数器进行清零,为下1秒钟的计数操作作准备。 寄存器REG32B设计要求是:若已有32位BCD码存在于此模块的输入口,在信号LOAD的上升沿后即被锁存到寄存器REG32B内部,并由REG32B的输出端输出,然后由7段译码器译者成能在数码管上显示输出的相应数值。

数字电路实验报告计数器的逻辑功能及应用word精品

数字电路实验报告 计数器逻辑功能及其应用 实验目的: 1. 熟悉中等规模集成电路计数器 74LS160的逻辑功能,使用方法及应用。 2. 掌握构成任意进制计数器的方法。 实验设备及器件: 1. 数字逻辑电路实验板 1片 2. 74HC160同步加法二进制计数器 2片 3. 74HC00二输入四与非门 1片 三、实验原理: 计数器是一个用以实现计数功能的时序部件, 它不仅可用来计脉冲数,还常用作数字系 统的定时、分频和执行数字运算以及其它特定的逻辑功能。 计数器种类很多。按构成计数器中的各触发器是否使用一个时钟脉冲源来分, 有同步计 数器和异步计数器。 根据计数制的不同, 分为二进制计数器,十进制计数器和任意进制计数 器。根据计数的增减趋势,又分为加法、 减法和可逆计数器。还有可预置数和可编程序功能 计数器等等。目前,无论是 TTL 还是CMOS 集成电路,都有品种较齐全的中规模集成计 数器。使用者只要借助于器件手册提供的功能表和工作波形图以及引出端的排列, 就能正确 地运用这些器件。 集成计数器74HC160是二-五-十进制计数器,其管脚排列如图。 四、实验内容 1.构成摸10计数器 实验原理图 c T 叱Tc % s c r Qa

实验结果:数码管显示为从 0到5之间变化。 3、组成模100计数器 实验结果:个位数码管随时间显示 0、1、2、3、4、5、6、7、& 9,十位数码管显示个位 进位计数结果,按 0、1、2、3、4、5、6、7、8、9变化。 五、实验心得: 本次实验,通过对计数器工作过程的探索,基本上了解了数码计数器的工作原理, 以及 74HC160 的数字特点,让我更进一步掌握了如何做好数字电子数字实验,也让我认识 到自身理论知识的不 > CL 160 实验结果:数码管显示为从 2、组成模6计数器 实验原理 图 OC LI) 0到9之间变化。

数电实验报告 计数器

实验报告 实验七计数器原理测试及其设计 2.7.1 实验目的 1.掌握中规模集成计数器74LS160、74LS161、74LS163的逻辑功能及使用方法。 2.掌握同步清零与异步清零的区别及74LS160计数器的级联方法。 3.学习用中规模集成计数器设计任意进制计数器。 2.7.2 实验仪器设备与主要器件 实验箱一个;双踪示波器一台;稳压电源一台;函数发生器一台。 74LS160,74LS161和74LS163。 2.7.3 实验原理 计数器的功能是记录输入脉冲的个数。他所能记忆的最大脉冲个数称为该计数器的模。计数器不仅能统计输入脉冲的个数,还可以用作分频、定时、产生节拍脉冲等。根据进位方式,可分为同步和异步两类。根据进制,可分为二进制、十进制和任意进制等。根据逻辑功能,可分为加法计数器、减法计数器和可逆计数器等。根据电路集成度,可分为小规模集成计数器和中规模集成计数器。 2.7.4 实验内容 1.分别用74LS161和74LS163设计模13计数器,采用清零法实现,并用数码管显示实验结果。 设计思路:74LS161是十六进制计数器,所以我在它计数到13(1101)清零就行了,再利用二进制数与BCD码对应关系,即利用74LS283的逻辑功能使数码管显示实验结果。计数时电路状态转换关系: 0000→0001→0010→0011→0100→0101→0110→0111→1000→1001→1010→1011→1100→0000

设计思路:74LS163接法与74LS161基本一样,只是163的清零信号是12不是13,如图: 2.设计一个用3位数码管指示的六十进制计数器,并用三只开关控制计数器的数据保持、计数及清零功能。 设计思路:用Cr=0控制计数器清零,用EP*ET=0控制计数器数据保持,用高低电平和CP脉冲进行与运算控制计数器计数功能。U1的清零信号是在计数到6时,U1清零的同时U3开始计数,这样就能实现用3位数码管指示的六十进制计数器。如图:

数字时钟设计实验报告

数字时钟设计实验报告

电子课程设计题目:数字时钟

数字时钟设计实验报告一、设计要求: 设计一个24小时制的数字时钟。 要求:计时、显示精度到秒;有校时功能。采用中小规模集成电路设计。 发挥:增加闹钟功能。 二、设计方案: 由秒时钟信号发生器、计时电路和校时电路构成电路。 秒时钟信号发生器可由振荡器和分频器构成。 计时电路中采用两个60进制计数器分别完成秒计时和分计时;24进制计数器完成时计时;采用译码器将计数器的输出译码后送七段数码管显示。 校时电路采用开关控制时、分、秒计数器的时钟信号为校时脉冲以完成校时。 三、电路框图:

图一 数字时钟电路框图 四、电路原理图: (一)秒脉冲信号发生器 秒脉冲信号发生器是数字电子钟的核心部分,它的精度和稳定度决定了数字钟的质量。由振荡器与分频器组合产生秒脉冲信号。 ? 振荡器: 通常用555定时器与RC 构成的多谐振荡器,经过调整输出1000Hz 脉冲。 ? 分频器: 分频器功能主要有两个,一是产生标准秒脉冲信号,一是提供功能 扩展电路所需要的信号,选用三片74LS290进行级联,因为每片为1/10分频器,三片级联好获得1Hz 标准秒脉冲。其电路图如下: 图二 秒脉冲信号发生器 译译译时计 分计秒计 校 时 电 路 秒信号发生器

(二)秒、分、时计时器电路设计 秒、分计数器为60进制计数器,小时计数器为24进制计数器。 ?60进制——秒计数器 秒的个位部分为逢十进一,十位部分为逢六进一,从而共同完成60进制计数器。当计数到59时清零并重新开始计数。秒的个位部分的设计:利用十进制计数器CD40110设计10进制计数器显示秒的个位。个位计数器由0增加到9时产生进位,连在十位部计数器脉冲输入端CP,从而实现10进制计数和进位功能。利用74LS161和74LS11设计6进制计数器显示秒的十位,当十位计数器由0增加到5时利用74LS11与门产生一个高电平接到个位、十位的CD40110的清零端,同时产生一个脉冲给分的个位。其电路图如下: 图三60进制--秒计数电路 ?60进制——分计数电路 分的个位部分为逢十进一,十位部分为逢六进一,从而共同完成60进制计数器。当计数到59时清零并重新开始计数。秒的个位部分的设计:来自秒计数电路的进位脉冲使分的个位加1,利用十进制计数器CD40110设计10进制计数器显示秒的个位。个位计数器由0增加到9时产生进位,连在十位部计数器脉冲输入端CP,从而实现10进制计数和进位功能。利用74LS161和74LS11设计6进制计数器显示秒的十位,当十位计数器由0增加到5时利用74LS11与门产生一个高电平接到个位、十位的CD40110的清零端,同时产生一个脉冲给时的个位。其电路图如下:

最新多功能8位十进制频率计数器的设计

多功能8位十进制频率计数器的设计

多功能8位十进制频率计数器的设计 设计题目:多功能8位十进制计数器的设计学生学号: 08060311205 学生姓名:孔文尧 专业班级:电信 112 指导教师:邓茜

摘要 使用VHDL 语言来设计,画出流程图和仿真图,让设计的电路通过硬件仿真,再在下到相关器件上,指导满足要求,能实现电子自动化的过程。使用该仪器测试所得到的信号的频率,有正弦波,有方波但是其信号必须按周期性变化,否则一定是机器坏了和操作不得当。因此这个毕业设计,不但有力于让数字频率计的功能更强,也可以让成本降低和增加其实际作用。所有的科研院所,学校,实验室,车间等商业机构都使用了大量的数字频率器或其相关产品。因为它的使用性,价格也相当的低廉所以被人们广泛的使用和研究。在这被人们所注意到,而且仿真可以提供更好的测量频率也会让实验的结果更加的精确,他能满足了数字频率计自动清零需求,当然也能满足自动化功能测试要求。 现在我们对他的研究途径它不仅仅在于容易阅读,也在于我可以控制精度,这也是很牛逼的。最重要的是数字频率计,在高科技设备研发和数字卫星领域,数字通信应用等领域中有不俗的贡献。 [关键词]:VHDL 语言仿真频率计数器。

Summary Use c language to design, draw a flowchart and simulation map, so the design of the circuit by hardware emulation, and then next to the relevant device guidance to meet the requirements, to achieve the electronic automated process. Frequency signal obtained by the instrument test with a sine wave, but their well-wave signal must be periodically changed, the machine must be broken and the operation shall not be treated. So this graduation design, not only to make powerful digital frequency meter more powerful, but also allows cost reduction and increase its practical effect. All research institutes, schools, laboratories, workshops and other business organizations are using a lot of digital frequency or its related products. Because of its use, the price is quite low so been widely used and studied. In this been noticed, and simulation can provide better measurement frequency also make experimental results more accurate, he can meet the needs of the digital frequency meter is automatically cleared, of course, but also to meet the requirements of automated functional testing, Now we study the way for him it's not just that it is easy to read, but also that I can control precision, it is also very fast hardware. The most important is the digital frequency meter, high-tech equipment in the field of research and development and digital satellite, digital communications applications in other fields have good contributions. [Keywords]: c language simulation frequency meter.

8254定时计数器应用实验报告

XX 大学实验报告 课程名称: 实验项目名称:8254定时/计数器应用实验学院:信息工程学院 专业:通信工程 指导教师: 报告人:学号:班级: 实验时间: 实验报告提交时间:

教务处制

单元的内容外,还可以读出状态寄存器的内容。 (6)计数脉冲可以是有规律的时钟信号,也可以是随机信号。计数初值公式为: n=fCLKi÷fOUTi、其中fCLKi 是输入时钟脉冲的频率,fOUTi 是输出波形的频率。 图(1)是8254 的内部结构框图和引脚图,它是由与CPU 的接口、内部控制电路和三个计数器组成。8254 的工作方式如下述:(1)方式0:计数到0 结束输出正跃变信号方式。 (2)方式1:硬件可重触发单稳方式。 (3)方式2:频率发生器方式。 (4)方式3:方波发生器。 (5)方式4:软件触发选通方式。 (6)方式5:硬件触发选通方式。 图(1)8254的内部借口和引脚8254 的控制字有两个:一个用来设置计数器的工作方式,称为方式控制字;另一个用来设置读回命令,称为读回控制字。这两个控制字共用一个地址,由标识位来区分。控制字格式如表

1所示。 表1 8254的方式控制字 表2 8254 读出控制字格式 表3 8254 状态字格式 8254 实验单元电路图如下图所示:

五、实验步骤及相应操作结果 1. 计数应用实验 编写程序,将8254 的计数器0 设置为方式3,计数值为十进制数4,用单次脉冲KK1+ 作为CLK0 时钟,OUT0 连接MIR7,每当KK1+按动5 次后产生中断请求,在屏幕上显示字符“M”。 实验步骤: (1)实验接线如图2所示。 (2)编写实验程序,经编译、链接无误后装入系统。 (3)运行程序,按动KK1+产生单次脉冲,观察实验现象。(4)改变计数值,验证8254 的计数功能。

计数器实验报告

实验4 计数器及其应用 一、实验目的 1、学习用集成触发器构成计数器的方法 2、掌握中规模集成计数器的使用及功能测试方法 二、实验原理 计数器是一个用以实现计数功能的时序部件,它不仅可用来计脉冲数,还常用作数字系统的定时、分频和执行数字运算以及其它特定的逻辑功能。 计数器种类很多。按构成计数器中的各触发器是否使用一个时钟脉冲源来分,有同步计数器和异步计数器。根据计数制的不同,分为二进制计数器,十进制计数器和任意进制计数器。根据计数的增减趋势,又分为加法、减法和可逆计数器。还有可预置数和可编程序功能计数器等等。目前,无论是TTL还是CMOS集成电路,都有品种较齐全的中规模集成计数器。使用者只要借助于器件手册提供的功能表和工作波形图以及引出端的排列,就能正确地运用这些器件。 1、中规模十进制计数器 CC40192是同步十进制可逆计数器,具有双时钟输入,并具有清除和置数等功能,其引脚排列及逻辑符号如图5-9-1所示。 图5-9-1 CC40192引脚排列及逻辑符号 图中LD—置数端 CP U—加计数端 CP D—减计数端 CO—非同步进位输出端BO—非同步借位输出端 D0、D1、D2、D3—计数器输入端 Q0、Q1、Q2、Q3—数据输出端 CR—清除端

CC40192的功能如表5-9-1,说明如下: 表5-9-1 输 入 输 出 CR LD CP U CP D D 3 D 2 D 1 D 0 Q 3 Q 2 Q 1 Q 0 1 × × × × × × × 0 0 0 0 0 0 × × d c b a d c b a 0 1 ↑ 1 × × × × 加 计 数 0 1 1 ↑ × × × × 减 计 数 当清除端CR 为高电平“1”时,计数器直接清零;CR 置低电平则执行其它功能。 当CR 为低电平,置数端LD 也为低电平时,数据直接从置数端D 0、D 1、D 2、D 3 置入计数器。 当CR 为低电平,LD 为高电平时,执行计数功能。执行加计数时,减计数端CP D 接高电平,计数脉冲由CP U 输入;在计数脉冲上升沿进行 8421 码十进制加法计数。执行减计数时,加计数端CP U 接高电平,计数脉冲由减计数端CP D 输入,表5-9-2为8421码十进制加、减计数器的状态转换表。 表5-9-2 加法计数 输入脉冲数 0 1 2 3 4 5 6 7 8 9 输出 Q 3 0 0 0 0 0 0 0 0 1 1 Q 2 1 1 1 1 Q 1 0 0 1 1 0 0 1 1 0 0 Q 0 1 0 1 1 1 1 减计数 2、计数器的级联使用 一个十进制计数器只能表示0~9十个数,为了扩大计数器范围,常用多个十进制计数器级联使用。 同步计数器往往设有进位(或借位)输出端,故可选用其进位(或借位)输出信号驱动下一级计数器。 图5-9-2是由CC40192利用进位输出CO 控制高一位的CP U 端构成的加数级联图。

数字电路实验报告——进制计数器逻辑功能及其应用

24进制计数器逻辑功能及其应用 一、实验目的: 1. 熟悉中等规模集成电路计数器74LS160的逻辑功能,使用方法及应用。 2. 掌握构成计数器的方法。 二、实验设备及器件: 1. 数字逻辑电路实验板1片 2. 74HC90同步加法二进制计数器2片 3. 74HC00二输入四与非门1片 4. 74HC04 非门1片 三、实验原理: 计数器是一个用以实现计数功能的时序部件,它不仅可用来计脉冲数,还常用作数字系统的定时、分频和执行数字运算以及其它特定的逻辑功能。 计数器种类很多。按构成计数器中的各触发器是否使用一个时钟脉冲源来分,有同步计数器和异步计数器。根据计数制的不同,分为二进制计数器,十进制计数器和任意进制计数器。根据计数的增减趋势,又分为加法、减法和可逆计数器。还有可预置数和可编程序功能计数器等等。目前,无论是TTL还是CMOS集成电路,都有品种较齐全的中规模集成计数器。使用者只要借助于器件手册提供的功能表和工作波形图以及引出端的排列,就能正确地运用这些器件。 集成计数器74HC90是二-五-十进制计数器,其管脚排列如图。

四、实验内容

实验电路图: 用74HC00与非门和74HC04的非门串联,构成与门。74HC00的引脚图和真值表如图:

74HC04的引脚图与真值表如图: 按实验电路图,参照各个芯片的引脚图和真值表,连接电路。其中Q0到Q3分别连到数码管的对应的D0到D3,CP0端接到时钟脉冲,然后检查电路无误后,加电源,观察现象。实验结果:个位数码管随时间显示0、1、2、3、4、5、6、7、8、9,十位数码管显示个位进位计数结果,按0、1、2变化,当数字增加到23后,数码管自动清零,又从零开始变化。 五、实验心得: 本次实验,通过对计数器工作过程的探索,基本上了解了数码计数器的工作原理,以及74HC160的数字特点,让我更进一步掌握了如何做好数字电子数字实验,也让我认识到自身理论知识的不足和实践能力的差距,以及对理论结合实践的科学方法有了更深刻理解。

四位十进制频率计

四位十进制频率计

————————————————————————————————作者:————————————————————————————————日期:

一、设计任务与要求 1.设计4位十六进制频率计,学习较复杂的数字系统设计方法; 2.深入学习数字系统设计的方法与步骤; 3.用元件例化语句写出频率计的顶层文件; 4.用VHDL硬件描述语言进行模块电路的设计; 5.设计硬件要求:PC机,操作系统为Windows2000/XP,本课程所用系统均为 max+plus II 5.1设计平台,GW48系列SOPC/EDA实验开发系统。 二、总体框图 2.1工作原理以及方案 原理工作说明: 根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1秒的对输入信号脉冲计数允许的信号;1秒计数结束后,计数值锁入锁存器的锁存信号和为下一测频计数周期作准备的计数器清0信号。这3个信号可以由一个测频控制信号发生器产生,即图(a)中的TESTCTL,它的设计要求是,TESTCTL的计数使能信号CNT_EN 能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT4B的ENA使能端进行同步控制。当CNT_EN高电平时,允许计数;低电平时停止计数,并保持其所计的脉冲数。在停止计数期间,首先需要产生一个锁存信号LOAD,在该信号上升沿时,将计数器在前1秒钟的计数值锁存进各锁存器REG4B中,并由外部的7段译码器译出,显示计数值。设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存信号之后,必须有一清零信号RST_CNT对计数器进行清零,为下1秒钟的计数操作作准备。其工作时序波形如图(a)。

数字时钟设计实验报告

电子课程设计题目:数字时钟

数字时钟设计实验报告 一、设计要求: 设计一个24小时制的数字时钟。 要求:计时、显示精度到秒;有校时功能。采用中小规模集成电路设计。 发挥:增加闹钟功能。 二、设计方案: 由秒时钟信号发生器、计时电路和校时电路构成电路。 秒时钟信号发生器可由振荡器和分频器构成。 计时电路中采用两个60进制计数器分别完成秒计时和分计时;24进制计数器完成时计时;采用译码器将计数器的输出译码后送七段数码管显示。 校时电路采用开关控制时、分、秒计数器的时钟信号为校时脉冲以完成校时。 三、电路框图: 图一数字时钟电路框图 四、电路原理图: (一)秒脉冲信号发生器 秒脉冲信号发生器是数字电子钟的核心部分,它的精度和稳定度决定了数字钟的质

量。由振荡器与分频器组合产生秒脉冲信号。 振荡器: 通常用555定时器与RC构成的多谐振荡器,经过调整输出1000Hz 脉冲。 分频器: 分频器功能主要有两个,一是产生标准秒脉冲信号,一是提供功能 扩展电路所需要的信号,选用三片74LS290进行级联,因为每片为1/10分频器,三片级联好获得1Hz标准秒脉冲。其电路图如下: 图二秒脉冲信号发生器 (二)秒、分、时计时器电路设计 秒、分计数器为60进制计数器,小时计数器为24进制计数器。 60进制——秒计数器 秒的个位部分为逢十进一,十位部分为逢六进一,从而共同完成60进制计数器。当计数到59时清零并重新开始计数。秒的个位部分的设计:利用十进制计数器CD40110设计10进制计数器显示秒的个位。个位计数器由0增加到9时产生进位,连在十位部计数器脉冲输入端CP,从而实现10进制计数和进位功能。利用74LS161和74LS11设计6进制计数器显示秒的十位,当十位计数器由0增加到5时利用74LS11与门产生一个高电平接到个位、十位的CD40110的清零端,同时产生一个脉冲给分的个位。其电路图如下: 图三 60进制--秒计数电路 60进制——分计数电路 分的个位部分为逢十进一,十位部分为逢六进一,从而共同完成60进制计数器。当计数到59时清零并重新开始计数。秒的个位部分的设计:来自秒计数电路的进位脉冲使分的个位加1,利用十进制计数器CD40110设计10进制计数器显示秒的个位。个位计数器由0增加到9时产生进位,连在十位部计数器脉冲输入端CP,从而实现10进制计数和进位功能。利用74LS161和74LS11设计6进制计数器显示秒的十位,当十位计数器由0

同步计数器的设计实验报告文档

2020 同步计数器的设计实验报告文档 Contract Template

同步计数器的设计实验报告文档 前言语料:温馨提醒,报告一般是指适用于下级向上级机关汇报工作,反映情况,答复上级机关的询问。按性质的不同,报告可划分为:综合报告和专题报告;按行文的直接目的不同,可将报告划分为:呈报性报告和呈转性报告。体会指的是接触一件事、一篇文章、或者其他什么东西之后,对你接触的事物产生的一些内心的想法和自己的理解 本文内容如下:【下载该文档后使用Word打开】 同步计数器的设计实验报告 篇一:实验六同步计数器的设计实验报告 实验六同步计数器的设计 学号: 姓名: 一、实验目的和要求 1.熟悉JK触发器的逻辑功能。 2.掌握用JK触发器设计同步计数器。 二、实验仪器及器件 三、实验预习 1、复习时序逻辑电路设计方法。 ⑴逻辑抽象,得出电路的状态转换图或状态转换表 ①分析给定的逻辑问题,确定输入变量、输出变量以及电路的状态数。通常都是取原因(或条件)作为输入逻辑变量,取结

果作输出逻辑变量。 ②定义输入、输出逻辑状态和每个电路状态的含意,并将电路状态顺序编号。 ③按照题意列出电路的状态转换表或画出电路的状态转换图。通过以上步骤将给定的逻辑问题抽象成时序逻辑函数。 ⑵状态化简 ①等价状态:在相同的输入下有相同的输出,并且转换到同一次态的两个状态。 ②合并等价状态,使电路的状态数最少。 ⑶状态分配 ①确定触发器的数目n。因为n个触发器共有2n种状态组合,所以为获得时序电路所需的M个状态,必须取2n1<M2n ②给每个电路状态规定对应的触发器状态组合。 ⑷选定触发器类型,求出电路的状态方程、驱动方程和输出方程 ①根据器件的供应情况与系统中触发器种类尽量少的原则谨慎选择使用的触发器类型。 ②根据状态转换图(或状态转换表)和选定的状态编码、触发器的类型,即可写出电路的状态方程、驱动方程和输出方程。 ⑸根据得到的方程式画出逻辑图 ⑹检查设计的电路能否自启动 ①电路开始工作时通过预置数将电路设置成有效状态的一种。 ②通过修改逻辑设计加以解决。

相关文档
最新文档