山东科技大学创新性实验:脉冲宽度测量

上传人:mg****85 文档编号:34200444 上传时间:2018-02-21 格式:DOC 页数:14 大小:2.04MB
返回 下载 相关 举报
山东科技大学创新性实验:脉冲宽度测量_第1页
第1页 / 共14页
山东科技大学创新性实验:脉冲宽度测量_第2页
第2页 / 共14页
山东科技大学创新性实验:脉冲宽度测量_第3页
第3页 / 共14页
山东科技大学创新性实验:脉冲宽度测量_第4页
第4页 / 共14页
山东科技大学创新性实验:脉冲宽度测量_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《山东科技大学创新性实验:脉冲宽度测量》由会员分享,可在线阅读,更多相关《山东科技大学创新性实验:脉冲宽度测量(14页珍藏版)》请在金锄头文库上搜索。

1、山东科技大学电工电子实验教学中心创新性实验研究报告课程名称:单片机原理及应用设计实验项目名称 脉冲宽度测量 姓名 学号 手机 Email 专业 电气工程及其自动化 班级 指导教师及职称 开课学期 至 学年 学期提交时间 年 月 日一、实验摘要随着电子技术的应用越来越广泛,对各种系统工作时间特性的分析也越来越重要且精度要求越来越高,图 1 显示了这种时间特性,其中 t 表示脉冲宽度,即高电平维持的时间,T 表示一个波形的周期,即一个波形完整经历一个高电平和一个低电平所需的时间。图 1 脉冲宽度与周期在现代工业应用中,脉冲宽度测量在传感器以及 PWM(脉宽调制器)的输入频率的测量都有重要作用,且脉

2、宽和周期是脉冲的重要指标。不论在模拟电路还是在数字电路中测量脉宽都有必要性,因此精确测量脉宽至关重要。二、实验目的1、掌握定时器的使用方法。2、了解显示器的显示原理及其使用方法。3、掌握示波器与单片机的应用测量波形精确测量脉宽。4、掌握 51 单片机汇编程序的设计及串行总线接口设计。5、将课本知识与实际相结合,锻炼实践动手能力和解决实际问题的能力。三、实验场地及仪器、设备和材料:实验场地:单片机实验室实验仪器设备:PC 兼容机一台,单片机实验箱一个四、实验内容1、实验原理对脉冲宽度的测量方法有用示波器直接测量脉冲宽度及周期、基于定时/计数器测量脉冲宽度及周期的一般原理及采用的方法、内插扩展法、

3、基于单片机的脉冲宽度与周期的测量四种方法,其中用示波器直接测量误差大、不精确,对低频信号无法读出;基于定时/计数器测量脉冲宽度及周期的一般原理及采用的方法精度比较高,计数器法可能产生的最大误差绝对值不超过计数脉冲周期;内插法不做详解。本次实验主要采用基于单片机的脉冲宽度与周期的方法,可以分别采用 T0 的门控方式和 T2 的捕捉方式,其原理框图如图 2。使用 T0 的门控方式原理为采用定时器 T0 定时 0.001s,当/INTO(P3.2)为高电平且TR0 为高电平时 T0 开始启动进入中断,定时时间到利用 P1.0 使 T2 计数值增一,直到遇到低电平,停止计数,脉冲宽度=计数值*0.01

4、s,将脉冲宽度的数值转换为压缩 BCD 码,再将压缩 BCD 码转换为非压缩 BCD 码用于显示,最后调用显示程序,读取脉冲宽度。信号源STC89C52 单片机控制器6 位LED 显示驱动电路振荡电路图 2 脉冲宽度及周期原理方框图使用 T2 的捕捉方式,TH2、 TL2 的初值设为 0,待测信号从 T2EX(P1.1)引入,采用定时器 T0定时 0.001s,刚开始待测信号为高电平或低电平时等待,再次检测为高电平时 T2 开始计数,定时器T0 每定时 0.001s,T2 的计数值增一并将计数值存入 RCAP2H 和 RCAP2L 两个寄存器中,脉冲宽度=计数值*0.001s,再将得到的表示脉

5、冲宽度的十六进制转换为压缩 BCD 码,再将压缩 BCD 码转换为非压缩 BCD 码用来显示,读取 LED 上显示的数据即为要测量的脉冲宽度。2、实验内容实验原理图设计如下:本实验使用 C51 试验箱,使用 T0 门控方式时将脉冲信号加到 P3.2 引脚,使用 T2捕捉方式时将脉冲信号加到 P1.1 引脚,将数码管的段控信号与 P0 口与六位 LED 数码管相连,将位控信号 P2 与键盘相连10uf+55.1k 1K RST2RST+5XTL1XTL2P00P01P02P03P04P05P06P07PSENP20P21P22P23P24P25P26P27P10P11P12P13P14P15P1

6、6P17P30P31P32P33P34P35P36P3711.0592M30p30pEA/VP 31X119X218 RESET9RD17WR16INT012INT113T014T115P101P112P123P134P145P156P167P178P00 39P01 38P02 37P03 36P04 35P05 34P06 33P07 32P20 21P21 22P22 23P23 24P24 25P25 26P26 27P27 28PSEN 29ALE/P 30TXD11RXD10STC89C52RCALEALEPOWER / PROG+5V+5VCC图 3 试验箱 CPU 连接图串 行

7、 显 示 /串 行 输 入 输 出A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9U3 74HC164A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9U4 74HC164A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9U5 74HC164A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9U6 74HC1649 10 7 6 5 4 2 1 g f a b dp c d e g f a b dp c d e g f a b dp c d eVCC VCC VCC VCC3 8 C

8、OM COM COMVin3ADJ1+Vout 2LM317T1K390C1 104VCCA1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9U5 74HC164A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8MR9U6 74HC164g f a b dp c d e g f a b dp c d eVCC VCCCOM COMCLKDATA共 阳123J0图 4 数码管显示电路图使用六位 LED 数码管显示,采用 89C52 单片机,使用振荡电路产生 12MHZ 的频率信号,复位电路确保单片机程序顺利执行。采用动态扫描法实现 LED 数码管显

9、示。共阳 7 段 LED 显示器显示原理如下:D7h(dp)D6gD5fD4eD3dD2cD1bD0a共阳七段码 显示字符0 0 1 1 1 1 1 1 C0H 00 0 0 0 0 1 1 0 F9H 10 1 0 1 1 0 1 1 A4H 20 1 0 0 1 1 1 1 B0H 30 1 1 0 0 1 1 0 99H 40 1 1 0 1 1 0 1 92H 50 1 1 1 1 1 0 1 82H 60 0 0 0 0 1 0 1 F8H 70 1 1 1 1 1 0 1 80H 80 1 1 1 1 1 1 1 90H 90 1 1 0 0 1 1 1 88H A0 1 1 1

10、1 1 0 0 83H B0 0 1 1 1 0 0 1 C6H C0 1 0 0 0 1 1 1 A1H D0 1 1 1 1 0 0 1 86H E0 1 1 1 0 0 1 1 8EH F1 0 0 0 0 0 0 0 89H H图 4 共阴 7 段 LED 显示器显示码3、实验步骤 T0 门控方式的程序流程图以及 T2 捕捉方式程序流程图如下:开始对 TH0、TL0、R3 、R4 赋初值脉冲信号为高电平?开定时器 T0 的中断脉冲信号为低电平?进入定时器 T0 的中断,并将计数值清零进入定时器 T0 中断服务程序,并将定时溢出值存入两个存储单元调用压缩 BCD 码转换程序调用非压缩 B

