基于单片机脉冲度测量
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于单片机脉冲度测量
————————————————————————————————作者:————————————————————————————————日期:
山东科技大学电工电子实验教学中心创新性实验研究报告
课程名称:单片机原理及应用
实验项目名称脉冲宽度测量
姓名学号_________________
专业_____________ 班级____________
指导教师及职称________________________
开课学期2011 至2012 学年第一学期
提交时间2012 年 1 月 3 日
一、实验摘要
通过采用STC89C52RC单片机为中心器件来设计脉冲宽度测量器,并运用MCS—51/52单片机计数
功能,选择好工作模式,对脉宽进行计数。在现有的单片机仿真机系统上掌握相关软硬件设计与调试
知识,并在计算机上编写汇编程序调试运行。
二、实验目的
(1)基于STC89C52RC单片机测量脉冲宽度;
(2)研究分别使用定时计数器0,1 的GATE 模式和定时计数器 2 的捕捉功能完成外部
脉冲宽度测量;
(3)通过6位LED显示计数值,时间精确到0.1秒。并熟悉了解试验箱的应用,提高动手能力。
三、实验场地及仪器、设备和材料:
实验场地:J11#324
设备:PC机一台STC89C52RC单片机试验箱一台
教材:1. MCS51/52单片机原理与实践公茂法黄鹤松等编著北京航空航天大学出版
2. 单片机原理及应用张毅刚主编高等教育出版社
3. 其它相关的参考资料及实验教材
四、实验内容
1、实验原理
(1)T0工作方式
通过设置TMOD,使其为定时器模式。在做定时器使用时,将T0定时为0.001S。
当GATE=1时,为门控方式。只有TR0设置为1,且同时外部中断引脚也为高电平时,才能启动T0开始计数工作。
把脉冲信号从P3.2脚引入,T0设为定时器方式工作,并工作在门控方式(GATE=1)。在待测信号高电平期间,T0对内部周期脉冲进行计数。在待测脉冲高电平结束时,其下降沿向P3.2发中断,在外部中断0的中断服务程序中,读取TH0、TL0的计数值,该值就是待测脉冲的脉宽。随后,清零TH0和TL0,以便下一个脉宽的测量。
计算方法:脉冲宽度=计数值*0.01s,将脉冲宽度的数值转换为压缩BCD码,再将压缩BCD码转换为非压缩BCD码用于显示,最后调用显示程序,读取脉冲宽度。
系统原理框图
(2)T2捕捉工作方式
使用T2的捕捉方式,TH2、TL2的初值设为0,待测信号从T2EX(P1.1)引入,采用定时器T0定
时0.001s,刚开始待测信号为高电平或低电平时等待,再次检测为高电平时T2开始计数,定时器T0每定时0.001s,通过串口P1.0的开关状态使T2的计数值增一并将计数值存入RCAP2H 和RCAP2L 两个寄存器中。
计算方法:脉冲宽度=计数值*0.001s ,再将得到的表示脉冲宽度的十六进制转换为压缩BCD 码,再将压缩BCD 码转换为非压缩BCD 码用来显示,读取LED 上显示的数据即为要测量的脉冲宽度。
2、实验内容
计数 被检测脉冲信号
为高则开始计数 为低时停止计数
T0:把脉冲信号从P3.2脚引入,T0设为定时器方式工作,并工作在门控方式(GATE=1)。在待测信号高电平期间,T0对内部周期脉冲进行计数。在待测脉冲高电平结束时,其下降沿向P3.2发中断,在外部中断0的中断服务程序中,读取TH0、TL0的计数值,计算出所测。随后,清零TH0和TL0,以便下一个脉宽的测量。显示:将数码管的段控信号与P 口与六位LED 数码管相连。
T2:使用T2捕捉方式时将脉冲信号加到P1.1引脚,并且同时开通T0定时器,将数码管的段控信号与P0口与六位LED 数码管相连,将位控信号P2与键盘相连。
89C51 单片机控制器
6位数码管显
7407 列驱动
信
振荡
六位数码管显示数码管接线图
A 1B
2
Q 03Q 14Q 25Q 36Q 410Q 511Q 612Q 7
13
C L K
8
M R
9
U374H C164A 1B
2
Q 03Q 14Q 25Q 36Q 410Q 511Q 612Q 7
13
C L K
8
M R
9
U474H C164A 1B
2
Q 03Q 14Q 25Q 36Q 410Q 511Q 612Q 7
13
C L K
8
M R
9
U574H C164A 1B
2
Q 03Q 14Q 25Q 36Q 410Q 511Q 612Q 7
13
C L K
8
M R
9
U674H C164 9 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 e VCC VCC VCC VCC 3 8COM COM COM Vin
3
A D J
1
+Vou t
2
LM317T
1K
390
C1 104
VCC
A 1B
2
Q 03Q 14Q 25Q 36Q 410Q 511Q 612Q 7
13
C L K
8
M R
9
U574H C164A 1B
2
Q 03Q 14Q 25Q 36Q 410Q 511Q 612Q 7
13
C L K
8
M R
9
U674H C164
g f a b dp c d e g f a b dp c d e
VCC
VCC
COM COM
CLK
DAT A 共阳
123
J0
共阳7段LED 显示器显示原理: 引脚 数字显示
g f a b e d c h 数码显示 0 0 1 1 1 1 1 1 0 C0H 1 0 0 0 1 0 0 1 0 F9H 2 1 0 1 1 1 1 0 0 A4H 3 1 0 1 1 0 1 1 0 B0H 4 1 1 0 1 0 0 1 0 99H 5 1 1 1 0 0 1 1 0 92H 6 1 1 1 0 1 1 1 0 82H 7 0 0 1 1 0 0 1 0 F8H 8 1 1 1 1 1 1 1 0 80H 9
1
1
1
1
1
1
90H
采用共阳7段LED 数码管显示器,P 口引入脉冲信号,P2.0至p2.3口作为列扫描输出,P0口输出段码数据,采用12Mhz 晶振,可提高计数的精确度。
3、实验步骤
以流程图的方式表现实验步骤: