EDA数字频率计_第1页
EDA数字频率计_第2页
EDA数字频率计_第3页
EDA数字频率计_第4页
EDA数字频率计_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、毕毕业业设设计计(论论文文)任任务务书书 专业专业 班级班级 姓名姓名 一、课题名称: eda 的数字频率计的设计 二、主要技术指标: 1)能够测量正弦波、三角波、锯齿波、矩形波等周期性信号的 频率; 2)能直接用十进制数字显示测得的频率; 3)频率测量范围: 1hz10khz 切量程能自动切换; 4)输入信号幅度范围为 0.55v,要求一起自动适 应; 5)测量时间:t=1.5s;6)用 cpld/fpga 可编程逻辑器件实现 三、工作内容和要求: 数字频率计是数字电路中的一个典型应用! 实际的硬件设计用到 的器件较多!连线比较复杂!而且会产生较大的延时!造成测量误差可靠性差.随着可程逻辑

2、器件(cpld)的广泛应用!以eda工具为开发平台!利用vhdl硬件描述语言! 采用自顶向下 和基于库的设计!设计者不但可以不必了解硬件结构设计!而且将使系统大大简化!提高整 体的性能和可靠性# 本文用vhdl 在cpld器件上实现一种数字频率计测频系统! 能够用十 进制数码管显示被测信号的频率!它不仅能测量频率!还可以测量其他多种物理量!具有体 积小can measure electric capacity to make into a number type the electric capacity measure an instrument;increase to spread a f

3、eeling machine in the electric circuit, can also make into a number pulse instrument, account a price machine etc.therefore the digital cymometer accounts in the diagraph physics to measure aspect applied extensive.this design is used vhdl the spare part is at cpld up carry out digital cymometer to

4、account to measure repeatedly system, can show to be measured the frequency of signal with the decimal system figures, can measure the frequency of sine wave, square wave and triangle wave etc. signal, and return an ability as to its he various physical quantity carry on diagraph.have the physical v

5、olume small and dependable sex gao and achievement to consume a low characteristics.digital cymometer is the diagraph instrument of research production realm indispensabilities, such as calculator, communication equipments and audio frequency video frequency.etc.the digital cymometer that adopts vdh

6、l to weave a distance to design a realization accounts, in addition to is measured the orthopedics of signal part, the key importation part and figures show part, rest all in one fpga realization of chip, the whole system simplifies very much, and has vivid spot to change sex.on the foundation that

7、doesnt change hardware electric circuit, carries on various function that the improvement can also raise system further to the system.the numbers frequency accounts to have high speed, precision, credibility, the anti- interference is strong and the spot programmable etc. advantage. key words: the f

8、pga chip, vhdl language and digital cymometer, the digital cymometer account principle diagram and max+plusii software and eda technique 0引言 所谓频率,就是周期性信号在单位时间(1s)里变化的次数。本频率计设 计测量频率的基本原理是,首先让被测信号与标准信号一起通过一个闸门,然 后用计数器计数信号脉冲的个数,把标准时间内的计数的结果,用锁存器锁存 起来,最后用显示译码器,把锁存的结果用 led 数码显示管显示出来。 根据数字频率计的基本原理,本文设计方案的

9、基本思想是分为五个模块来 实现其功能,即整个数字频率计系统分为分频模块、控制模块、计数模块、译 码模块和量程自动切换模块等几个单元,并且分别用 vhdl 对其进行编程,实 现了闸门控制信号、计数电路、锁存电路、显示电路等。 本频率计设计还可以测量周期性信号,其基本原理与测量频率的基本原理 基本一样,首先让被测信号与标准信号一起通过一个闸门,然后用计数器计数 信号脉冲的个数,把被测信号一个周期内标准基准信号的脉冲计数的结果,用 锁存器锁存起来,最后用显示译码器,把锁存的结果用 led 数码显示管显示出 来,显示管的读数就是被测信号以标准信号的周期为单位乘积的周期。 技术性能指标: 1)能够测量正

