当前位置:文档之家› 单片机测量频率,占空比,相位差

单片机测量频率,占空比,相位差

单片机测量频率,占空比,相位差
1、 频率及占空比的测量
如上图所示,当脉冲的上升沿来临时,将定时器打开;紧接着的下降沿来临时,读取定时器的值,假设定时时间为t1;下一个上升沿来临时关闭定时器,读取定时器的值,假设定时时间为t2。

t1即为1个周期内高电平的时间,t2即为脉冲的周期。

t1/t2即为占空比,1/t2即为频率。

C 语言程序如下:
TH0=0; //定时器高位,初值设为0
TL0=0; //定时器低位,初值设为0
T0_num=0; //定时器溢出次数,初值设为0
while(pulse); //pulse 为脉冲的输入引脚
while(!pulse); //等待上升沿来临
TR0=1; //打开定时器
while(pusl1); //等待下降沿来临
th1=TH0;tl1=TL0;num1=T0_num; //保存定时器值
while(!pusl1); //等待上升沿来临
TR0=0; //关闭定时器
th2=TH0;tl2=TL0;num2=T0_num; //保存定时器值
2、 相位差的测量
上升沿打开定时器 下降沿读取定时器值并保存 下一个上升沿关
闭定时器,读取
定时器值并保存
测量相位差的电路如上所示,待测量的两路脉冲分别作为两个D触发器的时钟输入,两个D触发器的输入端D及S端都接高电平,第一个D触发器的输出接第二个D触发器的R端,第二个D触发器的互补输出端接第一个D触发器的R端。

从下面的波形图可以看出,第一个D触发器输出的脉冲信号的占空比乘以2π即为相位差。

这样就将测量两路方波信号的相位差转化为测量一路方波
信号的占空比,就可以按照前面介绍的测量占空比的方法来测量了。

黄色的波形为脉冲1,蓝色的波形为脉冲2,红色的波形为相位差。

相关主题