单片机测量方波的频率、占空比及相位差的方法

单片机测量方波的频率、占空比及相位差的方法

单片机测量方波的频率、占空比及相位差的方法

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; //保存定时器值

上升沿打开定时器 下降沿读取定时器值并保存 下一个上升沿关

闭定时器,读取

定时器值并保存

单片机测量方波的频率、占空比及相位差的方法相关文档

最新文档

返回顶部