八位数字频率计实验报告_第1页
八位数字频率计实验报告_第2页
八位数字频率计实验报告_第3页
八位数字频率计实验报告_第4页
八位数字频率计实验报告_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、八位十进制数字频率计1、 设计任务 (1)熟悉Quatus 11软件的基本使用方法。(2) 熟悉EDA实验开发系统的使用方法。(3) 学习时序电路的设计、仿真和硬件设计,进一步熟悉VHDL设计技术。(4)分析了8位十进制数字频率计的基本原理。(5)对数字频率计的各个模块功能的分析,进行了功能仿真测试,得出仿真波形图。二、方案选择与设计 数字频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门时间为1秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长则每测一次频率的间隔就越长。闸门时间越短,测的频率值刷

2、新就越快,但测得的频率精度就受影响。数字频率计的主要功能是测量周期信号的频率。频率是单位时间(1S)内信号发生周期变化的次数。如果我们能在给定的1S时间内对信号波形计数,并将计数结果显示出来,就能读取被测信号的频率。数字频率计首先必须获得相对稳定与准确的时间,同时将被测信号转换成幅度与波形均能被数字电路识别的脉冲信号,然后通过计数器计算这一段时间间隔内的脉冲个数,将其换算后显示出来。这就是数字频率计的基本原理。设计:1)脉冲信号的频率就是在单位时间内所产生的脉冲个数,其表达式为,f为被测信号的频率,N为计数器所累积的脉冲个数,T为产生N个脉冲所需的时间。所以,在1秒时间内计数器所记录的结果,就

3、是被测信号的频率。 2)被测频率信号取自实验箱晶体振荡器输出信号,加到主控室的输入端。 3)再取晶体振荡器的另一标准频率信号,经分频后产生各种时基脉冲:1ms,10ms,0.1s,1s等,时基信号的选择可以控制,即量程可以改变。4)时基信号经控制电路产生闸门信号至主控门,只有在闸门信号采样期间内(时基信号的一个周期),输入信号才通过主控门。5)f=N/T,改变时基信号的周期T,即可得到不同的测频范围。6)当主控门关闭时,计数器停止计数,显示器显示记录结果,此时控制电路输出一个置零信号,将计数器和所有触发器复位,为新一次采样做好准备。 系统总体框架图8位十进制数字频率计的电路逻辑图 8位十进制数

4、字频率计的电路逻辑图,它由一个测频控制信号发生器TESTCTL、8个有时钟使能的十进制计数器CNT10、一个32位锁存器REG32B 8组成。以下分别叙述频率计各逻辑模块的功能与设计方法。8位十进制数字频率计的电路逻辑如图4.18所示。图4.1 8位十进制数字频率计的电路逻辑图三 软件设计与仿真各功能模块的源程序及每个程序运行后的仿真波形:测频控制信号发生器的功能模块及仿真(1)测频控制信号发生器的功能模块如下图所示。 测频控制信号发生器的功能模块图测频控制电路图(2)源程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOG

5、IC_UNSIGNED.ALL;ENTITY TESTCTL ISPORT(CLK:IN STD_LOGIC;TSTEN:OUT STD_LOGIC;CLR_CNT:OUT STD_LOGIC;LOAD:OUT STD_LOGIC);END TESTCTL;ARCHITECTURE ART OF TESTCTL ISSIGNAL Div2CLK:STD_LOGIC;BEGINPROCESS(CLK)BEGIN IF CLK'EVENT AND CLK='1'THEN Div2CLK<=NOT Div2CLK;END IF;END PROCESS;PROCESS(C

6、LK,Div2CLK)BEGINIF CLK='0'AND Div2CLK='0'THENCLR_CNT<='0'ELSE CLR_CNT<='1'END IF;END PROCESS;LOAD<=NOT Div2CLK;TSTEN<=Div2CLK;END ART;频率计的关键是设计一个测频率控制信号发生器,产生测量频率的控制时序。控制时钟信号CLK取为1Hz,2分频后即可产生一个脉宽为1秒的时钟TSTEN,以此作为计数闸门信号。当TSTEN为高电平时,允许计数;当TSTEN由高电平变为低电平(下降沿到来

7、)时,应产生一个锁存信号,将计数值保存起来;锁存数据后,还要在下次TSTEN上升沿到哦来之前产生零信号CLEAR,将计数器清零,为下次计数作准备,如下图所示为测频控制信号仿真图。32位锁存器的功能模块及仿真(1)32位锁存器的功能模块下图所示。 锁存器的功能模块图锁存器电路图(2)源程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY REG32B ISPORT (LOAD:IN STD_LOGIC;DIN1:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DIN2:IN STD_LOGIC_VECTOR(3 DOWNTO 0

8、);DIN3:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DIN4:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DIN5:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DIN6:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DIN7:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DIN8:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0

9、);DOUT3:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT4:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT5:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT6:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT7:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT8:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END REG32B;ARCHITECTURE ART OF REG32B ISBEGINPROCESS(LOAD,DIN1,D

10、IN2,DIN3,DIN4,DIN5,DIN6,DIN7,DIN8)BEGINIF(LOAD'EVENT AND LOAD='1')THENDOUT1<=DIN1;DOUT2<=DIN2;DOUT3<=DIN3;DOUT4<=DIN4;DOUT5<=DIN5;DOUT6<=DIN6;DOUT7<=DIN7;DOUT8<=DIN8;END IF;END PROCESS;END ART;十进制计数器的功能模块及仿真(1)十进制计数器的功能模块如下图所示: 十进制计数器的功能模块计数器电路图(2) 源程序如下:LIBRARY I

11、EEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;entity CNT10 ISPORT(CLK,CLR,ENA:IN STD_LOGIC;CQ:OUT STD_LOGIC_VECTOR(3 downto 0 );CARRY_OUT:OUT STD_LOGIC);END CNT10;ARCHITECTURE behav OF CNT10 ISBEGIN PROCESS(CLK,CLR,ENA)VARIABLE Q:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINIF CLR='0' THEN Q:=(OTHERS=>'0');ELSIF CLK'EVENT AND CLK='1'THENIF ENA='1' THENIF Q<9 THEN Q:=Q+1;ELSE Q:=(OTHERS=&

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论