10、弦波、三角波、锯齿波、矩形波等周期性信号的频率; 2)能直接用十进制数字显示测得的频率; 3)频率测量范围:1hz10khz 切量程能自动切换; 4)输入信号幅度范围为 0.55v,要求一起自动适应; 5)测量时间:t=1.5s; 6)用 cpld/fpga 可编程逻辑器件实现; 第一章 频率计的设计原理 1.1 频率计测量频率的设计原理 (1)频率计测量频率的原理 频率计测量频率需要设计整形电路使被测周期性信号整形成脉冲,然后设 计计数器对整形后的脉冲在单位时间内重复变化的次数进行计数,计数器计出 的数字经锁存器锁存后送往译码驱动显示电路用数码管将数字显示出来,需要 设计控制电路产生允许计数

11、的门闸信号、计数器的清零信号和锁存器的锁存信 号使电路正常工作,再设计一个量程自动转换电路使测量范围更广。 (2)频率计测量频率的原理图 频率计测量频率的原理图如下: 脉冲 形成 模 块计数 模块 译码显示模 块 控制 模 块 量程自动切换模块 分频 模 块 锁存 信号 清零 使能 被测信号 基准信号 图 1 1.2 频率计测量周期的原理 (1)频率计测量周期的原理 频率计测量周期需要设计整形电路使被测周期性信号整形成脉冲,然后设 计计数器对基准信号在被测信号一个周期内重复变化的次数进行计数,计数器 计出的数字经锁存器锁存后送往译码驱动显示电路用数码管将数字显示出来, 需要设计控制电路产生允许

12、计数的使能信号、计数器的清零信号和锁存器的锁 存信号使电路正常工作,再设计一个量程自动转换电路使测量范围更广。 (2)频率计测量周期的原理图 频率计测量周期的原理图如下: 脉冲形 成模块 计数模块 译码模 块控制模块 分频模块 量程切换 模块 被 测 信 号 锁存 清零 使能 基准信号 图 2 第二章 频率计测量频率的层次化设计方案 2.1 4 位十进制计数器模块 4 位十进制计数器模块包含 4 个级联十进制计数器,用来对施加到时钟脉 冲输入端的待测信号产生的脉冲进行计数,十进制计数器具有集束使能、清零 控制和进位扩展输出的功能。使能信号和清零信号由闸门控制模块的控制信号 发生器所产生来对 4

13、 个级联十进制计数器周期性的计数进行控制。 (1)十进制计数器元件的设计 十进制计数器的程序如下: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity jishu10 is port(clk,rst,en:in std_logic; cq:out std_logic_vector(3 downto 0); cout:out std_logic); end jishu10; architecture behav of jishu10 is begin process(clk,rst,

14、en) variable cqi:std_logic_vector(3 downto 0); begin if rst=1 then cqi:=(others=0); elsif clkevent and clk=1 then if en=1 then if cqi0); end if; end if; end if; if cqi=9 then cout=1; else cout=0; end if; cq0); elsif clkevent and clk=1 then if en=1 then if cqi0); end if; end if; end if; if cqi=74 the

15、n cout=1; else cout=0; end if; cq0); elsif clkevent and clk=1 then if en=1 then if cqi0); end if; end if; end if; if cqi=10 then cout=1; else cout=0; end if; cq=cqi; end process; end behav; 编译成功后生成元件图如下: 图 9 2).d 触发器的设计 其程序如下: library ieee; use ieee.std_logic_1164.all; entity reg_2 is port(clk,d:in

16、std_logic; q:out std_logic); end reg_2; architecture behav of reg_2 is signal q1:std_logic; begin process(clk) begin if clkevent and clk=1 then q1=d; end if; end process; q=q1; end behav; 编译成功后生成如下元件图: 图 10 将生成的 75 进制计数器、11 进制计数器、10 进制计数器和非门按下图连 接来得到 1s 高电平门闸信号。 图 11 将其电路图进行仿真,其仿真波形如下: 图 12 对照其仿真波形,

