EDA课程设计-数字频率计.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA课程设计-数字频率计

EDA《数字频率计》 课程设计报告 专 业: 电子信息工程 班 级: 08电信 姓 名: 刘冰 学 号: F0857114 指导教师: 任苹 年 月 日 一 课程设计目的 1)课程设计题:数字频率计 2)任务及要求 1、设计一个能测量方波信号的频率的频率计。 2、测量的频率范围是0(999999Hz。 3、结果用十进制数显示。 4、按要求写好设计报告(设计报告内容包括:引言,方案设计与论证,总体设计,各模块设计,调试与数据分析,总结)。 3)教学提示 1、脉冲信号的频率就是在单位时间内所产生的脉冲个数,其表达式为,f为被测信号的频率,N为计数器所累计的脉冲个数,T为产生N个脉冲所需的时间。所以,在1秒时间内计数器所记录的结果,就是被测信号的频率。 2、被测频率信号取自实验箱晶体振荡器输出信号,加到主控门的输入端。 3、再取晶体振荡器的另一标准频率信号,经分频后产生各种时基脉冲:1ms,10ms,0.1s,1s等,时基信号的选择可以控制,即量程可以改变。 4、时基信号经控制电路产生闸门信号至主控门,只有在闸门信号采样期间内(时基信号的一个周期),输入信号才通过主控门。 5f=N/T,改变时基信号的周期T,即可得到不同的测频范围。 当主控门关闭时,计数器停止计数,显示器显示记录结果,此时控制电路输出一个置零信号,将计数器和所有触发器复位,为新的一次采样做好准备。 改变量程时,小数点能自动移位。 4)设计报告要求 1、说明设计作品的功能、特点、应用范围; 2、方案对比,确定方案。 3、电路工作原理、操作方法; 4、编程方法、程序框图及关键程序清单。 5、课程设计总结。   数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字,显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号,方波信号以及其他各种单位时间内变化的物理量。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精度高,显示直观,所以经常要用到数字频率计。 二、设计方案论证、结果以及分析 1 原理图 编译成功后其波形图如下: 2、信号发生器 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity sele is port(clk: in std_logic; jian: in std_logic_vector(1 downto 0); oclk: out std_logic); end; architecture s_1 of sele is signal full : std_logic; signal t :integer range 0 to 5999999; begin P1:process(jian,t) begin case jian is when 00 = t = 5999999; --产生时基脉冲1s when 01 = t = 599999; --产生时基脉冲100ms when 10 = t = 59999; --产生时基脉冲10ms when 11 = t = 5999; --产生时基脉冲1ms when others = null; end case; end process P1; P2: process(clk,t) variable s : integer range 0 to 5999999; begin if (clkevent and clk = 1) then if s t then s := s +1; else s := 0 ; end if; end if; if s = t then full = 1; else full = 0; end if; end process P2; P3: process(full) variable c : std_logic; begin if fullevent and full = 1 then c := not c; if c =

文档评论(0)

hhax1 + 关注
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档