• 回答数

    6

  • 浏览数

    328

吃货201510
首页 > 期刊论文 > 数字频率计毕业论文

6个回答 默认排序
  • 默认排序
  • 按时间排序

大料酱VS小麋鹿

已采纳

这是大规模数字集成电路在系统可编程领域的经典课程设计。数字频率计是近代电子技术领域的重要测量工具之一,同时也是其他许多领域广泛应用的测量仪器。数字频率计是在规定的基准时间内把测量的脉冲数记录下来,换算成频率并以数字形式显示出来。数字频率计用于测量信号(方波,正弦波或其他周期信号)的频率,并用十进制数字显示,它具有精度高,测量速度快,读数直观,使用方便等优点。一个用VHDL语言实现的实例如下:-- Project Name: 恒精度频率计-- Target Devices: FPGA or CPLD-- Revision 0.01 - File Created-- Comments: clk--系统工作时钟,2MHz-------------reset--系统复位信号,高电平有效-------------Fx--为待测信号-------------FreqNx--为待测信号的计数值-------------FreqNs--为标准信号的计数值-------------Freq--为待测信号的频率------------------------------------------------------------------------------------library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;----------------------------------------------------------entity Cymometer is generic(clk_freq : integer := 2000000);--系统工作时钟频率 Port ( clk : in STD_LOGIC; reset : in STD_LOGIC; Fx : in STD_LOGIC; ----待测信号 FreqNs : out natural; FreqNx : out natural); --Freq : out natural);end Cymometer;----------------------------------------------------------architecture Behavioral of Cymometer is---------------------------------------- signal start : STD_LOGIC;--此信号为高电平时计数器开始计数 signal CTRL : STD_LOGIC;--CTRL信号为待测信号和门控信号产生的计数器启动信号 signal CNTx : natural;--待测信号计数器 signal CNTs : natural;--标准信号计数器----------------------------------------begin--***************************************----产生一个门控信号,高电平有效 GateCtrl : process(clk) --------------------------- variable CNT0 : integer range 0 to 2_097_152;--门控信号计数器 --------------------------- begin if rising_edge(clk) then if reset='1' then CNT0 := 0; else CNT0 := CNT0 + 1; end if; --------- if reset='1' then start <= '0'; elsif CNT0 < (clk_freq*3/4) then start <= '1'; else start <= '0'; end if; end if; end process GateCtrl;--***************************************----产生CTRL信号,由待测信号和门控信号产生的计数器启动信号 CtrlGen : process(Fx) begin if rising_edge(Fx) then if reset='1' then CTRL <= '0'; else CTRL <= start; end if; end if; end process CtrlGen;--***************************************----用两个计数器分别对标准信号clk和待测信号signal计数------------------------------------计数标准信号,CTRL高电平期间有效 CountS : process(clk) begin if rising_edge(clk) then if reset='1' then CNTs <= 0; elsif CTRL='1' then CNTs <= CNTs + 1; else CNTs <= 0; end if; end if; end process CountS;------------------------------------计数待测信号,CTRL高电平期间有效 CountX : process(Fx) begin if rising_edge(Fx) then if reset='1' then CNTx <= 0; elsif CTRL='1' then CNTx <= CNTx + 1; else CNTx <= 0; end if; end if; end process CountX;--***************************************----CTRL下降沿将技术结果和测量值输出 CountOut : process(CTRL) begin if falling_edge(CTRL) then if reset='1' then FreqNs <= 0; FreqNx <= 0;-- Freq <= 0; else FreqNs <= CNTs; FreqNx <= CNTx;-- Freq <= (clk_freq / CNTs * CNTx); end if; end if; end process CountOut;end Behavioral;下面是为上面的模块编写的测试平台,在Modelsim下仿真通过,因为数据量较大,建议不要使用Altera及ISE仿真。--------------------------------------------------------------------------------LIBRARY ieee;USE ieee.std_logic_1164.ALL;USE ieee.std_logic_unsigned.all;USE ieee.numeric_std.ALL; ENTITY tb ISEND tb; ARCHITECTURE behavior OF tb IS -- Component Declaration for the Unit Under Test (UUT) COMPONENT Cymometer PORT( clk : IN std_logic; reset : IN std_logic; Fx : IN std_logic; FreqNs : OUT natural; FreqNx : OUT natural; Freq : OUT natural ); END COMPONENT;--Inputs signal clk : std_logic := '0'; signal reset : std_logic := '1'; signal Fx : std_logic := '0'; --Outputs signal FreqNs : natural; signal FreqNx : natural;-- signal Freq : natural; -- Clock period definitions constant clk_period : time := 500ns; BEGIN -- Instantiate the Unit Under Test (UUT) uut: Cymometer PORT MAP ( clk => clk, reset => reset, Fx => Fx, FreqNs => FreqNs, FreqNx => FreqNx, -- Freq => Freq ); -- Clock process definitions clk_process :process begin clk <= '0'; wait for clk_period/2; clk <= '1'; wait for clk_period/2; end process; --产生待测信号 Fx_process : process begin Fx <= '0'; wait for 2*clk_period; Fx <= '1'; wait for 2*clk_period; end process; -- Stimulus process stim_proc: process begin -- hold reset state for 100ms. wait for clk_period*10; reset <= '0'; -- insert stimulus here wait; end process;END;参考原理M/T测频法。

