数字频率计实验报告

合集下载

实验报告模板:实验四 数字频率计设计

实验报告模板:实验四 数字频率计设计

实验四数字频率计设计【实验目的】1.掌握数字频率计的Verilog描述方法;2.学习设计仿真工具的使用方法;3.学习层次化设计方法;【实验内容】1.用4位十进制计数器对用户输入时钟进行计数,计数间隔为1秒,计数满1秒后将计数值(即频率值)锁存到4位寄存器中显示,并将计数器清0,再进行下一次计数。

2.为上述设计建立元件符号【实验原理】根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽位1 秒的输入信号脉冲计数允许信号;1秒计数结束后,计数值锁入锁存器的锁存信号和为下一次测频计数周期做准备的计数器清零信号。

这3个信号由测频控制信号发生器TESTCTL产生,它的设计要求是,TESTCTL的计数使能信号输出CNT_EN 能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT10的ENA使能端进行同步控制。

当CNT_EN高电平时,允许计数;当CNT_EN低电平时停止计数,并保持所计的脉冲数。

在停止计数期间,首先需要一个锁存信号LOAD的上跳沿将计数器在前1秒钟的计数值锁存进各个锁存器REG4B中,并由外部的七段译码器译出,显示计数值。

设置锁存器的好处是,显示数据稳定,不会由于周期性的清零信号而不断闪烁。

信号锁存之后,还必须用清零信号RST_CNT对计数器进行清零,为下1秒钟的计数操作做准备。

【程序源代码】(加注释)module CNT10(CLK,RST,EN,COUT,DOUT); //4位计数器input CLK,RST,EN; //时钟,复位,时钟使能output COUT; //计数进位输出output[3:0] DOUT; //计数数据输出[3:0] Q; reg COUT;always @ (posedge CLK or posedge RST)begin //时序部分if(RST) Q=0; //RST=1时,对内部寄存器单元异步清零else if(EN) begin //同步使能EN=1,则允许计数if(Q<9) Q=Q+1; //当Q小于9时,累加计数else Q=0;end //否则一个时钟后清0返回初值endalways @ (Q) //组合电路过程if(Q==4'b1001) COUT=1; //当Q==4'b1001时,输出进位COUT=1else COUT=0; //否则,输出进位为0assign DOUT=Q; //把Q赋值给DOUTendmodulemodule RGB4(DIN,LOAD,DOUT); //4为数据寄存器input LOAD; //加载信号input[3:0] DIN; //外加输入信号output[3:0] DOUT;reg[3:0] DOUT;always @ (posedge LOAD)DOUT=DIN; // LOAD有效则将外加输入信号加载endmodulemodule CNTL(CLK,CNL_EN,RST_CNL,LOAD);//控制部分input CLK; //由CLK信号产生CNL_EN,RST_CNL,LOAD信号output CNL_EN,RST_CNL,LOAD; 时钟使能,时钟复位,数据加载控制信号reg CLKDIV,CNL_EN,LOAD,RST_CNL;always @ (posedge CLK)CLKDIV=~CLKDIV; //在时钟信号在上升沿时,将CLKDIV取反always @ (posedge CLK) beginCNL_EN=CLKDIV; //在时钟信号在上升沿时, 把CLKDIV赋给使能信号CNL_EN LOAD=~CLKDIV;end //在时钟信号在上升沿时, 将CLKDIV取反并赋值给加载信号always @ (CLK) beginif(CLK==1'b0&&CNL_EN==1'b0)RST_CNL=1; //当使能信号与时钟信号均为低电平时,RST_CNL=1 elseRST_CNL=0; end //否则RST_CNL=0endmodulemodule FREG (clk1HZ,uclk,led0,led1,led2,led3,rst,en,load);input clk1HZ, uclk; //时钟信号和待测信号output [3:0]led0,led1,led2,led3; //4个八段数码管output load,rst,en; //复位和加载信号wire in_load,in_rst,in_en,c0,c1,c2;wire [3:0]dout0,dout1,dout2,dout3;assign load=in_load;assign rst=in_rst;assign en=in_en;CNTL u1(.CLK(clk1HZ),.CNL_EN(in_en),.RST_CNL(in_rst),.LOAD(in_load));CNT10 u2 (.CLK(uclk),.EN(in_en),.RST(in_rst),.COUT(c0),.DOUT(dout0));CNT10 u3 (.CLK(c0),.EN(in_en),.RST(in_rst),.COUT(c1),.DOUT(dout1));CNT10 u4 (.CLK(c1),.EN(in_en),.RST(in_rst),.COUT(c2),.DOUT(dout2));CNT10 u5 (.CLK(c2),.EN(in_en),.RST(in_rst),.DOUT(dout3));RGB4 u6 (.DIN(dout0),.LOAD(in_load),.DOUT(led0));RGB4 u7 (.DIN(dout1),.LOAD(in_load),.DOUT(led1));RGB4 u8 (.DIN(dout2),.LOAD(in_load),.DOUT(led2));RGB4 u9 (.DIN(dout3),.LOAD(in_load),.DOUT(led3));LED7 u10 (.IN(led0));LED7 u11 (.IN(led1));LED7 u12 (.IN(led2));LED7 u13 (.IN(led3));endmodule【元件符号与总框图】【仿真和测试结果】功能分析:在波形中,CLK1HZ的频率为1HZ,以CLK1HZ为输入,产生CNL_EN(en),RST_CNL(rst),LOAD(load)的输出波形。

数字频率计课程设计实习报告

数字频率计课程设计实习报告

数字频率计设计报告书一、设计要求设计一个4位十进制数字式频率计,最大测量范围为10MHz。

量程分10kHz、100kHz、1MHz和10MHz四档(最大读数分别为9.999kHz、99.99kHz、999.9kHz、9999.kHz).量程自动转换规则如下:(1)当读数大于9999时,频率计处于超量程状态,此时显示器发出溢出指示,下一次测量时,量程自动增大一档,小数点位置随量程变更自动移位。

(2)可用手动方式使量程在每次测量开始时处于最低档。

显示方式如下:(3)采用记忆显示方式,即计数过程中不显示数据,待计数过程结束以后,显示计数结果,将此显示结果保持到下一次计数结束。

显示时间应不小于1s。

(4)送入信号应是符合CMOS电路要求的脉冲波,对于小信号模拟信号应有放大整形电路。

二、方案设计<1>整体思路所谓频率就是周期性信号在单位时间 (1s)内变化的次数。

若在一定时间间隔 T内测得周期性信号的重复变化次数为 N ,则频率可表示为 f =N /T (Hz)。

被测信号fx经放大整形电路变成计数电路所要求的脉冲信号,其频率与被测信号fx的频率相同。

基准电路提供标准时间基准信号clk,其高电平持续时间 t 1 = 1 s,当 1 s信号来到时 ,闸门电路开通 ,被测脉冲信号通过闸门电路,成为计数电路的计数脉冲 CP,计数电路开始计数,直到 ls信号结束时闸门电路关闭 ,停止计数。

若在闸门时间 1 s内计数电路计得的脉冲个数为 N ,则被测信号频率 f =NHz。

控制电路的作用有两个:一是产生锁存脉冲 CLK,使显示电路上的数字稳定;二是产生清“0”脉冲,使计数电路每次测量从零开始计数。

<2>时钟信号的选择设计电路中时钟信号采用12M有源晶振产生,下面是12M有源晶振引脚图:<3>整形电路的选择整形电路中可以用运算放大器LM311组成电压选择器实现,以下是关于此芯片的资料:引脚功能:GROUND/GND 接地INPUT + 正向输入端INPUT - 反向输入端OUTPUT 输出端BALANCE 平衡BALANCE/STROBE 平衡/选通V+ 电源正V- 电源负NC 空脚LM311引脚图由于LM311过于复杂且此次设计要求精度不高,整形电路可以改为如下电路:这样产生稳定3.3V为幅值的信号送入EPM570中,对芯片起到保护作用。

频率计实验报告

频率计实验报告

频率计实验报告一、实验目的本次实验的目的是通过设计和搭建频率计电路,掌握频率测量的基本原理和方法,熟悉相关电子元器件的使用,提高电路设计和调试的能力,并深入理解数字电路中计数器、定时器等模块的工作原理。

