1、3.1被测信号波形:正弦波、三角波和矩形波。 3.2 测量频率范围:分三档: 1Hz~999Hz 0.01kHz~9.99kHz 0.1kHz~99.9kHz 3.3 测量周期范围:1ms~1s。 3.4 测量脉宽范围:1ms~1s。 3.5 测量精度:显示3位有效数字(要求分析1Hz、1kHz和999kHz的测量误差)。 3.6当被测信号的频率超出测量范围时,报警. 4.扩展指标 要求测量频率值时,1Hz~99.9kHz的精度均为+1。 5.设计条件 5.1 电源条件:+5V。 型号 名称及功能 数量 NE555 定时器 1片 74151 8选1数据选
2、择器 2片 74153 双4选1数据选择器 2片 7404 六反向器 1片 4518 十进制同步加/减计数器 2片 74132 四2输入与非门(有施密特触发器) 1片 74160 十进制同步计数器 3片 C392 数码管 3片 4017 十进制计数器/脉冲分配器 1片 4511 4线-七段所存译码器/驱动器 3片 TL084 1片 10K电位器 1片 电阻电容 拨盘开关 1个 门电路、阻容件、发光二极管和转换开关等原件自定。 数字频率计设计 2009年06月22日 08:40 本站整理 作者:佚名 用户评论(1
3、 关键字: 数字频率计设计 一、实验目的 1.熟悉CPLD的开发软件的基本使用。 2.理解频率计的测量原理。 3.掌握CPLD逻辑电路设计方法。 4.掌握虚拟数字频率计的软件设计。 二、实验任务和内容 1. 在CPLD中设计一个数字频率计电路,设计要求为: 测量范围:1Hz~1MHz, 分辨率<10-4>, 数码管动态扫描显示电路的CPLD下载与实现。 2.使用LabVIEW进行虚拟频率计的软件设计。要求设计软件界面,闸门时间
4、为4档,1s,100ms,10ms,1ms,频率数字显示。 3.使用设计虚拟逻辑分析仪软件和CPLD电路,进行软硬件调试和测试 三、实验器材 1. SJ-8002B电子测量实验箱 1台 2.计算机(具有运行windows2000和图形化控件的能力) 1台 3.函数发生器 1台 4.SJ-7002 CPLD实验板 1块 5.短接线若干 四、实验原理 4.1.测频原理 所谓“频率”,就是周期性信号在单位时间变化的次数。电子计数器是严格按照f=N/T的定义进行测频,其对应的测频原理方框图和工作时间波形如图1 所示。从图中可以看出测量过程:输入待测信
5、号经过脉冲形成电路形成计数的窄脉冲,时基信号发生器产生计数闸门信号,待测信号通过闸门进入计数器计数,即可得到其频率。若闸门开启时间为T、待测信号频率为fx,在闸门时间T内计数器计数值为N,则待测频率为 fx = N/T (1) 若假设闸门时间为1s,计数器的值为1000,则待测信号频率应为1000Hz或1.000kHz,此时,测频分辨力为1Hz。 本实验的闸门时间分为为4档:1s,100ms,10ms,1ms。 图1 测频原理框图和时间波形 4.2 数字频率计组成 本实验要求的数
6、字频率计组成如图2所示,频率计的硬件电路(图1所示)在CPLD芯片中实现,测量结果通过实验箱提供的EPP通信接口送给计算机,频率计的软件和人机界面由计算机完成,同时计算机还可输出清零和闸门选择的控制信号给电路。 本实验的任务一是在提供的CPLD实验板上设计和实现频率计测量电路,二是在计算机上使用LabVIEW软件设计频率计界面和程序。 图2 数字频率计组成框图 4.3 CPLD特点和设计流程 CPLD器件是由用户配置以完成某种逻辑功能的电路,本CPLD实验电路板选用ALTERA
7、公司的EPM7128SLC84器件,其特点为:84引脚Pin,内部有128个宏单元、2500个等效逻辑门、15ns的速度、PLCC84封装形式。除电源引脚、地线引脚、全局控制引脚和JTAG引脚外,共提供了64个可用I/O脚,这些引脚可以任意配置为输入、输出和双向方式。 CPLD的设计流程如图3所示,本实验采用的设计软件为ALTERA公司的Quartus Ⅱ,下载方式采用的是并口电缆ByteBlaster。下载时的硬件设置操作如图4所示。 图3 CPLD设计流程和并行电缆下载示意图
8、 图4 下载时的硬件设置选ByteBlaster 4.4 CPLD实验电路板 1)数字信号输入:8个ON~OFF(K1~K8)开关 2) 数字信号输出(显示):8个LED灯(LED1~LED8),低电平点亮 3) 6个LED 7段数码管,采用动态扫描方式,L1、L2、L3为位选信号,低有效,A、B、……、G为7段码,DP为小数点,均为低有效。 4) 时钟晶振:频率为1MHz,已连接到CPLD的时钟引脚 注:使用CPLD板的1.000MHz的晶振时钟,需放置CPLD板上S1短路块位置在右面。
9、 图5 CPLD实验板电路板照片和组成框图 4.5 CPLD实验电路板原理和与实验箱62芯插座连接关系 图6 为CPLD板的详细电路图。 CPLD可供用户自定义的引脚见表1,共有25个引脚,均可根据需要定义为输入或输出。 CPLD与实验箱62芯插座定义表见表2,可使用3个8位的数字I/O口作为频率计的输入计数结果,1个5位的单向数据输出口为频率计的控制口。
10、 表1 用户可用的CPLD自定义I/O引脚 P4 P5 P6 P8 P9 P10 P11 P15 P16 P17 P18 P20 P21 P22 P24 P25 P27 P28 P29 P30 P31 P77 P79 P80 P81 表2 CPLD和62芯插座连线引脚定义 引脚 名称 CPLD 芯片引脚 62芯插座引脚 说明 引脚 名称 CPLD 对应脚 62芯
11、插座引脚 说明 DO0 P40 16 数字I/O口 地址为03H DO24 P63 28 单向输出口 地址为06H DO1 P36 48 DO25 P76 60 DO2 P41 17 DO26 P64 29 DO3 P44 49 DO27 P75 61 DO4 P45 18 DO28 P68 30 DO5 P46 50 VCC P3,P13, P26,P3 P43,P5, P66,P78 31,62 +5V电源 DO6 P48 19 DO7 P49 51 DO8 P50 20
12、 数字I/O口 地址为04H DO9 P51 52 GND P1,P7, P19,P32, P42,P47, P59,P72, P82,P84 13,44 电源地 DO10 P55 21 DO11 P52 53 DO12 P54 22 DO13 P65 54 DO14 P57 23 CPLD时钟源 sourceCLK P83 45 由S1短路 选择接 CPLD-CLK1 DO15 P67 55 DO16 P56 24 数字I/O口 地址为05H DO17 P69 56 DO18 P58
13、25 outsideclk P39 15 选择接(P83) DO19 P70 57 allCLR P35 47 系统总清零 DO20 P61 26 outside_tri P37 14 外部触发 DO21 P73 58 DO22 P60 27 DO23 P74 59 图6 CPLD实验板电路原理图 五、设计指导: 分为CPLD硬件电路设计和
14、虚拟频率计软件设计两部分 5.1 CPLD硬件电路设计 CPLD设计和调试的过程是:①任务分析,层次分解,得到顶层设计框图,大致确定每个子模快(子电路)的功能、输入和输出;②子模快电路设计和软件仿真;③完成顶层电路设计,顶层仿真;④分配引脚,下载,连线和调试。 5.1.1设计任务分析和顶层设计 根据设计任务,可分为四大部分: (1)闸门时间和测量控制:闸门时间分别为1s,100ms,10ms,1ms,由1MHz的基准时钟分别产生1Hz,10Hz,100Hz,1kHz的时基信号作为闸门控制信号,同时控制测量结果的锁存。 (2)多位计数器电路:根据闸门
15、时间最长为1秒,被测信号频率最高为1MHz,所以选用6位十进制计数器,保证测量计数器不溢出。6位十进制的计数器对被测信号的脉冲进行计数,输出6位十进制计数值,每位都用4位BCD码表示,共有24根线。每次测量开始前清零计数值。 (3)计数结果锁存和实验箱接口:在每次测量闸门时间到时使用锁存器锁存计数值(6位BCD码),供计算机读数。 (4)计数结果6位数码管动态显示电路: 设计一个6位BCD选1的多路数据选择器,输出的一位BCD码(4根线)送给BCD-七段译码器译成段信号,从CPLD输出给数码管的7段。同时多路数据选择器的控制选通信号需要3根,必须与6位数码管的位选信号同步。位选信号
16、来自电路板的时钟(1MHz)分频,在用译码器译码(每次只能选中一个数码管)。要保证多位显示均匀和不闪烁,请计算和设计分频的频率和电路。 根据CPLD电路的层次化设计功能,设计出如图7所示的顶层设计框图。 图7 频率计顶层设计框图 5.1.2 部分电路设计提示 电路的设计均有原理图设计和HDL语言文本设计两种方法,根据电路的特点和各人的情况,自己选用。 对每个子模快进行软件仿真,先创建波形文件,设定时间间隔和解释时间,编辑输入波形,运行仿真,分析结果是否正确。若不正确,则修改设计,重新编译
17、后,再仿真,直到正确为止。 (1)闸门时间和测量控制: 闸门时间分别为1s,100ms,10ms,1ms,由1MHz的基准时钟分别产生1Hz,10Hz,100Hz,1kHz的时基信号作为闸门控制信号,使用CPLD实验板上的1MHz时钟信号,经过1000分频得到1kHz信号,在经过10分频得到100Hz信号,在经过10分频得到10Hz信号,在经过10分频得到1Hz信号。设计时,先设计一个10分频电路,级联3个,得到1000分频,级联一个,得到10分频。闸门时间选择共4档(1s,100ms,10ms,1ms),可采用数据选择器实现,需要2根从计算机来的控制信号。闸门时间产生电路,设计一个电
18、平有效清零端,作为启动测量或停止测量,由计算机通过实验箱来控制。闸门时钟经过D触发器2分频,得到闸门时间内为高电平的信号,作为测量计数结果的锁存控制信号。闸门时钟和显示时钟产生测量计数器的清零信号。 (2)多位十进制的计数器子模块设计: 没有现成电路可用,所以必须自己设计。 为什么不选用二进制计数器(从显示要求、二进制转换为BCD电路的难易等考虑) 设计方法一:选用6个1位的可逆带清零十进制计数器级联得到。注意进位/借位信号的时序。 设计方法二:使用HDL语言编程,注意同时满足十进制、加、减的进位和借位。 (3)计数结果锁存和实验箱接口
19、 在每次测量闸门时间到时使用锁存器锁存计数值(6位BCD码),供计算机读数。采用3个8位的锁存器74273,输入锁存由闸门时间控制,输出长选通,连接实验箱提供的3个数字I/O口,工作在输入方式。 (4)计数结果6位数码管动态显示电路: 由6位BCD选1电路、BCD-七段译码器、位选电路组成,其中为选电路又包括分频电路、为选控制和为选译码电路。 ①6位BCD选1的多路数据选择器设计: 没有现成电路可用,所以必须自己设计。 可选用多个数据选择器来组合。要求控制选通信号需要3根,按000-001-010-011-100-101变化,只有6个状态。
20、 ②BCD-七段译码器设计: 有现成电路选用,注意共阴和共阳数码管的区别。 ③位选信号产生 分频电路:位选信号来自电路板的时钟(1MHz)分频,要保证多位显示均匀和不闪烁,先计算分频电路要求的输出频率,再设计分频电路。可使用计数器分频。也可直接借用闸门时间电路的分频信号。 位选控制:要求为6个状态,设计电路可采用状态机的方法,但仔细分析6个状态之间的关系后,可得出符合_________的计数器。 设计方法:语言和图形均可。 位选译码:每次选中一个,可选用什么译码器?注意位选电平是高电平有效还是低电平有效。 5.1.3 分配引脚和编译、下载
21、 用户可用引脚见表2,引脚分配要满足CPLD电路板上已有的连线情况,考虑芯片引脚和外围电路的位置,就近分配。如输入被测信号在右边,输出7段码和位选在左边。与计算机和实验箱的连接遵照表2的规定。 每次分配引脚后,需重新编译后,再下载。 5.2 虚拟频率计软件设计 5.2.1虚拟频率计界面设计 软件界面上控制型控件有1个数字型旋钮用于选择闸门时间,分为1s,100ms,10ms,1ms 4档,两个按键,1个控制测量的启动/停止,1个控制整个程序退出。 指示型控件有3组,1个布尔型指示灯显示采样状态,1组显示测量的频率数值(十进制)和单位(字符串),单位有Hz和kHz两
22、种,还有1组显示读取的3个字节的计数值(BCD码),由3个数字型控件组成。 图8 频率计界面 5.2.2程序流程图 图9 程序流程图 5.2.3 实验箱EPP接口和编程 SJ8002B实验箱本实验使用EPP地址和意义 地 址 功能和设置 本实验中的设置 00H D7-D0 全局清零信号(在读数、采集、启
23、动信号源之前都必须)? (00H?00) EPP初始化时发清零信号 01H D2-D0 小板控制使能(U019,U020,U021片选), 0:禁止 1:使能 在本实验中需使能 02H D2-D0 DO0-DO23数据方向控制 0:输入(外部à主板) 1:输出(主板à外部) 在本实验中都设为输入 03H D7-D0 DO7-DO0数据 在本实验中作为计数值低字节 04H D7-D0 DO15-DO8数据 在本实验中作为计数值中字节 05H D7-D0 DO23-DO16数据 在本实验中作为计数值高字节 06H D4
24、D0 DO28-DO24数据 (只有输出) 在本实验中作为测量控制和闸门选择 D25D24=00? 闸门时间为1ms D25D24=01? 闸门时间为10ms D25D24=10? 闸门时间为100ms D25D24=11? 闸门时间为1s D27=0? 停止测量 D27=1? 启动测量 其余未用 对EPP接口的操作,调用以下3个子VI来完成: (1)EPP初始化: epp_init.vi 调用时无参数。 (2) EPP写:epp_read_data.vi 调用是输入地址和数据,无输出参数 (3) EPP读:epp_read_data.vi
25、 ,调用是输入地址,输出数据。 5.2.3 数据转换和显示 测量计数值=高字节×10000+中字节×100+低字节 测量结果=计数值/闸门时间 编程时考虑不同档位时的数值、单位和有效位数。 六. 测试和调试 6.1 调试 (1)实验硬件连接 根据设计的频率计电路和分配的引脚连线,被测频率信号连接到函数发生器的TTL(CMOS)输出端。计数器的输出位选分别连接6个数码管的为选端L1~L6;注意左边的数码管为低位,7段信号分别连接。
26、 图10 实验连线图 (2) 检查动态扫描电路 数码管7段信号全部直接接地,位选分别连接CPLD输出位信号,6个数码管稳定显示“888888”。 (3)软硬件联调: 允许虚拟频率计程序,输入信号的频率在10KHz,按下测量键,观察频率计的显示结果是否正确,如不正确,则检查程序,改正错误。 改变闸门时间,观察有效位数的变化,闸门时间为1秒时,有效位数最多。 改变输入信号的频率,继续测量和观察。 6.2 测试 (1) 调节函数发生器输出信号的频率为200kHz,选择不同的闸门时间,进行测试,并且把测试结果填入表2。
27、 表2 闸门时间不同时频率测试结果(信号频率200kHz) 闸门时间信号频率 1ms 10ms 100ms 1s 测试频率 (2)固定闸门时间1s,输入不同频率时,进行测试,把测试结果填入表3,并且计算测试误差。 表3 输入信号频率不同时测试结果(闸门时间为1秒) 信号频率 25Hz 0.25kHz 2kHz 20kHz 200kHz 900kHz 信号源实际 输出频率 测试频率 测试误差






