打印

有什么好办法用IO口线检查60KHZ频率的信号?

[复制链接]
2592|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
许世霞|  楼主 | 2012-10-17 09:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
jjjyufan| | 2012-10-17 10:34 | 只看该作者
有何不妥?

使用特权

评论回复
板凳
zlh6630| | 2012-10-17 10:39 | 只看该作者
是精度问题?精度要求不高的话应该没什么问题

使用特权

评论回复
地板
论坛游客| | 2012-10-17 11:02 | 只看该作者
有CAP功能没有
没有的话  用定时器中断呀

使用特权

评论回复
5
coody| | 2012-10-17 11:29 | 只看该作者
有何不妥?MCU测频很常用,有的MCU可以到几MHZ至几十MHZ。

使用特权

评论回复
6
virtualtryon| | 2012-10-17 13:05 | 只看该作者
本帖最后由 virtualtryon 于 2012-10-17 13:10 编辑

60KHZ的信号,周期是16us,用A/D采样的话,采样间隔至少要小于8us,普通单片机肯定达不到这么高的速度的.
应该用脉宽捕捉 CCP功能,或者是
用电平跳变中断+定时器中断或主程序定时查询,
定义一变量A.
在电平跳变中断中,只把变量A加1,应该能在几us完成.
在一固定时间内(定时器中断或者主程序定时查询),通过变量A的值计算频率.
注意,不同中断之间以及主程序之间的资源互斥问题.

使用特权

评论回复
7
许世霞|  楼主 | 2012-10-17 14:49 | 只看该作者
因为我对自己的想法没信心。随便说的不成熟。
可以用外部触发中断,多采样几个,就可以算频率了呀。
我看一个同事为了验证输出频率正常,将该频率信号输出到一个高频变压器上,然后有整流滤波稳压,最后看稳压后的电压是不是对的来判定频率信号是否输出正常。我觉得这样做是不是有点多余呢?

使用特权

评论回复
8
baiyunfei.k.f| | 2012-10-17 15:34 | 只看该作者
本帖最后由 baiyunfei.k.f 于 2012-10-17 15:36 编辑

7# 许世霞
接到计数器或者示波器上不就验证了吗

使用特权

评论回复
9
程序金左手| | 2012-10-17 16:32 | 只看该作者
直接上外部中断。。。。。不可以吗。。。

使用特权

评论回复
10
许世霞|  楼主 | 2012-10-17 21:18 | 只看该作者
8# baiyunfei.k.f 我现在为了实现功能,不是为了验证

使用特权

评论回复
11
夏日飞鹰| | 2012-10-17 22:43 | 只看该作者
先将信号分频再处理吧,在软件上乘以一定的倍率

使用特权

评论回复
12
chenyu988| | 2012-10-18 08:07 | 只看该作者
采集过零点不就行了吗?

使用特权

评论回复
13
chenyu988| | 2012-10-18 08:08 | 只看该作者
硬件用差分比例运放电路,软件采集过零点

使用特权

评论回复
14
zd420325| | 2012-10-18 09:09 | 只看该作者
用双核单片机

使用特权

评论回复
15
zd420325| | 2012-10-18 09:10 | 只看该作者
一个核运行主程序,另一个核循环查询,两核并行运行,第二核不受中断影响,单核最快运行到8MHz

使用特权

评论回复
16
不亦心| | 2012-10-18 09:14 | 只看该作者
见过51用定时器加外部中断做的上GHz的频率计

使用特权

评论回复
17
teddeng| | 2012-10-18 12:45 | 只看该作者
不能用定时器么,允许1~2ms测量一次的话,精度随便上万分之一。

使用特权

评论回复
18
corset| | 2012-10-18 13:10 | 只看该作者
直接用个计数器芯片,每秒刷新并读取。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

439

主题

3781

帖子

4

粉丝