二、实验原理频率是指周期性信号在单位时间内重复的次数。

频率计的基本原理是通过对输入信号的周期进行测量,并将其转换为频率值进行显示。

常见的频率测量方法有直接测频法和间接测频法。

直接测频法是在给定的闸门时间内,对输入信号的脉冲个数进行计数,从而得到信号的频率。

间接测频法则是先测量信号的周期,然后通过倒数计算出频率。

在本次实验中,我们采用直接测频法。

使用计数器对输入信号的脉冲进行计数,同时使用定时器产生固定的闸门时间。

在闸门时间结束后,读取计数器的值,并通过计算得到输入信号的频率。

三、实验设备与器材1、数字电路实验箱2、示波器3、函数信号发生器4、集成电路芯片(如计数器芯片、定时器芯片等)5、电阻、电容、导线等若干四、实验步骤1、设计电路原理图根据实验要求和原理,选择合适的计数器芯片和定时器芯片,并设计出相应的电路连接图。

确定芯片的引脚连接方式,以及与外部输入输出信号的连接关系。

2、搭建实验电路在数字电路实验箱上,按照设计好的电路原理图,插入相应的芯片和元器件,并使用导线进行连接。

仔细检查电路连接是否正确,确保无短路和断路现象。

3、调试电路接通实验箱电源,使用示波器观察输入信号和输出信号的波形,检查电路是否正常工作。

调整函数信号发生器的输出频率和幅度,观察频率计的测量结果是否准确。

4、记录实验数据在不同的输入信号频率下,记录频率计的测量值,并与函数信号发生器的设定值进行比较。

分析测量误差产生的原因,并尝试采取相应的措施进行改进。

五、实验数据与分析以下是在实验中记录的部分数据:|输入信号频率(Hz)|测量值(Hz)|误差(%)||||||100|98|2||500|495|1||1000|990|1||2000|1980|1|从数据中可以看出,测量值与输入信号的实际频率存在一定的误差。

数字频率计实验报告

数字频率计实验报告

考虑到测量方便,将数字频率计划分为四档:10~99Hz 、100~999Hz 、1000~9999Hz 、10000~99999Hz 。

这样可以保证每一档三位有效数字,而且第三位有效数字误差在±2以内时即可达到精度要求。

三个输入信号:待测信号、标准时钟脉冲信号和复位脉冲信号。

设计细化要求:频率计能根据数字频率计设计计双0102 雷昊 2001011830786一、课程设计内容及要求本次课程设计要求设计并用FPGA 实现一个数字频率计,具体设计要求如下:测量频率范围: 10Hz ~100KHz 精度: ΔF / F ≤ ±2 %系统外部时钟: 1024Hz 测量波形: 方波 Vp-p = 3~5 V 硬件设备:Altera Flex10K10 五位数码管 LED 发光二极管编程语言:Verilog HDL / VHDL二、系统总体设计输入待测信号频率自动选择量程,并在超过最大量程时显示过量程,当复位脉冲到来时,系统复位,重新开始计数显示频率。

基于上述要求,可以将系统基本划分为四个模块,分别为分频、计数、锁存和控制,并可以确定基本的连接和反馈,如上图所示。

三、系统及模块设计与说明如左图所示为数字频率计测量频率的原理图。

已知给定标准时钟脉冲高电平时间,将此0T 高电平信号作为计数器闸门电平,通过计数器得到时间内待测脉冲的个数N ,则有。

由图示可以看出,一个闸门电平时间内0T 0T Nf计数的最大误差为N ±1,为保证误差要求取N ≥100。

经计算,四档的闸门电平时间分0T 别为10s 、1s 、0.1s 和0.01s 。

仅对计数器计数值N 进行简单的移位即可得到结果。

产生闸门电平的工作由分频器完成。

分频器采用计数分频的方法,产生计数闸门电平和一系列控制脉冲,并接受计数器和控制器的反馈。

控制器主要用来判断计数器计数是否有效,从而控制档位转换,锁存器打开、关闭和设定值。

计数器在分频器和控制器的作用下对输入待测信号计数,并把计数值输出,在计数溢出时向控制器和分频器发送溢出脉冲。

数字频率计设计实验报告

数字频率计设计实验报告

成绩指导教师日期张歆奕2011-5-12 五邑大学实验报告实验课程名称:电子系统EDA院系名称:信息学院专业名称:通信工程实验项目名称:实验3 数字频率计班级:AP08054 学号:AP0805422 报告人:彭志敏实验3 数字频率计一、实验目的1、学会利用Quartus II 进行层次化设计;2、练习混合设计输入方法;3、巩固用实验箱验证设计的方法。

二、频率计的原理数字频率计是用来测量输入信号的频率并显示测量结果的系统。

一般基准时钟的高电平的持续时间为01T S ,若在这0T 内被测信号的周期数为N 则被测信号的频率就是N ,选择不同的0T ,可以得到不同的测量精度。

一般0T 越大,测量精度越高,但一次的测量时间及频率计所需的硬件资源也增加。

下面是数字频率计测量原理示意图(图一):▲图一:数字频率计测量原理示意图三、频率计设计及其简要说明(可分模块进行说明)数字频率计可由三模块组成,控制模块、计数模块、锁存显示模块。

下面先介绍顶层设计,然后分模块介绍。

1.顶层设计。

改频率计顶层设计采用原理设计,主要包过6个10进制计数器,一个门控制电路和一个锁存器。

输入引脚包括时钟信号CLK 和复位按钮reset 以及待测频率信号输入端signer ,输出引脚一个24位output 。

▲图二:数字频率计顶层设计原理图2.控制模块。

控制模块是此次设计的设计重点和难点,在标准时钟的作用下,它需要提供计数模块的时钟信号和周期为2秒的控制信号,还要提供锁存器必要时候的锁存允许信号,在一定时候锁存计数器测得的频率值。

主要由门电路和D 触发器构成,下面是控制模块原理图(图三)和时序图(图四)。

▲图三控制模块原理图▲图四控制模块时序图3.计数模块。

计数模块有六个相同的十进制计数器构成,各级计数器之间采用级联方式。

计数器就就采用参数化宏单元调用即可。

下图是参数化宏单元计数器生成的符号(图五):▲图五 10进制计数器4.锁存显示模块。

数字频率计实验报告

数字频率计实验报告

的工作由分频器完成。

分频器采用计数分频的方法,产生计数闸门电平和一系列控制脉冲,并接受计数器和控制器的反馈。

控制器主要用来判断计数器计数是否有效,从而控制档位转换,锁存器打开、关闭和设定值。

计数器在分频器和控制器的作用下对输入待测信号计数,并把计数值输出,在计数溢出时向控制器和分频器发送溢出脉冲。

锁存器用来储存有效计数值,以稳定输出。

四、系统及模块具体实现与说明系统总体结构图见附图1,下面对每一个模块的具体功能、引脚分配和Verilog HDL语言编程实现进行详细说明。

在分模块介绍之前先说明两个重要的寄存器状态STAT[1..0]和LATCH_STAT[1..0]。

STAT[1..0]用来保存当前档位信息,STA T[1..0]等于0则为第一档,等于1则为第二档,依此类推,共可标记四档,它位于控制模块中,也是输出,这样其他模块可以通过访问它得到当前档位信息,而控制模块可以修改它从而调整档位(注:在系统总图中由于所有与STAT[1..0]相连的线路均为对应顺序连接,故没有才用MAX+plus II中默认的总线连接,而是采用单根线)。

LATCH_STAT[1..0]用来保存锁存器状态信息,LATCH_STA T[1..0]=0时,锁存器在CLK作用下打开关闭。

LATCH_STAT[1..0]=1时,锁存器强制置零,CLK无效。

LATCH_STA T[1..0]=2时,锁存器强制置1FFFF,CLK无效。

它也在控制器中,这样可以通过对其改变数值达到控制锁存器锁存、复位和显示过量程的功能。

计数器COUNTER计数器设计图见附图1右上部分,由四个十进制计数器级联。

