不用单片机内部计数器而用软件计数法,能准确计到0-100个脉

[复制链接]
3155|5
 楼主| mcu520 发表于 2008-9-13 15:13 | 显示全部楼层 |阅读模式
用STC89C52,原本有3个定时计数器,但是由于要测8个独立脉冲,所以要用软件计脉冲,然后再算频率,能精确到0.1吗也就是100个脉冲测到的就是100个,不能是99或101,请问可以实现吗,我做的时候总有正负1误差,就是不对了.有人有方法吗?
lyjian 发表于 2008-9-13 15:43 | 显示全部楼层

关键是脉冲的频率多高

如果频率比较低那当然可以
而且也和你计脉冲的时间隔有关啊
bg6nw 发表于 2008-9-13 22:01 | 显示全部楼层

如果编制软件上处理的速度不够快

可以考虑将脉冲展宽一下再进单片机
conwh 发表于 2008-9-14 09:12 | 显示全部楼层

用一个定时器做前后台

 楼主| mcu520 发表于 2008-9-17 09:20 | 显示全部楼层

还是不行

软件处理里关闭所有的外部中断,完全软件模拟脉冲
问题是T1做串口通信,T0做1S定时中断,T2做时标定时中断,可测的时候有时是100,有时是101,那就是不对了呀,问题不知道出在哪里
 楼主| mcu520 发表于 2008-9-17 09:31 | 显示全部楼层

我觉得问题出在中断

原本用周期测频法,F=N/T0 0-100测的脉冲周期数正确
现在用等精度测周法,F=N/(T2*N2),多了一个时标中断
这样两个中断是不是会互相影响
您需要登录后才可以回帖 登录 | 注册

本版积分规则

39

主题

191

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部