212 评论

功夫肥豬

1、频率计嘛就是用来测试信号频率的啊!2、用FPGA来做就最简单不过了!3、我做了一个频率范围在0.5Hz__20MHz,一点都不夸张的,而且精度还很高,比你想象的要高的多!4、软件设计就只要QUARTUS II,很好做的也很容易!5、就连报告也都有的!

188 评论

木糖不纯

你问的也太多了吧。真是舍得用百度啊。1.频率计应该是能对输出的信号的频率进行调整。比如要求输出10kHZ的某种波。指标:频率,波形,占空比,最高电压,最低电压,振幅等。2.可以模块化,你自己参考资料去实现吧。3.依旧百度,百科里有。4.FPGA是基于硬件的编程,相对ASIC很灵活,能调整来实现你的功能。在视频处理,工业控制,DSP上都有很大的使用。他也作为ASIC的模型。

216 评论

不忘初心258

1.频率计是干什么的?问这个问题的应该不是工科生吧!不是工科生做什么频率计啊~~哪凉快待哪去

180 评论

败家小歪歪

第1节 引言 21.1 数字频率计概述21.2 频率测量仪的设计思路与频率的计算21.3 基本设计原理3第2节 数字频率计(低频)的硬件结构设计4 2.1系统硬件的构成42.2系统工作原理图42.3AT89C51单片机及其引脚说明 52.4信号调理及放大整形模块72.5时基信号产生电路72.6显示模块8第3节 软件设计123.1 定时计数 123.2 量程转换 123.3 BCD转换123.4 LCD显示15第4节 结束语 16参考文献 20附录 汇编源程序代码28

310 评论

言小旭他妈

电梯控制系统设计基于西门子PLC的电梯控制系统

329 评论

相关问答

  • 数字音频毕业论文

    高效率音频功率放大器的研制白林景,邵光存,李岸然,常兴连,王振伟(山东省科学院激光研究所,山东济宁 272100) 摘 要:本设计以高效率D类功率放大器为中心

    布丁的信仰 3人参与回答 2023-12-06
  • 数字频率计毕业论文

    这是大规模数字集成电路在系统可编程领域的经典课程设计。数字频率计是近代电子技术领域的重要测量工具之一,同时也是其他许多领域广泛应用的测量仪器。数字频率计是在规定

    吃货201510 6人参与回答 2023-12-08
  • 频率解调器毕业论文

    液压伺服系统设计 液压伺服系统设计 在液压伺服系统中采用液压伺服阀作为输入信号的转换与放大元件。液压伺服系统能以小功率的电信号输入,控制大功率的液压

    紫衣Helen 6人参与回答 2023-12-11
  • 数字音频功率放大电路毕业论文

    音频采集与放大电路的设计,都可以使用晶体管或者运放实现。音频信号如果是麦克风采集的微弱信号,需要设计一个低噪的多级放大电路。

    iamjiaying 5人参与回答 2023-12-10
  • mba毕业论文字数查重率

    把论文的查重字数与总字数进行比较得出的就是查重率。 有许多毕业生不知道该怎样来降低论文查重率,实际上使用一定的技巧和方法就能很好地把握。在知网查重时,首先学生上

    阳光靖好 6人参与回答 2023-12-11