使用Timer1捕获频率

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.xmece.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
6个员额/ 0个新员额
最后发表
auzzz
离线
最后看到:1周4天前
加入:2016-06-20十43
使用Timer1捕获频率

嗨,对话框中,
我们需要捕获输入频率。根据14681 datasheet, Timer1有2个通道的捕获输入触发器。似乎我们可以捕捉两个事件之间的时间间隔,从而计算频率。但是,我注意到这个定时器被用作FreeRTOS的系统源。是否有可能在不干扰系统功能的情况下使用这个定时器作为频率测量?

的问候。

设备:
LT_Dialog(未验证)
嗨auzzz,

嗨auzzz,
我建议不要将Timer1用于其他目的。这就是为什么在那些运行在FreeRTOS之上的SDK示例项目中,没有包含访问Timer1的api的原因。

auzzz
离线
最后看到:1周4天前
加入:2016-06-20十43
嗨LT_Dialog,

嗨LT_Dialog,
谢谢你的回复。
是否有其他解决方案来实现DA14681频率测量?

问候,
Auzz

LT_Dialog(未验证)
嗨auzzz,

嗨auzzz,
在你的申请中,你可能遇到的最大频率是多少?你能告诉我一些关于这个功能的细节,以便我们给你适当的建议吗?

auzzz
离线
最后看到:1周4天前
加入:2016-06-20十43
嗨LT_Dialog,

嗨LT_Dialog,
谢谢你的回复。
最大频率为200khz。我们设计了一个电路来产生交流信号,根据不同的环境(干燥、潮湿或水下),频率可能在200hz到200khz之间变化。

LT_Dialog(未验证)
你好auzzz,

你好auzzz,
其他计时器Timer0/2可能相当大。或者,Cortex-M0的系统计时器——SysTick,运行在1HMz,是另一个选择。

所有这些计时器Timer0/2和SysTick都有一个限制,即系统在使用它们时必须保持在有功功率模式。也就是说,当DA14681进入睡眠模式时,这些计时器的电源是门控的。

顺便说一下,我查了SDK, Timer1使用32kHz作为源时钟,这并不适合测量频率高达200kHz的信号。

希望这个有帮助。