- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
南昌大学实验报告
学生姓名: 学号: 专业班级:
实验类型:□验证 □综合 ▉设计 □创新 实验日期: 12.14__ 实验成绩:
实验五 数字频率计的设计
一、实验目的
1.了解直接测频的方法和原理。
2.掌握如何在 FPGA 内部设计多种功能模块。
3.掌握 VHDL 在测量模块设计方面的技巧。
二、实验原理
所谓频率就是周期性信号在单位时间(1s)内变化的次数。若在一定时间间隔 T(也称闸门时间)内测得这个周期性信号的重复变化次数为 N,则其频率可表示为
f=N/T
由上面的表示式可以看到,若时间间隔 T 取 1s,则 f=N。由于闸门的起始和结束的时刻对于信号来说是随机的,将会有一个脉冲周期的量化误差。进一步分析测量准确度:设待测信号脉冲周期为 Tx,频率为 Fx,当测量时间为 T=1s 时,测量准确度为δ=Tx/T=1/Fx。由此可知这种直接测频法的测量准确度与被测信号的频率有关,当待测信号频率较高时,测量准确度也较高,反之测量准确度较低。因此,这种直接测频法只适合测量频率较高的信号,不能满足在整个测量频段内的测量精度保持不变的要求。若要得到在整个测量频段内的测量精度保持不变的要求,应该考虑待精度频率测量等其它方法。
等精度频率测频的实现方法,可以用图 17-1 所示的框图来实现。
图 17-1 等精度测频实现框图
本实验采用直接测频法进行频率测量。闸门时间固定为 1s,闸门信号是一个0.5Hz 的方波,在闸门有效(高电平)期间,对输入的脉冲进行计数,在闸门信号的下降沿时刻,所存当前的计数值,并且清零所有的频率计数器。显示的内容是闸门下降沿时锁存的值。
因为闸门时间我们设定为 1s,所以这种频率计仅能测出频率大于或者等于 1Hz 的情况,且频率越高,精度也越高。实际应用中,频率计的闸门时间是个可变量,当频率小于 1Hz时,闸门时间就要适当放大。采用一个标准的时钟,在单位时间内如:0.1秒对被测信号的脉冲进行计数,即为信号的频率。
在设计频率计的时候,八个七段码管最多可以显示 99,999,999Hz,因此在设计时候用八个 4位二进制码(BCD 码)来表示,另外还必须有同样的八个 4位二进制码来对输入的频率进行计数,在闸门下降沿的时候,将后者的值锁存到寄存器中。其信号的时序关系如下图 17-2 所示:
图 17-3 控制信号时序关系
三、实验内容
本实验要完成的任务就是设计一个频率计,系统时钟选择核心板上的 50M的时钟,闸门时间为 1s(通过对系统时钟进行分频得到),在闸门为高电平期间,对输入的频率进行计数,当闸门变低的时候,记录当前的频率值,并将频率计数器清零,频率的显示每过 2秒刷新一次。外部CLR清零信号可以使当前寄存值清零。其实现框图如下图17-3 所示:
在本实验中,用到的模块有数字信号源模块、按钮开关模块、50M 系统时钟源模块、数码管显示模块等。其中数码管、数字信号源、按钮开关与 FPGA 的连接电路和管脚连接这里不在赘述。50M 系统时钟源的模块位于 EP2C35 核心板的中上方通过一个贴片的 50M 有源晶体来产生 50MHZ的时钟信号,其与 FPGA 的管脚连接如表 17-1 所示。
表 17-1 50M 系统时钟与 FPGA 的管脚连接表
信号名称 对应 FPGA 管脚名 说明 系统时钟源 A13(GCLK9) 50MHZ 系统时钟
四、实验步骤
1、打开 QUARTUSII 软件,新建一个工程。
2、建完工程之后,再新建一个 VHDL File,打开 VHDL 编辑器对话框。
3、按照实验原理和自己的想法,在 VHDL编辑窗口编写 VHDL程序,本实验共分为5个模块,每一个模块源程序完成一定的功能。其具体的功能如下表 17-2:
表 17-2 示例程序功能表
文件名称 完成功能 P1 产生 1HZ 的闸门信号和 1KHZ 的显示扫描信号 P2 在时钟的作用下生成测频的控制信号 P3 十进制计数器,用32位来显示8个4位BCD数 P4 32 位的锁存器,在锁存控制信号的作用下,将计数的值锁存 P5 显示译码,将锁存的数据显示出来
实验程序如下所示:
-------------------------------------
-- Title:源程序p1
-- Author:参考自网上
-- Data: 2012-12-8
---------------------
文档评论(0)