17、其输出门闸信号高电平为 1s,符合设计,将其电路生成 如下元件图,以便顶层调用。 图 13 2).控制信号发生器模块 该模块主要根据输入高电平的 1s 闸门信号,产生计数允许信号 en,该信 号的高电平的持续时间即计数允许时间,与输入的门闸控制时钟脉冲周期相同; 产生清零信号 rst,在计数使能前对计数器先清零;产生存储信号 load,在 计数结束后,利用上升沿把最新的频率测量值保存在显示寄存器中。 为了产生清零信号 rst,使能信 en 和存储信号 load。不失一般性,控 制信号发生器用 74161 构成 4 分频计数器,用一个与非门,一个或非门和一个 异或门实现 3 种译码状态,与闸门模

18、块按下图连接。 图 14 编译成功后进行仿真,其仿真波形如下: 图 15 该功能正确无误后生成的元件符号图如下图所示。 图 16 2.3 分频模块的设计 当被测频率超出量程时,设计分频模块对被测频率进行分频衰减,单位上 升,从而扩大测量频率的范围。 1).四选一数据选择器 四选一数据选择器的程序如下: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity si_xuan_1 is port(a,b,c1,c2,c3,c4:in std_logic; y:out std_logic);

19、 end si_xuan_1; architecture behav of si_xuan_1 is signal x:std_logic_vector(1 downto 0); begin process(a,b) begin x y y y ynull; end case; end process; end behav; 编译成功后进行仿真,其仿真波形如下图: 图 17 其仿真波形真确无误后生成元件符号图如下图所示。 图 18 2)分频电路的设计 将生成的四选一数据选择、74139 译码器、d 触发器和 3 个十进制计数器 按下图连接。 图 19 编译成功后进行仿真,起仿真波形如下图: 图

20、 20 如图所示,此电路图实现了将被测信号进行分频功能,通过四选一数据选 择器的控制按不同的 ba 二进制数值时输出被测信号的 1 分频、10 分频、100 分频、1000 分频,通过二四译码器按不同的 ba 二进制数值时输出四个档次 p0、p1、p2、p3,分别代表 1hz、10hz、100hz、1000hz 为单位,其功能正确无误 后生成可调用的元件图如下: 图 21 2.4 译码模块 译码模块是对计数出的数进行译码显示出来,该部分由寄存器、动态扫描 电路和译码驱动电路组成。 1).寄存器设计 寄存器是在计数结束后,利用触发器的上升沿把最新的频率测量值保存起 来,这样在计数过程中可不必一直

21、看着数码管显示器,显示器将最终的频率读 数定期进行更新,其输出将作为动态扫描电路的输入。4 位寄存器的 vhdl 源 程序如下。 library ieee; use ieee.std_logic_1164.all; entity reg_4 is port(load:in std_logic; din:in std_logic_vector(3 downto 0); dout:out std_logic_vector(3 downto 0); end reg_4; architecture behav of reg_4 is begin process(din) begin if loadev

22、ent and load=1 then dout=din; end if; end process; end behav; 在源程序中 load 是锁存信号,上升沿触发;din3.0是寄存器输入; dout3.0 是寄存器输出。编译仿真后生成元件图如下图,以便顶层模块的调用。 图 22 2).动态扫描电路 本设计采用扫描方式来实现 led 数码管动态显示,控制好数码管之间的延 迟时间相当重要。根据人眼视觉暂留原理,led 数码管每秒导通 16 次以上, 人眼就无法 led 数码管短暂的不亮,认为是一直点亮的(其实 led 数码管是 以一定频率在闪动的) 。但是,延时(导通频率)也不是越小越好,

23、因为 led 数码管达到一定亮度需要一定时间。如果延时控制的不好则会出现闪动,或者 亮度不够,根据经验,延时 0.005s 可以达到满意的效果。另外,显示的字符有 变化时,可在延时到达后送一个地电平(共阴极数码管)led 数码管先短暂熄 灭,再显示一个字符,可使在视觉上字符的变化更清楚。 动态扫描显示的 vhdl 源程序如下。 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity xu_dynamic is port(clk,reset:in std_logic; din1:in st

温馨提示

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

评论

0/150

提交评论