11、CD 码转换程序调用显示程序结束否是否是图 5 T0 门控方式的程序流程图调用压缩 码转换程序调用非压缩 码转换程序调用显示程序结束图 6 T2 捕捉方式程序流程图开始对 TH0、TL0、TH2、TL2 赋初值待测信号为低电平?启动定时器 T0脉冲信号为高电平进入 T0 的定时中断且记录定时次数关定时器 T0 的中断,将计数值存入新的地址单元调用压缩 BCD 码转换程序调用非压缩 BCD 码转换程序调用显示程序结束否是是否五、实验结果与分析1、实验现象、数据记录采用 T0 门控方式得到的数据T2 捕捉方式得到的数据2、对实验现象、数据及观察结果的分析与讨论:实验在调试的过程中会出现一系列的问题

12、,如果是脉冲宽度只显示一次,则是因为进入定时器的中断次数不对,这是需要改进在显示一次后如果再出现高电平需要再次进入中断服务程序;若显示的数值只闪一下最后只显示一位数则是因为显示程序调用出现问题,这是需要不停地调用显示程序来解决问题,若程序和中显示乱码或计数不对则可能是子程序中程序编写出现错误或是只是某一个小地方出现差错,应仔细检查。3、关键点:我认为本实验的关键点为定时器 T0、T1 以及定时器 T2 的编程及原理的使用,正确理解 T2 的捕捉下降沿方式测量脉冲宽度的使用方法,以及 T0 的门控方式测量脉冲宽度的方法,熟练掌握压缩 BCD 码以及非压缩 BCD 码的转换,正确理解 LED 数码

13、管的显示原理及显示程序的编程,正确编出实验程序。六、实验结论通过本次试验了解了脉冲宽度的多种测量方法,以及掌握这种方法中可能会遇到的问题及其解决方法,要掌握实验的核心理解使用 T0 门控方式和 T2 的捕捉方式的具体操作方法,了解其脉冲产生及计数定时原理。 七、指导老师评语及得分:签名: 年 月 日附件:源程序等。T0 门控方式实验程序:ORG 0000HLJMP MAINORG 000BHLJMP T0_INTORG 0030HMAIN: MOV TMOD,#09H;设 T0 工作在方式1,GATE=1 MOV TL0,#0FCHMOV TH0,#17H;设定时初值,定时 0.001sMOV

14、 R4,#00HMOV R3,#00HJB P3.2,$SETB ET0SETB EAIOC: SETB TR0 JNB P3.2,$;进入 T0 定时中断MOV R3,#00H MOV R4,#00H;R3R4 存定时溢出值,此时在低电平计数,需将所记的数值清零 JB P3.2,$CLR TR0;脉冲信号出现低电平,定时停止MOV 34H,R4MOV 35H,R3 LCALL BCD;将计数值变为压缩 BCD 码LCALL UBCD;将压缩 BCD 码转换为非压缩BCD 码用于显示DIS:LCALL DISP;调用显示程序JB P3.2,IOC;当脉冲信号再次出现高电平时继续进入中断SJMP

15、 DIST0_INT:INC R3;定时到计数值加一CJNE R3,#00H,NEXTINC R4NEXT: MOV TH0,#0FCHMOV TL0,#17H RETIBCD:MOV R7,#16CLR A;BCD 码初始化MOV 47h,A MOV 46h,A MOV 45h,A BCD1:CLR C MOV A,35HRLC A MOV 35H,A MOV A,34H RLC A MOV 34H,AMOV A,47HADDC A,47H DA AMOV 47H,A MOV A,46H ADDC A,46H DA A MOV 46H,A MOV A,45H ADDC A,45H DA AMOV 45H,ADJNZ R7,BCD1RET;将得到的压缩 BCD 码从高到低存入45H46H47HUBCD:MOV A,45HANL A,#0F0HSWAP AMOV 50H,AMOV A,45HANL A,#0FHMOV 51H,AMOV A,46HANL A,#0F0HSWAP AMOV 52H,AMOV A,46HANL A,#0FHMO

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号