资深雨粉 发表于 2018-10-27 11:24:09

怎么使用单片机计数器检测250k pwm频率?

现将一芯片pwm波发生引脚接在p3.5上,p3.5作为检测引脚,用计数器T0检测p3.5引脚下降沿,记录两个下降沿间隔时间,计算出pwm频率,具体应该如何操作呢?可否附上伪代码?感谢大家

johnlj 发表于 2018-10-27 12:52:38

250k pwm频率,周期约为4uS,自己看看检测的精度吧!

chaled 发表于 2018-10-27 13:00:25

确定只检测频率?那直接用定时器的外部计数模式,另外一个计数器定时1秒或者0.1秒去读一下计数器的值得到脉冲个数就知道频率了!

资深雨粉 发表于 2018-10-27 14:15:36

chaled 发表于 2018-10-27 13:00
确定只检测频率?那直接用定时器的外部计数模式,另外一个计数器定时1秒或者0.1秒去读一下计数器的值得到脉 ...

可不可以具体一点呢,寄存器该如何配置呢

ilikemcu 发表于 2018-10-27 14:57:20

51的定时器都是16bit的,65535就满了,相当于65k多的计数,你的外部频率250KHz,那么至少要0.25秒定时去读一次计数值,否则会溢出,造成读数错误。

具体的寄存器,参考手册说明啊,51的变种很多,实际设置也是五花八门,但基本的都差不多,慢慢测试,慢慢调。

资深雨粉 发表于 2018-10-27 15:06:47

ilikemcu 发表于 2018-10-27 14:57
51的定时器都是16bit的,65535就满了,相当于65k多的计数,你的外部频率250KHz,那么至少要0.25秒定时去读 ...

我可不可以计数100个脉冲所用的时间呢,然后再除以100,把一个周期的时间计算出来,这样频率是不是就算出来了呢

XA144F 发表于 2018-10-27 18:15:37

可以计算,但是误差有点大,你试试用74hc160分频后再测量。

lgg88 发表于 2018-10-27 19:16:11

计数越多频率越准确

Linda898 发表于 2018-10-27 19:16:38

资深雨粉 发表于 2018-10-27 15:06
我可不可以计数100个脉冲所用的时间呢,然后再除以100,把一个周期的时间计算出来,这样频率是不是就算出 ...

你这种频率相对固定的,用单片机检测100ms 或更小时间的脉冲数,就可以计算出频率了

rainbow 发表于 2018-10-27 21:22:34

一般是慢了测时间,快了数个数。

colinzhao 发表于 2018-10-27 21:35:48

推荐用STC,联系原厂,把主屏超平到1G,这样单周期指令只有1ns的运行时间,精度应该不错,点流水灯也会比较亮。

shower.xu 发表于 2018-10-27 22:27:28

你都说250K了,还要测什么?如果测的话,试试硬件计数脚位。
另外建议直接说目的,我感觉你应该换条路子到罗马
页: [1]
查看完整版本: 怎么使用单片机计数器检测250k pwm频率?