四个输入端口:时钟脉冲CLK、使能端EN、清零端CLRN、档位状态端STAT[1..0]。

五个输出端口:四个四位十进制BCD码输出OUT1[3..0]~OUT4[3..0]、过量程溢出OF。

功能表见下:表格1十进制计数器功能表进制计数器用V erilogHDL语言编程实现。

EDA数字频率计实验报告

EDA数字频率计实验报告

实验四:数字频率计的设计1.实验目的(1)熟悉Quartus Ⅱ/ISE Suite/ispLEVER软件的基本使用方法。

(2)熟悉GW48-CK或其他EDA实验开发系统的基本使用方法。

(3)学习VHDL基本逻辑电路的综合设计应用。

2.实验内容设计并调试好8位十进制数字频率计,并用GW48-CK或其他EDA实验开发系统(事先应选定拟采用的实验芯片的型号)进行硬件验证。

3.实验要求(1)画出系统的原理图,说明系统中各主要组成部分的功能。

(2)编写各个VHDL源程序。

(3)根据系统的功能,选好测试用例,画出测试输入信号波形或编号测试程序。

(4)根据选用的EDA实验开发装置编好用于硬件验证的管脚锁定表格或文件。

(5)记录系统仿真、逻辑综合及硬件验证结果。

(6)记录实验过程中出现的问题及解决办法。

4.实验条件(1)开发条件:Quartus Ⅱ 8.0。

(2)实验设备:GW48-CK实验开发系统。

(3)拟用芯片:EP3C5F484C8N。

5.实验设计1)系统原理图本设计8位数字频率计,它由1个CLKGEN分频模块,1个测频控制信号发生器TESTCTL、8个有时钟使能的十进制计数器CNT10、1个32位锁存器REG32B,动态信号产生模块CTRLS、数据动态显示模块DISPLAY组成。

6个模块按照图4.1所示的原理图构成顶层电路dtFREQ。

