欢迎来到天天文库
浏览记录
ID:3143390
大小:288.76 KB
页数:20页
时间:2017-11-19
《基于cpld的简易数字频率计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、一.设计的基本原理和框图1.1基本原理:数字频率计是用数字显示被测信号的频率的仪器,被测信号可以是正弦波,方波或者其他周期性变化的信号,它的基本原理是时基信号发生器提供标准的时基脉冲信号,若其周期为1s则门控电路的输出信号持续时间亦准确到1s。闸门电路有标准秒信号控制,当秒信号到来时闸门开通,信号通过闸门送到计数译码显示电路,秒信号结束时闸门关闭,计数器停止计数,由于计数器记得脉冲数N的是一秒内的累积数,所以被测频率是NHZ。闸门时间可以取大于或者小于1秒的值,测得的频率时间间隔与闸门时间的取值成正比,在这里取的闸门时间为1s。在此,数字频率计由分频
2、器,片选电路,计数器,锁存器,译码电路和显示电路作为主要组成部分。1.2设计框图如图1.1所示:译码信号清零信号锁存器计数器待测信号显示器片选信号时钟信号译码器片选分频器图1.1二.单元电路设计2.1分频电路模块分频器在总电路中有两个作用。由总图框图中分频器有两个输出,一个给计数器,一个给锁存器。时钟信号经过分频电路形成了20分频后的门信号。另一个给锁存器作锁存信号,当信号为低电平时就锁存计数器中的数。分频电路图如图2.1图2.1分频电路图2.2片选信号电路模块这个电路有两个用途:一是为后面的片选电路产生片选信号,二是为译码模块提供选择脉冲信号。电路
3、图如图2.2图2.2片选信号电路图2.3计数器模块计数器模块为该电路中的核心模块,它的功能是:当门信号为上升沿时,电路开始计算半个周期内被测信号通过的周期数,到下升沿后结束。然后送给锁存器锁存。计数器电路图如图2.3所示:图2.3计数器电路图2.4锁存器模块在分频信号的下降沿到来时,锁存器将计数器的信号锁存,然后送给编译模块中。其电路图如图2.4所示:图2.4锁存器电路图2.5译码信号模块此模块是对四个锁存器进行选择,按顺序的将四个锁存器中的数值送给译码模块中译码。其电路图如图2.5图2.5译码信号电路图2.6片选模块该模块接收到片选信号后,输出给显
4、示器,选择显示那个显示管。其电路图如图2.6所示:图2.6片选电路图2.7译码模块译码模块的作用就是将译码信号模块中选择出的信号进行译码,并将其送给显示器。其电路图如图2.7所示:图2.7译码电路图2.8总电路图图2.8总电路图三.编程下载3.1分频模块的程序libraryieee;useieee.std_logic_1164.all;entityfenisport(clk:instd_logic;q:outstd_logic);endfen;architecturefen_arcoffenisbeginprocess(clk)variablecnt
5、:integerrange0to9;variablex:std_logic;beginifclk'eventandclk='1'thenifcnt<9thencnt:=cnt+1;elsecnt:=0;x:=notx;endif;endif;q<=x;endprocess;endfen_arc;3.2片选信号模块的程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityselisport(clk:instd_logic;q:outstd_logic_v
6、ector(2downto0));endsel;architecturesel_arcofselisbeginprocess(clk)variablecnt:std_logic_vector(2downto0);beginifclk'eventandclk='1'thencnt:=cnt+1;endif;q<=cnt;endprocess;endsel_arc;3.3计数器模块的程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitycornaispo
7、rt(clr,sig,door:instd_logic;alm:outstd_logic;q3,q2,q1,q0,dang:outstd_logic_vector(3downto0));endcorna;architecturecorn_arcofcornaisbeginprocess(door,sig)variablec3,c2,c1,c0:std_logic_vector(3downto0);variablex:std_logic;beginifsig'eventandsig='1'thenifclr='0'thenalm<='0';c3:="0
8、000";c2:="0000";c1:="0000";c0:="0000";elsifdoor='0'the
此文档下载收益归作者所有