等精度频率计的实验报告
- 格式:doc
- 大小:163.29 KB
- 文档页数:7
数字频率计
摘要
以 FPGA(EP2C8Q208C8N) 为控制核心设计数字频率计,设计采用硬件描述语言Verilog 该作品主要包括FPGA控制、数码管模块、信号发生器、直流电源模块、独立按键、指示灯模块。主要由直流电源供电、数字信号发生器输出信号,FPGA 控制信号的采集、处理、输出 ,数码管显示数据,按键切换档位,指示灯显示档位。作品实现了测频、测周、测占空比,能准确的测量频率在10Hz到100kHz之间的信号。
关键字: 频率计 等精度 FPGA (EP2C8Q208C8N) 信号发生器
Verilog语言
一、 系统方案论证与比较
根据题目要求,系统分为以下几个模块,各模块的实现方案比较选择与确定如下:
1.主控器件比较与选择
方案一:采用FPGA(EP2C8Q208C8N)作为核心控制,FPGA具有丰富的I/O口、内部逻辑和连线资源,采集信号速度快,运行速度快,能够显示大量的信息,分频方便。
方案二:采用SST89C51作为主控器件,虽然该款单片机较便宜,但运行速度较慢,不适合对速度有太大要求的场合,并且不带AD,增加了外围电路。
综上所述,主控器件我选择方案一。
2. 测量方法的比较与选择
方案一:采用测频法测量。在闸门时间内对时钟信号和被测信号同时计数,由于在闸门闭合的时候闸门时间不能是被测信号的整数倍,导致计数相差为一个被测信号时间,所以测频法只适合频率较高的测量。
方案二:采用测周法测量。用被测信号做闸门,在闸门信号内对时钟信号计数,由于在闸门闭合的时候闸门时间不能是时钟信号的整数倍,导致计数相差为一个时钟信号时间,所以测周法只适合较低频率的测量。
方案三:采用等精度法和测周法结合的方法。用等精度发测量1KHZ以上的频率,测周法测量1KHZ一下的频率。这种方法取长补短,既能准确的测高频又能测低频。
综上所述,测量方法我选用方案三。
3. 界面显示方案的选择
方案一:采用数码管显示,控制程序简单,价格便宜,显示直观。
方案二:液晶5110,虽然体积小,可以显示各种文字,字符和图案。
考虑到数码管完全可以满足数据显示要求,所以显示部分我选用方案一。
二、理论分析与计算
1、键盘设计
系统中我们采用独立键盘,用2个I/O控制2个键。原理是将2个I/O口直接接键盘的2个引脚,低电平有效,这种键盘的优点反应的速率快。
2、计算公式
(1)测频: 1khz以上: 被测频率=时钟频率*(被测频率计数/时钟频率计数) 1khz以下 : 被测频率=时钟频率/(时钟频率在被测信号高电平计数+时钟频率在被测信号低电平计数) (2)测周: 被测周期=(时钟频率计数/被测频率计数)*时钟周期
(3)测占空比:占空比=高电平计数/(高电平计数+低电平计数)
三 电路与程序设计
根据题目要求,经过仔细考虑制订了一个比较可行的方案,系统方框图如下:
图1系统方框图
(一)电路设计
(1)换挡指示灯电路设计
模块共使用了7个LED 灯,分别指示测频、测周、测占空比、HZ挡、KHZ挡、ms挡、um挡。 独立键盘
FPGA(EP2C8Q208C数码管 信号发生器
直流电源供电
图2指示灯模块电路设计
(2)直流电源电路设计
图3直流电源电路设计
(二)程序设计
FPGA 控制器采用Verilog 语言进行程序设计,软件总体设计流程图如图4所示。
四、测试方案与测试结果
1.测试仪器
数字信号发生器
2. 数据测量
1.测频
输出频率 测量频率 误差范围
1.01hz 1.01hz 0
10hz 10.00hz 0
100hz 100.00hz 0
1khz 1.00khz 0
10khz 10.00khz 0
100khz 100.00khz 0
999khz 999.00khz 0
2.测周期
输出周期 测量周期 误差范围 数据采集
测频计数 测周计数 测占空比计数
档位选择、指示灯选择 按键
数码管显示 指示灯显示 开始
结束 1.01hz(990.099ms) 990.099ms 0
10hz(100ms) 100ms 0
100hz(10ms) 10ms 0
1khz(1ms) 1ms 0
10khz(100us) 100us 0
100khz(10us) 10us 0
1mhz(1us) 0.960us 4%
3. 测占空比
输出占空比 测量占空比 误差范围
1% 1.07% 7%
10% 10.05% 0.5%
20% 20.21% 1%
30% 29.98% 0.01%
40% 40.13% 0.27%
50% 49.80%
0.04%
60% 59.96% 0.01%
70% 69.72% 0.4%
80% 79.69% 0.4%
90% 89.69% 0.33%
99% 98.63% 0.37%
五、结论
基本功能 是否实现 扩展功能 是否实现
测频 实现 自做电源 实现
测周期 实现 自做信号发生器 未实现
测占空比 实现
附件
(如果想要源程序请单独留言,太多就不传了。)