EDA脉冲宽度测量仪实验报告.docx
《EDA脉冲宽度测量仪实验报告.docx》由会员分享,可在线阅读,更多相关《EDA脉冲宽度测量仪实验报告.docx(9页珍藏版)》请在冰豆网上搜索。
EDA脉冲宽度测量仪实验报告
湖南涉外经济学院
课程设计报告
课程名称:
EDA技术与应用
报告题目:
脉冲宽度测量仪
学生姓名:
刘君玮
所在学院:
电子科学与信息学院
专业班级:
电子信息1302
学生学号:
134110229
指导教师:
罗志年李刚
2015年12月24日
EDA课程设计任务书
报告题目
脉冲宽度测量仪
完成时间
12.23-
1.11
学生姓名
刘君玮
专业班级
电信1302
指导教师
罗志年
李刚
职称
副教授
讲师
设计目的
在电子技术及其应用领域中,常需要对各种系统工作的时间特性进行分析测量,如图一给出的这种时间特性示意图,其中t表示时间脉冲宽度,即指脉冲起始时间和终止时间的持续时间。
T表示一个工作周期,即从脉冲的一个上升沿到下一个上升的时间。
图一 脉冲宽度与周期
在测量与仪器仪表领域,经常需要对数字信号的脉冲宽度进行测量,如转速传感器、外部系统的门控与选通脉冲,以及PWM(脉冲宽度调制)输入的频率等。
因此可以说脉冲宽度和周期是关于脉冲的重要指标。
无论是模似电路还是数字电路,往往都需要对脉冲宽度进行测量。
设计内容
(1)脉冲信号宽度的测量精度为±1ms。
(2)脉冲信号宽度的测量范围为0~10s。
(3)调试过程中可以用按键模拟脉冲信号。
(4)测量值用5位数码管显示(可以采用静态显示)。
(5)输入信号为标准TTL电平。
(6)调试中既可以采用正脉冲,也可以采用负脉冲(任选其一)。
(7)必须先进行前仿真,并打印出仿真波形。
(8)按要求写好设计报告(设计报告内容包括:
引言,方案设计与论证,总体设计,各模块设计,调试与数据分析,总结)。
设计步骤
工作内容及时间进度安排
共2周:
12.22小组成员分工写好各模块的程序
12.23将程序生成的模块进行调试、整合。
12.24在实验平台上进行验证。
课程设计成果
1.与设计内容对应的软件程序
2.课程设计总结报告
摘要
随着EDA技术的迅速发展,在EDA软件平台上,根据硬件描述语言VHDL完成的设计文件,自动地完成逻辑编译、化简、分割、综合、优化、布局线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作成了脉冲测量的发展方向。
采用此种发法,设计者的工作仅限于利用软件的方式来完成对系统硬件功能的描述,在EDA工具的帮助下和应用相应的FPGA/CPLD器件,就可以得到最后的设计结果。
通常采用脉冲计数法,即在待测信号的高电平或低电平用一高频时钟脉冲进行计数,然后根据脉冲的个数计算待测信号宽度,如图四所示。
待测信号相对于计数时钟通常是独立的,其上升、下降沿不可能正好落在时钟的边沿上,因此该法的最大测量误差为一个时钟周期。
例如采用50MHz的高频时钟,最大误差为20ns。
关键词:
脉宽;脉冲;数显;电容
目录
一、概述………………………………………………………………………………1
二、需求分析…………………………………………………………………………2
三、系统设计…………………………………………………………………………3
四、**模块详细设计与实现……………………………………………………4
五、结论与心得………………………………………………………………………6
六、参考文献…………………………………………………………………………6
1、概述
在测量与仪器仪表领域,经常需要对数字信号的脉冲宽度进行测量,如转速传感器、外部系统的门控与选通脉冲,以及PWM(脉冲宽度调制)输入的频率等。
因此可以说脉冲宽度和周期是关于脉冲的重要指标。
无论是模似电路还是数字电路,往往都需要对脉冲宽度进行测量。
参与此次课程设计的小组成员为:
刘君玮,王郑军,刘格诚,杨卓龙。
各自参与了程序编写、原理图绘制、实验验证的工作。
整体情况良好,在规定时间内完成了各项工作。
2、需求分析
1.脉冲检测
实现对脉冲的检测,即信号的输入。
2.计数器
对脉宽进行计数
3.数据选择器
对数据进行选择处理
4.LED显示译码器
对统计的结果进行显示
3、系统设计
1.系统模块
(1)脉冲检测模块
当有检测到P_IN端有脉冲输入(P_IN=1)时,EN_OUT=1输送到计数器的EN端。
(2)计数模块
计数模块是对检测到的脉冲进行计数,计算出脉冲的宽度。
(3)译码显示模块
对输入的脉冲宽度进行编码,然后在数码管上显示出来。
2.总流程图
4、详细程序设计
(1)脉冲检测模块
libraryieee;
useieee.std_logic_1164.all;
entitycheckis
port(
P_IN:
instd_logic;
EN_OUT:
outstd_logic);
endcheck;
architecturebehaveofcheckis
begin
process(P_IN)
begin
if(P_IN='1')thenEN_OUT<='1';---实现检测,若有脉冲就输出为1
elseEN_OUT<='0';---,否则为0
endif;
endprocess;
endbehave;
(2)计数模块
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
entitycountis
port(EN:
instd_logic;
CLK:
instd_logic;
CLR:
instd_logic;
CQ:
outstd_logic;
Qout:
BUFFERstd_logic_vector(3downto0)
);
endcount;
architectureartofcountis
begin
U1:
process(CLK,CLR,EN,QOUT)
Begin
ifCLR='1'thenQout<="0000";
elsifCLK'EVENTandCLK='1'then
ifEN='1'then
ifQout="1001"thenQout<="0000";
elseQout<=Qout+'1';
endif;
endif;
endif;
ifQout="1001"then
CQ<='1';
else
CQ<='0';
endif;
endPROCESSU1;
endart;(3)译码显示模块
libraryieee;
useieee.std_logic_1164.all;
ENTITYledIS
PORT(X:
INBIT_VECTOR(3DOWNTO0);
Y:
OUTBIT_VECTOR(6DOWNTO0));
--sel:
outstd_logic_vector(7downto0));
ENDENTITYled;
ARCHITECTUREARTOFledIS
BEGIN
--sel<="11111110";
PROCESS(X)is
BEGIN
IFX="0000"THENY<="1111110";--0
ELSIFX="0001"THENY<="0110000";--1
ELSIFX="0010"THENY<="1101101";--2
ELSIFX="0011"THENY<="1111001";--3
ELSIFX="0100"THENY<="0110011";--4
ELSIFX="0101"THENY<="1011011";--5
ELSIFX="0110"THENY<="0011111";--6
ELSIFX="0111"THENY<="1110000";--7
ELSIFX="1000"THENY<="1111111";--8
ELSIFX="1001"THENY<="1110011";--9
--ELSIFX="1010"THENY<="1110111";--A
--ELSIFX="1011"THENY<="0011111";--b
--ELSIFX="1100"THENY<="1001110";--C
--ELSIFX="1101"THENY<="0111101";--d
--ELSIFX="1110"THENY<="1001111";--E
--ELSIFX="1111"THENY<="1000111";--F
ELSENULL;
ENDIF;
ENDPROCESS;
ENDARCHITECTUREART;
5、总原理图与管脚锁定表
总模块图
管脚锁定表
6、结论与心得
经过调试及结果分析,设计满足任务要求。
脉冲信号宽度的测量精度符合±1ms,测量范围为0~10s。
这次的课程设计对于我来说是一次演练,从选题到画出流程图,再到写出程序,不停的编不停的改不停的查资料……直至最后完成,有问题大家都坐在一起讨论,一起努力,一起攻克问题。
我想我们享受的就是这个过程,而不仅仅只是结果。
通过这次的设计,我知道了,在任何问题面前,只要我们努力,只要我们勇敢,我想,它们都不是问题,都不是困难。
7、参考文献
[1]高金定主编.EDA技术与应用.中国电力出版社.2010
[2]刘英.脉宽的测量和参数分析.电子信息对抗技术.2007
[3]吴大正.信号与线性系统分析.高等教育出版社.2005
[4]阎石.数字电子技术基础.第四版.北京:
高等教育出版社,1998
教师评语及设计成绩
教师评语:
课程设计成绩:
指导教师:
(签名)
日期:
年月日