- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
毕业论文:四位10进制VHDL频率计设计说明汇
四位10进制VHDL频率计设计说明
一、频率计数器的功能说明
频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门时间为1秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长则每测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。数字频率计是用数字显示被测信号频率的仪器,被测信号可以是正弦波,方波或其它周期性变化的信号。如配以适当的传感器,可以对多种物理量进行测试,比如机械振动的频率,转速,声音的频率以及产品的计件等等。因此,数字频率计是一种应用很广泛的仪器 。
设计中生成的测频计电路图
二、频率计实现
四位频率计的结构包括一个测频率控制信号发生器、四个十进制计数器和一个十六位锁存器(本例中所测频率超过测频范围时有警示灯)。
(1)测频时序控制器TESTCTL
设计频率计的关键是设计一个测频率控制信号发生器,产生测量频率的控制时序。控制时钟信号CLK取为1Hz,2分频后即可产生一个脉宽为1秒的时钟信号TSTEN,以此作为计数闸门信号。当TSTEN为高电平时,允许计数;当TSTEN由高电平变为低电平(下降沿到来)时,输出计数锁存信号LOAD,将计数值保存起来;锁存数据后,还要在下次TSTEN上升沿到来之前产生用于控制计数器清零的信号CLR_CNT,将计数器清零,为下次计数作准备。设计生成电路如下
(2)十进制计数器
计数器以待测信号作为时钟,清零信号CLR_CNT到来时清零端ACLR异步清零; CLK_ENA为高电平时开始计数。如果需要测试较高的频率信号则可将输出位数增加,当然锁存器的位数也要增加。设计中生成的电路如下
(3)锁存器
当LOAD上升沿到来时,将计数器的计数值锁存,然后可由外部的七段译码器将其译码并在数码管显示。设置锁存器的好处是显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存器的位数应跟计数器完全一样。设计中生成电路如下
(4)警示灯
将最高位计数器的进位输出送进一个发光二极管,当最高位产生进位后,二极管闪亮,说明所测频率已经超过频率计所能测量的范围。
三、测频时序控制器的设计思路
如下图所示,CLK是由脉冲发生器产生的频率为1Hz的标准时钟信号,当测频计接收到CLK上升沿脉冲时,首先有一个D触发器构成二分频器,在每次时钟CLK的上升沿到来使其值翻转,分为DIV2CLK 与 NOTDIV2CLKA,当接收到首个CLK上升沿时,将产生DIV2CLK=1与NOTDIV2CLK=0,分别将他们送入TSTEN与LOAD,则计数器使能端有效,开始计数。由于二分频为上升沿翻转,而且只有CLK与DIV2CLK均为0时清零端方才有效,所以第一个CLK下降沿来临时其输出不变,维持计数一秒。当第二个CLK上升沿来临时,DIVCLK翻转,则使LOAD有效,计数器停止计数,数据锁存半周期。当第二个CLK下降沿到来时,有CLK与DIV2CLK均为0故,此时计数清零,等待下一次计数。
频率计原理图
四、设计程序及注解
1. 十进制计数器设计
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY CNT10 IS
PORT (CLK : IN STD_LOGIC;
CLR : IN STD_LOGIC;
ENA : IN STD_LOGIC;
CQ : OUT INTEGER RANGE 0 TO 15;
CARRY_OUT : OUT STD_LOGIC );
END CNT10 ;
ARCHITECTURE behav OF CNT10 IS
SIGNAL CQ1 :INTEGER RANGE 0 TO 15;
BEGIN
PROCESS(CLK, CLR, ENA)
BEGIN
IF CLR=1 THEN CQ1=0;
ELSIF CLKEVENT AND CLK=1 THEN
IF ENA=1 THEN
IF CQ1 9 THEN CQ1= CQ1+1;
ELSE CQ1= 0;
END IF;
END IF;
END IF;
END PROCESS;
PROCESS (CQ1)
BEGIN
IF CQ1 = 9 THEN CARRY_OUT=1;
ELSE CARRY_OUT=0;
END IF;
END PROCESS;
CQ= CQ1;
E
您可能关注的文档
最近下载
- 四川省2004年肺结核流行特征及空间聚集性分析.pdf VIP
- 《小肠梗阻的诊断与治疗中国专家共识(2023版)》解读.pptx
- 回收、暂存、中转废矿物油与含矿物油废物项目突发环境事件应急预案.docx
- 电路与电子学-课程教学大纲.doc VIP
- 安徽省A10联盟2023-2024学年高二上学期11月期中考试物理试题及答案.pdf
- 第三届全国新能源汽车关键技术技能大赛(汽车电气装调工赛项)考试题库资料(含答案).pdf
- 国家科技创新政策汇编 202305.pdf
- 东华大学819有机化学2018年考研真题.pdf
- 精品推荐企业财务制度通用版汇总.docx
- 2016年东华大学硕士研究生入学考试819有机化学考研真题.pdf
文档评论(0)