图4.1分频、测频、锁存模块图 4.2 dtFREQ电路原理图2)VHDL程序数字频率计FREQ的底层和顶层电路均采用VHDL文本输入,有关VHDL程CNT10的VHDL源程序:--CNT10.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT10 ISPORT(CLK: IN STD_LOGIC;CLR: IN STD_LOGIC;ENA: IN STD_LOGIC;CQ: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); CO: OUT STD_LOGIC );END ENTITY CNT10;ARCHITECTURE ART OF CNT10 ISSIGNAL CQI: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGINPROCESS(CLK, CLR, ENA) ISBEGINIF CLR='1' THEN CQI<="0000";ELSIF CLK'EVENT AND CLK='1' THENIF ENA='1' THENIF CQI="1001" THENCQI<="0000";ELSECQI<=CQI+'1';END IF;END IF;END IF;END PROCESS;PROCESS(CLK, CQI) ISBEGINIF CLK'EVENT AND CLK='1' THENIF CQI<"1001" THENCO<='0';ELSECO<='1';END IF;END PROCESS;CQ<=CQI;END ARCHITECTURE ART;REG32B的VHDL源程序:--REG32B.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY REG32B ISPORT(LOAD: IN STD_LOGIC;DIN: IN STD_LOGIC_VECTOR(31 DOWNTO 0);DOUT: OUT STD_LOGIC_VECTOR(31 DOWNTO 0)); END ENTITY REG32B;ARCHITECTURE ART OF REG32B ISBEGINPROCESS(LOAD,DIN) ISBEGINIF(LOAD'EVENT AND LOAD='1')THENDOUT<=DIN;END IF;END PROCESS;END ARCHITECTURE ART;TESTCTL的VHDL源程序:--TESTCTL.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY TESTCTL ISPORT(CLK: IN STD_LOGIC;TSTEN: OUT STD_LOGIC;CLR_CNT: OUT STD_LOGIC;LOAD: OUT STD_LOGIC);END ENTITY TESTCTL;ARCHITECTURE ART OF TESTCTL ISSIGNAL DIV2CLK: STD_LOGIC;BEGINPROCESS(CLK) ISBEGINIF CLK'EVENT AND CLK='1' THENDIV2CLK<=NOT DIV2CLK;END IF;END PROCESS;PROCESS(CLK, DIV2CLK) ISBEGINIF CLK='0' AND DIV2CLK='0' THENCLR_CNT<='1';ELSE CLR_CNT<='0';END IF;END PROCESS;LOAD<=NOT DIV2CLK;TSTEN<=DIV2CLK;END ARCHITECTURE ART;CLKGEN的VHDL源程序:--CLKGEN.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CLKGEN ISPORT(CLK_IN: IN STD_LOGIC;RESET: IN STD_LOGIC;CLK_OUT: OUT STD_LOGIC );END ENTITY CLKGEN;ARCHITECTURE ART OF CLKGEN ISCONSTANT DIVIDE_PERIOD:INTEGER:=50000000; --50MHZ TO 1HZ BEGINPROCESS(CLK_IN,RESET) ISVARIABLE CNT:INTEGER RANGE 0 TO 49999999;BEGINIF(RESET='1')THENCNT :=0;CLK_OUT<='0';ELSIF RISING_EDGE(CLK_IN) THENIF(CNT<(DIVIDE_PERIOD/2)) THENCLK_OUT<='1';CNT:=CNT+1;ELSIF(CNT<(DIVIDE_PERIOD-1)) THENCLK_OUT<='0';CNT:=CNT+1;ELSECNT:=0;END IF;END IF;END PROCESS DIVIDE_CLK;END ARCHITECTURE ART;CTRLS的VHDL源程序--CTRLS.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CTRLS ISPORT(CLK: IN STD_LOGIC;SEL: OUT STD_LOGIC_VECTOR(2 DOWNTO 0)); END ENTITY CTRLS;ARCHITECTURE ART OF CTRLS ISSIGNAL CNT:STD_LOGIC_VECTOR(2 DOWNTO 0); BEGINPROCESS(CLK) ISBEGINIF CLK'EVENT AND CLK='1' THENIF CNT="111" THENCNT<="000";ELSECNT<=CNT+'1';END IF;END IF;END PROCESS;SEL<=CNT;END ARCHITECTURE ART;DISPLAY的VHDL源程序--DISPLAY.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY DISPLAY ISPORT( SEL: IN STD_LOGIC_VECTOR(2 DOWNTO 0); DATAIN: IN STD_LOGIC_VECTOR(31 DOWNTO 0); COM: OUT STD_LOGIC_VECTOR(7 DOWNTO 0); SEG: OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END ENTITY DISPLAY;ARCHITECTURE ART OF DISPLAY ISSIGNAL DATA: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGINP1:PROCESS(SEL) ISBEGINCASE SEL ISWHEN"000"=>COM<="11111110";WHEN"001"=>COM<="11111101";WHEN"010"=>COM<="11111011";WHEN"011"=>COM<="11110111";WHEN"100"=>COM<="11101111";WHEN"101"=>COM<="11011111";WHEN"110"=>COM<="10111111";WHEN"111"=>COM<="01111111";WHEN OTHERS=>COM<="11111111";END CASE;END PROCESS P1;P2:PROCESS(SEL)BEGINCASE SEL ISWHEN"000"=>DATA<=DATAIN(3 DOWNTO 0); WHEN"001"=>DATA<=DATAIN(7 DOWNTO 4); WHEN"010"=>DATA<=DATAIN(11 DOWNTO 8); WHEN"011"=>DATA<=DATAIN(15 DOWNTO 12); WHEN"100"=>DATA<=DATAIN(19 DOWNTO 16);WHEN"101"=>DATA<=DATAIN(23 DOWNTO 20); WHEN"110"=>DATA<=DATAIN(27 DOWNTO 24); WHEN"111"=>DATA<=DATAIN(31 DOWNTO 28); WHEN OTHERS=>DATA<="0000";END CASE;CASE DATA ISWHEN"0000"=>SEG<="00111111";WHEN"0001"=>SEG<="00000110";WHEN"0010"=>SEG<="01011011";WHEN"0011"=>SEG<="01001111";WHEN"0100"=>SEG<="01100110";WHEN"0101"=>SEG<="01101101";WHEN"0110"=>SEG<="01111101";WHEN"0111"=>SEG<="00000111";WHEN"1000"=>SEG<="01111111";WHEN"1001"=>SEG<="01101111";WHEN OTHERS=>SEG<="00000000";END CASE;END PROCESS P2;END ARCHITECTURE ART;dtFREQ的VHDL源程序:--dtFREQ.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY dtFREQ ISPORT(FSIN: IN STD_LOGIC;CLK: IN STD_LOGIC;CLK2:IN STD_LOGIC;RESET: IN STD_LOGIC;SEG: OUT STD_LOGIC_VECTOR(7 DOWNTO 0); COM: OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END ENTITY dtFREQ;ARCHITECTURE ART OF dtFREQ IS--CNT10COMPONENT CNT10 ISPORT(CLK, CLR, ENA: IN STD_LOGIC;CQ: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);CO: OUT STD_LOGIC);END COMPONENT CNT10;--REG32BCOMPONENT REG32B ISPORT(LOAD: IN STD_LOGIC;DIN: IN STD_LOGIC_VECTOR(31 DOWNTO 0);DOUT: OUT STD_LOGIC_VECTOR(31 DOWNTO 0)); END COMPONENT REG32B;--TESTCTLCOMPONENT TESTCTL ISPORT(CLK: IN STD_LOGIC;TSTEN: OUT STD_LOGIC;CLR_CNT: OUT STD_LOGIC;LOAD: OUT STD_LOGIC);END COMPONENT TESTCTL;--CLKGENCOMPONENT CLKGEN ISPORT(CLK_IN: IN STD_LOGIC;RESET: IN STD_LOGIC;CLK_OUT: OUT STD_LOGIC );END COMPONENT CLKGEN;--CTRLSCOMPONENT CTRLS ISPORT(CLK: IN STD_LOGIC;SEL: OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END COMPONENT CTRLS;--DISPLAYCOMPONENT DISPLAY ISPORT(SEL: IN STD_LOGIC_VECTOR(2 DOWNTO 0);DATAIN: IN STD_LOGIC_VECTOR(31 DOWNTO 0); COM:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);SEG:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END COMPONENT DISPLAY;SIGNAL SE,SC,SL,CLK1:STD_LOGIC;SIGNAL S0,S1,S2,S3,S4,S5,S6,S7,S8:STD_LOGIC;SIGNAL SD,DOUT:STD_LOGIC_VECTOR(31 DOWNTO 0);SIGNAL SEL:STD_LOGIC_VECTOR(2 DOWNTO 0);BEGINU0:CLKGEN PORT MAP(CLK,RESET,CLK1);U1:TESTCTL PORT MAP(CLK=>CLK1,TSTEN=>SE, CLR_CNT=>SC, LOAD=>SL); U2:CNT10 PORT MAP(CLK=>FSIN, CLR=>SC, ENA=>SE, CQ=>SD(3 DOWNTO 0),CO=>S1);U3:CNT10 PORT MAP(CLK=>S1, CLR=>SC, ENA=>SE, CQ=>SD(7 DOWNTO 4),CO=>S2);U4:CNT10 PORT MAP(S2, SC, SE, SD(11 DOWNTO 8),S3);U5:CNT10 PORT MAP(S3, SC, SE, SD(15 DOWNTO 12),S4);U6:CNT10 PORT MAP(S4, SC, SE, SD(19 DOWNTO 16),S5);U7:CNT10 PORT MAP(S5, SC, SE, SD(23 DOWNTO 20),S6);U8:CNT10 PORT MAP(S6, SC, SE, SD(27 DOWNTO 24),S7);U9:CNT10 PORT MAP(S7, SC, SE, SD(31 DOWNTO 28),S8);U10:REG32B PORT MAP(LOAD=>SL, DIN=>SD, DOUT=>DOUT);U11:CTRLS PORT MAP(CLK2,SEL);U12:DISPLAY PORT MAP(SEL,DOUT,COM(7 DOWNTO 0),SEG(7 DOWNTO 0));END ARCHITECTURE ART;3)仿真波形设置本设计包括三个层次,因此先进行底层的测频信号发生器TESTCTL、计数器CNT10、锁存器REG32B,分频器CLKGEN,动态信号产生模块CTRLS,数据动态显示模块DISPLAY的仿真,再进行顶层dtFREQ的仿真。

数字频率计实验报告

数字频率计实验报告

电工电子课程设计——数字频率计学生姓名陈卓学号1302060413专业通信工程班级0605指导教师宋学瑞目录第一章技术指标…………………………………………………………第二章整体方案设计…………………………………………………第三章单元电路设计…………………………………………………第四章测试与调整……………………………………………………第五章设计小结………………………………………………………第一章技术指标一.整体功能要求频率计主要用于测量正弦波、矩形波、三角波和尖脉冲等周期信号的频率值。

其扩展功能可以测量信号的周期。

二.系统结构要求数字频率计的整体结构要求如图所示。

图中被测信号为外部信号,送入测量电路进行处理、测量,档位转换用于选择测试的项目------频率、周期,若测量频率则自动分档。

数字频率计整体方案结构方框图三、电气指标被测信号波形:正弦波和矩形波。

输入信号电压:0.5~5V测量范围:0~9999Hz和1~100kHz脉冲周期测量范围:100μS~1S具有超量程声、光报警功能显示4位有效数字测量误差小于5%可供选择的元器件见附录第二章整体方案设计现代测量技术及仪器以数字化和智能化为主要发展方向。

数字式时频测量仪器很符合这样的方向。

频率量是几乎不经转换就能得到的数字量,在数字频率计中,被测信号是以脉冲信号方法来传递、控制和计数的,易于做成智能化设备。

数字频率计的基本工作原理是以适当的逻辑电路,使电子计数器在预定的标准时间内累计待测输入信号的脉冲个数,实现频率测量。

频率就是指周期性信号在单位时间内重复出现的次数。

若在一定的时间间隔T内计得这个周期性信号的重复次数N,则其频率可表达为:f=N/T由于计数器可以严格按照上式所表达的频率的定义进行测量,对于上式来说,要测量某个周期现象的频率,就必须解决计数和时间标准问题。

测量方案应至少包括两个部分,即计数部分和时基选择部分。

数字频率计的原理框图如下所示:图A、数字频率计测频原理数字频率计的原理框图如图A所示,从中可以看出测量过程。

数字频率计的设计实验报告

数字频率计的设计实验报告

数字频率计的设计实验报告实验名称:数字频率计的设计实验日期:2021年7月1日实验目的:设计并实现一个基于计数器的数字频率计,使用计数器测量输入信号的频率,并将结果显示在数码管上。

实验器材:FPGA开发板、数字频率计模块、计数器模块、数码管模块。

实验原理:1. 计数器模块设计一个计数器模块,用于计数示波器输入脉冲信号的时间。

计数器的计数时间可以根据需要进行调整。

2. 数字频率计模块设计一个数字频率计模块,用于将计数器的计数时间转换为输入信号的频率。

通过计算计数器的计数值来计算频率,并将结果显示在数码管上。

3. 数码管模块设计一个数码管模块,用于将数字频率计模块计算出的频率值转换为可以在数码管上显示的数码。

实验步骤:1. 搭建实验电路将FPGA开发板连接到计数器模块、数字频率计模块和数码管模块。

2. 编写Verilog代码根据上述原理,编写计数器模块、数字频率计模块和数码管模块的Verilog代码。

3. 编译代码并下载到FPGA开发板使用Xilinx Vivado软件将Verilog代码编译成比特流文件,并将比特流文件下载到FPGA开发板中。

4. 测试实验将示波器的输出信号连接到数字频率计的输入端,并将数字频率计连接到数码管。

通过计算数字频率计的输出,验证数字频率计的测量准确性。

实验结果:经过测试,数字频率计的测量准确度在实验误差范围内。

输入不同频率的信号时,数码管能够正确显示频率值。

实验总结:通过本次实验,成功设计并实现了一个基于计数器的数字频率计。

该实验不仅巩固了计数器、数码管等模块的设计知识,也提高了学生的Verilog编程能力。

在实验中,学生还学习了如何使用FPGA开发板进行数字电路实验,以及测试和验证数字电路的方法和技巧。

数字频率计实验报告

数字频率计实验报告

大连理工大学城市学院数字电路与系统课程设计设计题目:数字频率计学院:电子与自动化学院专业:自动化学生:揣智涵同组人:王晓宁周英茹指导教师:于海霞完成日期:2012年3月26日目录第一章设计任务1.1项目名称1.2项目设计说明1.2.1设计任务和要求1.2.2进度安排1.3项目总体功能模块图第二章需求分析2.1问题基本描述(要求分析得出整个系统流程图)2.2系统模块分解及各模块功能的基本要求第三章设计原理3.1 设计原理3.2 MAXPLUSII介绍第四章系统功能模块设计4.1 FEN模块4.1.1 FEN模块流程图4.1.2 输入输出引脚及其功能说明4.1.3 程序代码实现4.2 SEL模块4.2.1 SEL模块流程图4.2.2输入输出引脚及其功能说明4.2.3程序代码实现4.3 CORNA模块4.3.1 CORNA模块流程图4.3.2 输入输出引脚及其功能说明4.3.3 程序代码实现4.4 LOCK模块4.4.1 LOCK模块流程图4.4.2 输入输出引脚及其功能说明4.4.3 程序代码实现4.5 CH模块4.5.1 输入输出引脚及其功能说明4.5.2 程序代码实现4.6 DISP模块4.6.1 输入输出引脚及其功能说明4.6.2 程序代码实现第五章调试并分析结果5.1输入说明5.2预计输出5.3测试结果记录5.4测试结果分析第六章结论心得体会参考文献第一章设计任务1.1 项目名称:数字频率计1.2 项目设计说明1.2.1 设计任务和要求此频率计共分4档:一档:0~9999Hz;二档:10~99.99kHZ;三档:100.0~999.9kHz;,四档:1.000~999MHz;在换挡的设计方面,此程序突破了以往改变闸门时间的方法,使自动换挡的实现更加简单可靠。

1.2.2 进度安排第一节课:画出模块及程序流程图第二节课:调试各模块程序使其无误第三节课:连接整个程序并下载到试验箱是数字频率计的功能实现第四节课:改进程序设计实现创新,然后完成课程设计报告第五节课:完成答辩1.3 项目总体功能模块图如下图1-1第二章需求分析2.1 问题基本描述所谓频率,就是周期信号在单位时间(1秒)内变化的次数。

数字频率计实验报告

数字频率计实验报告

2011年电子技术实验实验报告频率计一、概述数字频率计是使用领域非常广泛的测量仪器,在计算机、通讯设备、音频视频等科研生产领域不可缺少。

通过十进制数字显示被测信号频率,具有测量迅速,精度高,显示直观等诸多优点。

本实验中,我们使用VHDL开发FPGA的一般流程,采用频率计开发的基本原理和相应的测量方案,在FPGA实验开发板进行数字频率计的设计和实现。

数字频率计是数字电路中的一个典型应用,随着复杂可编程逻辑器件(CPLD)的广泛应用,以EDA工具作为开发手段,运用VHDL语言,将使整个系统大大简化,提高整体的性能和可靠性。

本次的频率计设计主要是顶层设计,通过各个模块综合使用,学习常用的数字系统设计方法。

采用VDHL编程设计实现的数字频率计,除被测信号的整形部分、键输入部分以外,其余全部在一片FPGA芯片上实现,整个系统非常精简,而且具有灵活的现场可更改性。

在不更改硬件电路的基础上,对系统进行各种改进还可以进一步提高系统的性能。

该数字频率计具有高速、精确、可靠、抗干扰性强和现场可编程等优点。

本实验,我采用硬件描述语言VHDL,在软件开发平台ISE上完成,该设计的频率计能准确的测量频率在10Hz到100MHz之间的信号。

使用ModelSim仿真软件对VHDL程序做了仿真,并完成了综合布局布线,最终下载到FPGA上。

VHDL主要用于描述数字系统的结构、行为、功能和接口。

除了含有许多具有硬件特征的语句外,VHDL的语言形式,描述风格以及句法十分类似于一般的计算机高级语言。

VHDL的程序结构特点是将一项工程设计,或称为设计实体(可以是一个元件、一个电路模块或一个系统)分成外部(又称为可视部分,即端口)和内部(又称为不可视部分),即设计实体的内部功能和算法完成部分。

在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其它的设计就可以直接调用这个实体。

这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。

现代电子技术综合实验-数字频率计设计实验报告

现代电子技术综合实验-数字频率计设计实验报告

现代电子技术综合实验数字频率计设计实验报告姓名:学号:、系统总体设计设计要求1、被测输入信号:方波2、测试频率范围为:10Hz〜1MHz 扩展1MHz〜100MHz3、量程分为三档:第一档:闸门时间为1S时,最大读数为999.999KHZ第二档:闸门时间为0.1S时,最大读数为9999.99KHz第三档:闸门时间为0.01S时,最大读数为99999.9KHz。

4、显示工作方式:a用六位BCD七段数码管显示读数。

b、采用记忆显示方法c、实现对高位无意义零的消隐。

系统工作原理信号的频率就是信号在单位时间内所产生的脉冲个数,其表达式为f=N/T ,其中f 为被测信号的频率,N为技术其所累计的脉冲个数,T为产生N个脉冲所需的时间。

技术其所记录的结果,就是被测信号的频率。

如在1s内记录1000个脉冲,则被测信号的频率为1000HZ。

测量频率的基本方法有两种:计数法和计时法,或称测频法和测周期法。

1 、计数法计数法是将被测信号通过一个定时闸门加到计数器进行计数的方法,如果闸门打开的时间为T,计数器得到的计数值为N1,则被测频率为f=N1/T。

改变时间T,贝【J可改变测量频率范围。

如图所示。

计数法测量原理设在T期间,计数器的精确计数值应为N,根据计数器的计数特性可知,N1的绝对误差是N仁N+1,N1的相对误差为A N仁(N1-N)/N=1/N。

由N1的相对误差可知,N的数值愈大,相对误差愈小,成反比关系。

因此,在f以确定的条件下,为减少N的相对误差,可通过增大T的方法来降低测量误差。

当T为某确定值时(通常取1s),则有f仁N1, 而f=N,故有fl的相对误差:A f1=(f1-f)/f=1/f从上式可知fl的相对误差与f成反比关系,即信号频率越高,误差越小;而信号频率越低,贝V测量误差越大。

因此测频法适合用于对高频信号的测量,频率越高,测量精度也越高。

2、计时法计时法又称为测周期法,测周期法使用被测信号来控制闸门的开闭,而将标准时基脉冲通过闸门加到计数器,闸门在外信号的一个周期内打开,这样计数器得到的计数值就是标准时基脉冲外信号的周期值,然后求周期值的倒数,就得到所测频率值。

数字频率计设计实验报告

数字频率计设计实验报告

数字频率计设计实验报告1.实验目的本实验旨在通过设计数字频率计的电路,使学生掌握数字电路的设计与运用,加深对计数器、分频器等数字电路的理解,同时熟悉数字电路及测量方法。

2.实验原理数字频率计的原理基于时间测量,将待测信号的周期或频率转化为时间或计数值,再转化为显示在数码管上的频率或周期。

其电路主要由时基、型切换及显示部分组成。

时基部分是实现数字频率计最核心的部分,具有准确的定频测量功能。

根据时基频率的稳定性,数字频率计还可分为光学时基式和晶体时基式,后者是目前数字频率计设计中较为主流和有效的方案。

型切换部分是将输入信号的周期或频率转化为电平,经一个比较器进行比较,输出脉冲后送到后端的计数器。

可分为一级型切换和两级型切换,一级型切换分频系数较小,能测量的频率范围较宽,但精度相对较低;两级型切换分频系数较多,能够实现更高的精度,但测量范围相对较窄。

显示部分主要由解码器、数码管、驱动器等构成,将计数器输出的数字部分经过解码器解码,以驱动数码管显示实际测量结果。

3.实验内容3.1电路设计本实验按照晶体时基式数字频率计的设计原理,设计一个简单的频率计电路。

时基部分采用简单的晶体振荡器电路,输入3V的电源电压,晶体振荡频率为6M,采用CD4066B型CMOS开关实现时填充寄存器与计数控制部分的切换。

型切换部分采用两级型切换,以加强精度,输入信号经过第一级分频后送到S1端,S1端接CD4066B的开关控制引脚,在S1位置上的6dB衰减电阻衰减输入信号再经过第二级分频后进入计数控制部分。

显示部分采用三片74LS47数码管显示器驱动芯片将数码转移至共阴数码管,选用CD4052B组成的位选开关循环驱动数码管。

3.2电路测试将方法频率计电路搭建完成后,接通电源,输入300Hz、3kHz、30kHz和300kHz的信号,观察数码管的测量结果。

并与示波器进行对比,计算相对误差。

4.实验结果通过实验测试,本设计可以稳定地测量300Hz至300kHz范围内的信号频率,并且测量误差相对较小。

数字频率计实训报告

数字频率计实训报告

一、实训目的本次数字频率计实训旨在使学生掌握数字频率计的基本原理、结构、工作原理以及实际操作技能。

通过实训,学生能够了解数字频率计在电子技术中的应用,提高电子测量和信号处理能力,为今后从事相关领域的工作打下坚实基础。

二、实训环境1. 实训设备:数字频率计、示波器、信号发生器、万用表等。

2. 实训软件:数字频率计操作软件、示波器操作软件等。

3. 实训场地:电子实验室。

三、实训原理数字频率计是一种用于测量信号频率的仪器,它通过数字电路对输入信号进行采样、计数、处理,最终显示出信号的频率。

其基本原理如下:1. 采样:将输入信号按照一定的采样频率进行采样,得到一系列离散的采样值。

2. 计数:对采样值进行计数,得到在一定时间内信号变化的次数。

3. 处理:根据计数结果和采样频率,计算出信号的频率。

四、实训过程1. 数字频率计的结构认识:了解数字频率计的组成部分,如:模拟输入电路、数字信号处理电路、显示电路等。

2. 数字频率计的使用方法:学习数字频率计的操作步骤,包括:开机、设置测量范围、输入信号、读取频率值等。

3. 信号发生器的使用:掌握信号发生器的操作方法,产生不同频率、幅度和波形的信号。

4. 数字频率计的测量:使用数字频率计测量信号发生器产生的信号频率,并与理论值进行比较,分析误差原因。

5. 示波器的使用:观察信号波形,分析信号的频率、幅度、相位等特性。

6. 数据分析与处理:对测量数据进行处理和分析,得出结论。

五、实训结果1. 成功掌握了数字频率计的基本原理、结构和工作原理。

2. 熟练掌握了数字频率计的操作方法,能够独立进行测量和数据分析。

3. 通过实验,验证了数字频率计在电子技术中的应用价值。

4. 提高了电子测量和信号处理能力。

六、实训总结1. 数字频率计是一种重要的电子测量仪器,广泛应用于电子技术领域。

2. 掌握数字频率计的基本原理、结构和工作原理,对于从事电子技术工作具有重要意义。

3. 实训过程中,应注意以下几点:- 熟悉数字频率计的操作方法,避免误操作。

毕业设计194数字式频率计设计实验报告

毕业设计194数字式频率计设计实验报告

数字式频率计设计实验报告频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。

通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门时间为1秒。

数字频率计是用数字显示被测信号频率的仪器,被测信号可以是正弦波,方波或其它周期性变化的信号。

一:设计要求1. 用555产生待测频率信号和定时时机信号。

2.频率测量范围为0000~9999 Hz。

3. 用LED数码管显示频率数值。

4. 计数结束时对数码管清零。

二:设计原理所谓频率,就是周期性信号在单位时间(1s)内变化的次数。

若在一定时间间隔T内测得这个周期性信号的重复变化次数为N,则其频率可表示为f=N/T。

图1①时基电路时基电路的作用是产生一个标准时间信号(高电平持续时间为1s),由定时器555 构成的多谐振荡器产生。

若振荡器的频率,则振荡器的输出波形如图1中的波形II所示,其中t1=1s,t2=0.25s。

由公式t1=0.7(R1+R2)C和t2=0.7R2C,可计算出电阻R1、R2及电容C的值。

图2②逻辑控制电路根据图1(b)所示波形,在计数信号II 结束时产生锁存信号IV,锁存信号IV 结束时产生清“0”信号V。

脉冲信号IV 和V 可由两个单稳态触发器74LS123 产生,它们的脉冲宽度由电路的时间常数决定。

设锁存信号IV 和清“0 ”信号V的脉冲宽度tw 相同,如果要求tw=0.02s ,则得tw=0.45RextCext=0.02s。

若取Rext=10kΩ,则Cext=tw/0.45Rext=4.4μF。

由74LS123 的功能可得,当1RD=1B=1,触发脉冲从1A 端输入时,在触发脉冲的负跳变作用下,输出端Q 1可获得一负脉冲,其波形关系正好满足图1 所示的波形IV 和V 的要求。

手动复位开关S 按下时,计数器清“0”。

图3③锁存器锁存器的作用是将计数器在1s 结束时所计得的数进行锁存,使显示器上能稳定地显示此时计数器的值。

EDA实验四数字频率计实验报告

EDA实验四数字频率计实验报告

EDA技术与应用实验报告学院:电气与信息工程学院班级:指导老师:谭会生老师姓名:学号:实验四:数字频率计的设计一.实验目的(1)熟悉artus I/ISE Suite/ispLEVNRI软件的基本使用方法。

(2)熟悉和掌握GW48-CK或其他EDA实验开发系统的使用。

(3)学习VHDL程序中数据对象、数据类型、顺序语句和并行语句的综合使用。

二.实验条件与要求(1)开发软件:Quartus II 9.0(2)实验设备:PC、GW48-CK EDA实验开发系统。

(3)画出系统的原理框图,说明系统中各个主要功能、编写各个VHDL源程序。

画出输入信号波形并调试和仿真。

三.实验内容设计并调试好八位十进制数字频率计,用GW48-CK实验开发系统进行硬件验证(实现应选择拟采用的实验芯片的型号)进行硬件验证。

四.实验设计(1)VHDL源程序1、8位可自加载加法计数器的源程序CNT10.VHD如下--CNT10.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CNT10 ISPORT(CLK:IN STD_LOGIC;CLR:IN STD_LOGIC;ENA:IN STD_LOGIC;CQ:OUT INTEGER RANGE 0 TO 15;CO:OUT STD_LOGIC);END ENTITY CNT10;ARCHITECTURE ART OF CNT10 ISSIGNAL CQI:INTEGER RANGE 0 TO 15;BEGINPROCESS(CLK,CLR,ENA) ISBEGINIF CLR='1'THEN CQI<=0;ELSIF CLK'EVENT AND CLK='1'THENIF ENA='1'THENIF CQI<9 THEN CQI<=CQI+1;ELSE CQI<=0;END IF;END IF;END IF;END PROCESS; PROCESS(CQI) ISBEGINIF CQI=9 THEN CO<='1'; ELSE CO<='0';END IF;END PROCESS;CQ<=CQI;END ARCHITECTURE ART;(3).完成设计文件输入后,保存文件,对文件进行编译和仿真。

数字频率计实训报告心得

数字频率计实训报告心得

一、引言随着科技的飞速发展,数字技术在各个领域的应用越来越广泛。

数字频率计作为数字测量技术中的一种重要工具,其在电子、通信、科研等领域扮演着至关重要的角色。

为了更好地理解和掌握数字频率计的使用方法,提高自身的实践能力,我参加了数字频率计实训课程。

通过这段时间的学习和实践,我对数字频率计有了更深入的了解,以下是我对这次实训的心得体会。

二、实训内容与过程1. 实训内容本次实训主要围绕数字频率计的基本原理、测量方法、功能应用等方面展开。

具体内容包括:(1)数字频率计的基本原理及结构(2)数字频率计的测量方法及误差分析(3)数字频率计在通信、电子、科研等领域的应用(4)数字频率计的维护与保养2. 实训过程实训过程中,我们首先学习了数字频率计的基本原理和结构,了解了其内部电路及工作原理。

接着,通过实验操作,掌握了数字频率计的测量方法,并进行了误差分析。

最后,我们结合实际应用,探讨了数字频率计在各个领域的应用案例。

三、实训心得体会1. 理论与实践相结合的重要性在实训过程中,我深刻体会到了理论与实践相结合的重要性。

虽然我们在课堂上学习了数字频率计的基本原理,但只有通过实际操作,才能真正掌握其使用方法。

通过动手实践,我对理论知识有了更深刻的理解,同时也提高了自己的动手能力。

2. 数字频率计在各个领域的应用价值实训过程中,我了解到数字频率计在通信、电子、科研等领域的应用非常广泛。

例如,在通信领域,数字频率计可以用于测量信号的频率、相位等参数,为通信设备的研发和调试提供重要依据;在电子领域,数字频率计可以用于测量电路元件的频率特性,为电路设计提供参考;在科研领域,数字频率计可以用于测量物理量的频率,为科学研究提供数据支持。

3. 误差分析的重要性在实训过程中,我们学习了数字频率计的误差分析方法。

误差分析是数字频率计测量过程中的重要环节,通过对误差的识别、分析、修正,可以提高测量结果的准确性。

因此,在今后的工作中,我将更加注重误差分析,提高自己的测量技能。

数字频率计实训报告总结

数字频率计实训报告总结

一、实训背景与目的随着科技的飞速发展,数字频率计在各个领域得到了广泛应用。

为了更好地了解数字频率计的工作原理和实际应用,提高自身的实践能力,我们选择了数字频率计作为实训项目。

本次实训旨在使学生掌握数字频率计的设计原理、实现方法及调试技巧,提高学生在电子设计、电路分析等方面的综合能力。

二、实训内容与过程1. 实训内容本次实训主要包括以下内容:(1)数字频率计的基本原理和设计方法(2)TMS320F2812 DSP芯片及其在数字频率计中的应用(3)数字频率计的硬件电路设计(4)数字频率计的软件编程(5)数字频率计的调试与优化2. 实训过程(1)理论学习:通过查阅相关资料,了解数字频率计的基本原理、TMS320F2812 DSP芯片的功能和应用,为后续的实践环节打下理论基础。

(2)硬件电路设计:根据实训要求,设计数字频率计的硬件电路,包括电源管理模块、输入调理模块、信号处理模块、通讯模块和D触发器等。

(3)软件编程:编写数字频率计的软件程序,实现频率测量、脉宽和占空比测量等功能。

(4)调试与优化:对数字频率计进行调试,检查电路性能,优化软件程序,确保数字频率计能够稳定、准确地测量频率。

三、实训成果与分析1. 实训成果本次实训成功设计并实现了一款基于TMS320F2812 DSP芯片的简易数字频率计。

该频率计具有以下特点:(1)高精度:采用多周期测量原理,提高了测量精度。

(2)宽量程:在保证最大相对误差的前提下,尽可能扩大了测量范围。

(3)易于扩展:可根据实际需求,增加其他功能模块。

2. 实训成果分析(1)硬件电路设计方面:在硬件电路设计过程中,我们充分考虑了电路的稳定性和可靠性,选用合适的元器件,确保电路性能。

(2)软件编程方面:在软件编程过程中,我们采用了模块化设计,提高了代码的可读性和可维护性。

同时,针对数字频率计的测量原理,进行了详细的误差分析,优化了软件程序。

(3)调试与优化方面:在调试过程中,我们针对电路性能和软件程序进行了多次优化,确保数字频率计能够稳定、准确地测量频率。

数字频率计设计实训报告

数字频率计设计实训报告

一、实训目的1. 熟悉数字频率计的原理和设计方法。

2. 学会使用数字电路设计工具进行电路设计。

3. 提高实际动手能力,培养创新思维。

4. 增强团队协作意识。

二、实训内容本次实训以设计一款简易数字频率计为目标,主要内容包括:1. 确定设计指标和功能要求。

2. 设计数字频率计的硬件电路。

3. 编写程序实现频率计的功能。

4. 进行电路调试和测试。

三、设计指标和功能要求1. 频率测量范围:1Hz~99.99kHz。

2. 波形测量:正弦波、方波、三角波等。

3. 数码显示:LCD1602液晶显示屏。

4. 量程选择:手动切换。

5. 误差:≤±1%。

四、硬件电路设计1. 信号输入电路:采用LM324运算放大器作为信号放大和整形电路,确保信号幅度在1Vpp以上。

2. 分频电路:采用74HC390计数器进行分频,将输入信号频率降低到计数器可计数的范围内。

3. 计数电路:采用74HC595移位寄存器实现计数功能,计数结果通过串口输出。

4. 显示电路:采用LCD1602液晶显示屏显示频率值。

5. 控制电路:采用AT89C52单片机作为主控制器,负责信号处理、计数、显示和量程切换等功能。

五、程序设计1. 初始化:设置计数器初值、波特率、LCD1602显示模式等。

2. 主循环:检测信号输入、计数、计算频率、显示结果。

3. 信号处理:对输入信号进行放大、整形、分频等处理。

4. 计数:根据分频后的信号频率,对计数器进行计数。

5. 计算频率:根据计数结果和分频系数计算实际频率。

6. 显示:将计算出的频率值通过串口发送到LCD1602显示屏。

7. 量程切换:根据手动切换的量程,调整分频系数。

六、电路调试与测试1. 调试信号输入电路,确保信号幅度在1Vpp以上。

2. 调试分频电路,确保分频后的信号频率在计数器可计数的范围内。

3. 调试计数电路,确保计数器能够正确计数。

4. 调试显示电路,确保LCD1602显示屏能够正确显示频率值。

频率计实验报告

频率计实验报告

频率计实验报告信息工程实验任务及要求:1.设计一个可测量的数字式频率计,测量范围为1Hz-12MHz。

2.用层次化的设计方法设计该电路,编写各个功能模块的程序。

3.仿真各功能模块,通过观察有关波形确认电路设计是否正确4.完成电路设计后,通过在实验系统上下载,验证设计的正确性实验原理分析:根据总的设计图可知:8位十进制数字频率计的设计有一个测频控制信号发生器TESTCTL,8个有时钟使能的十进制数字计数器CNT10,一个32位锁存器REG32B组成。

测频控制信号发生器的设计原理和要求:频率测量的基本原理是计算每秒钟内待测信号的脉冲个数。

这就要求TESTCTL的计数使能信号TSTEN能产生1秒脉宽的周期信号,并对频率计的每一个计数器CNT10的ENA使能端进行不同控制。

当TSTEN高电平时允许计数,低电平时停止计数,并保持所计的数。

在停止计数的期间,首先需要一个锁存信号Load的上跳沿将计数器在前一秒的计数值锁存进32位锁存器REG32B中,且由外部的七段译码器译出并稳定显示。

设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。

锁存信号之后,必须有一个清零信号CLR_CNT对计数器进行清零,为下一秒钟的计数操作做准备,测频控制信号发生器的工作时序为周期2秒,占空比为0.5的方波,为了产生的方波,需首先建立一个由D触发器构成的二分频器,在每秒时钟CLK上升沿到来时使其翻转,其中控制信号时钟CLK的频率为1Hz,那么信号TSTEN的脉宽恰好为1秒,可以用作闸门信号,然后根据测频的时序要求,可得出信号Load和CLR_CNT的逻辑描述,在一个计数完成后,即计数使能信号TSTEN在1秒的高电平后,利用其反向值的上升沿产生一个锁存信号Load,0.5秒后,CLR_CNT产生一个清零信号跳沿。

各个模块的源程序如下所示:TESTCTL仿真波形:REG32B仿真波形:分析:设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于Verilog HDL数字频率计设计与实现学院:专业:学号:姓名:指导老师:完成日期:基于Verilog HDL数字频率计设计与实现摘要:在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。

测量频率的方法有多种,其中电子计数器测量频率具有精度高、使用方便、测量迅速,以及便于实现测量过程自动化等优点,是频率测量的重要手段之一。

电子计数器测频有两种方式:一是直接测频法,即在一定闸门时间内测量被测信号的脉冲个数;二是间接测频法,如周期测频法。

直接测频法适用于高频信号的频率测量,间接测频法适用于低频信号的频率测量。

本文阐述了用Verilog HDL语言设计了一个简单的数字频率计的过程。

关键词:周期;EDA;Verilog HDL;数字频率计;波形仿真.Abstract:Be one of the most fundamental parameter in electron technology medium frequency, parameter measurement scheme, measurement result all have very close something to do with a lot of electricity and, the frequency measurement looks like being more important therefore right away. The method measuring frequency has various, among them the electronic counter measures frequency having accuracy height, usage is convenient, measurement is prompt, easy to realize measurement process共25页automation waits for merit and, counter measures frequency having two kinds way: sure frequency law first directly ,be to measure the pulse number the signal is measured within certain sluice gate time; Two is indirect measure frequency law, if the period measures frequency law, Measure frequency law directly applying to the high frequency signal's. The main .This paper expounds the process of using Verilog HDL to design a simple digital frequency.Keyword: period;EDA;Verilog HDL;Figure frequency meter;wave simulation.目录1 引言 (3)1.1 数字频率计概述: (5)1.2 设计目的: (6)1.3设计内容: (6)1.4 频率测量的思想和方法: (6)共25页2 Verilog HDL简介 (7)3 数字频率计系统框图 (8)3.1数字频率计系统框图: (8)3.2数字频率计系统模块划分结构: (8)4 数字频率计程序设计及实现 (10)4.1分频模块div_clk: (10)4.2基准频率选择模块fbase_sel: (11)4.3门控模块gate_ctrl: (13)4.4计数模块counter: (15)4.5寄存器模块latch: (17)4.6显示模块 display: (19)4.7顶层模块 topfile: (21)5 系统测试 (23)5.1测试数据: (23)5.2误差变化图: (24)5.3结果分析: (24)6 总结 (25)7参考文献 (25)8致谢 (25)附录: (26)1 引言在电子测量领域中,频率测量的精确度是最高的,可达10—10E-13数量级。

因此,在生产过程中许多物理量,例如温度、压力、流量、液位、PH值、振动、共25页位移、速度、加速度,乃至各种气体的百分比成分等均用传感器转换成信号频率,然后用数字频率计来测量,以提高精确度。

国际上数字频率计的分类很多。

按功能分类,测量某种单一功能的计数器。

如频率计数器,只能专门用来测量高频和微波频率;时间计数器,是以测量时间为基础的计数器,其测时分辨力和准确度很高,可达ns数量级;特种计数器,它具有特种功能,如可逆计数器、予置计数器、差值计数器、倒数计数器等,用于工业和白控技术等方面。

数字频率计按频段分类 (1)低速计数器:最高计数频率<10MHz; (2)中速计数器:最高计数频率10—100MHz; (3)高速计数器:最高计数频率>100MHz; (4)微波频率计数器:测频范围1—80GHz或更高。

本实验使用了FPGA工程设计的一般流程(如图1.1所示),使用Verilog HDL 语言设计了基于直接测频法的简单的中速数字频率计。

图1.1 FPGA工程设计的一般流程1.1 数字频率计概述:频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。

通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门共25页时间为1秒。

闸门时间也可以大于或小于一秒。

闸门时间越长,得到的频率值就越准确,但闸门时间越长则没测一次频率的间隔就越长。

闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。

本文数字频率计是用数字显示被测信号频率的仪器,被测信号是被放大整形后的正弦波,如配以适当的传感器和整形电路,可以对多种物理量进行测试,比如机械振动的频率,转速,声音的频率以及产品的计件等等。

因此,数字频率计是一种应用很广泛的仪器,电子系统非常广泛的应用领域内,到处可见到处理离散信息的数字电路。

1.2 设计目的:1.学会使用Veilog 硬件描述语言;2.学会利用Xilinx进行层次化计;3.学会电路模块化设计。

1.3设计内容:设计一个计数式频率计,其频率测量范围为10Hz~10MHz,测量结果用6只数码管显示。

有三个带锁按键开关(任何时候都只能有一个被按下)被用来选择1S、0.1S和0.01S三个闸门时间中的一个。

有两只LED,一只用来显示闸门的开与闭,另一只当计数器溢出时做溢出指示。

图1.3显示了该频率计前面板的基本排布构想。

Frequency CounterINPUTGA TEOVERKHzffPOWER 1s 0.1s 0.01s共25页图1.3 所示该频率计前面板基本排布构想图。

1.4 频率测量的思想和方法:众所周知,频率信号易于传输,抗干扰性强,可以获得较好的测量精度。

因此,频率检测是电子测量领域最基本的测量之一。

频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。

通常情况下计算每秒内待测信号的脉冲个数,即闸门时间为1 s。

闸门时间可以根据需要取值,大于或小于1 s都可以。

闸门时间越长,得到的频率值就越准确,但闸门时间越长,则每测一次频率的间隔就越长。

闸门时间越短,测得的频率值刷新就越快,但测得的频率精度就受影响。

一般取1 s作为闸门时间。

1.频率测量的基本思想测量被测信号在单位时间内的脉冲个数,其数字表达式f = N / t其中:f为被测信号的频率N为脉冲的个数t为被测信号产生N个脉冲所需的时间2.频率测量方法直接测量法:直接测量被测信号的频率,通过计数法来对被测信号在一定时间内的脉冲个数进行计数。

直接测量法的结构框图如图1.4所示。

共25页图1.4 直接测量法的结构框图2 Verilog HDL简介电子设计自动化(EDA)的关键技术之一是要求用形式化方法来描述数字系统的硬件电路,即要用所谓硬件描述语言来描述硬件电路。

所以硬件描述语言及相关的仿真、综合等技术的研究是当今电子设计自动化领域的一个重要课题。

Verilog HDL是一种硬件描述语言(hardware description language),为了制作数位电路(数字电路)而用来描述ASICs和FPGAs的设计之用。

Verilog 的设计者想要以 C 程序语言(en:C programming language)为基础设计一种语言,可以使工程师比较熟悉跟容易接受。

这种语言跟传统的程序设计语言不同,在于它的程序叙述并非严格地线性(循序)执行。

Verilog 模式包含不同模组(modules)的阶层关系。

模组(modules)是输出(inputs)和输入(outputs)所定义出来的一个集合。

在每个模组中,有一串的电线(wires)、暂存器(registers)和子模组(submodules)的定义。

并且在每个模组里面,语言叙述大部分都被群组成为各种的执行区块(blocks),用来定义该模组所产生的行为描述。

在每个区块(blocks)内,使用 begin 和 end 的关键字来区隔开来,其中的叙述是循序被执行。

但是同一个设计,不同的区块间的执行是平行的。

共25页3 数字频率计系统框图3.1数字频率计系统框图:本设计所采用的系统电路框图如图3.1所示。

图3.1.1 所示的数字频率计系统电路框图3.2数字频率计系统模块划分结构:数字频率计中的FPGA是频率计的核心,主要实现在一定时间内,对被测信号的脉冲个数进行计算,并且转化为相应的频率值显示在六个数码管上。

首先将系统分成六个模块来分别设计仿真。

分别有以下七个模块:●分频模块div_clk:将石英产生的标准时钟分频,得到计数以及动态显示所需的时钟,如图3.1.1所示。

●基准频率选择模块fbase_sel:也就是实现图3.1.1所示的闸门选择,根据闸门选择开关的不同,选择对应的频率输出。

●门控模块gate_ctrl:此模块需产生三种控制信号:GATE、CLEAR、LATCH,如图3.1.1所示,GATE控制闸门是否打开同时计数器开始计数,CLEAR控制计数器同步清零,LATCH控制计数器输出值的寄存。

为了能直观的显示出当前选择的基准频率,用当前GATE信号来驱动一个led。

共25页●计数模块counter:对包含被测信号频率信息的脉冲进行计数。

如图3.1.1所示,当门控模块的输出的清零信号将计数器清零后,便输出门控信号将闸门打开时,计数器开始计数。

相关文档
最新文档