你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

当HALL捕获频率设置为250K时,捕获小于4us的信号会发生溢出中断?

[复制链接]
暂不知道 提问时间:2023-10-30 10:21 / 未解决

当我把HALL捕获频率设置为250K,使用信号发生器生成16K以上的50%占空比波形的时候会发生溢出中断,此时CCR捕获值为0x10001,其中的ARR值我设置的为0xFFFF。我就很困惑为什么CCR值是0x10001,不应该是0x0000吗

收藏 评论4 发布时间:2023-10-30 10:21

举报

4个回答
xmshao 回答时间:2023-10-30 13:35:25
对你的具体情况不太了解。


但可以肯定的是,如果你的TIMER是16位,捕获值不可能是0x10001;


即使32位TIMER,且ARR已设置为0xffff,捕获值能出现0x10001也很奇怪。
暂不知道 回答时间:2023-10-30 15:48:35
xmshao 发表于 2023-10-30 13:35
对你的具体情况不太了解。

[md]使用的是TIM2的异或输入功能,在F302C8上面是32bit的,在ARR为FFFF的情况下出现0x10001我就觉得很不理解
xu@xupt 回答时间:2023-10-30 21:40:06

根据您提供的信息,当HALL捕获频率设置为250K时,如果要捕获小于4us的信号,可能会发生溢出中断。这是因为在250K的频率下,每个计数周期的时间是4us。如果要捕获小于4us的信号,计数器可能无法在一个计数周期内完成计数,从而导致溢出中断。

要解决这个问题,您可以考虑以下几个方法:

  1. 增加HALL捕获频率:将HALL捕获频率增加到一个更高的值,以确保计数器能够在一个计数周期内完成计数。这样可以避免溢出中断的发生。
  2. 调整捕获模式:根据实际需求,调整捕获模式,使得需要捕获的信号的周期大于等于一个计数周期。这样可以确保计数器能够正常捕获信号,避免溢出中断的发生。
  3. 考虑使用更高分辨率的定时器:如果您的平台支持更高分辨率的定时器,可以考虑使用更高分辨率的定时器来捕获小于4us的信号,以避免溢出中断的发生。
暂不知道 回答时间:2023-10-31 14:34:38

xu@xupt 发表于 2023-10-30 21:40
根据您提供的信息,当HALL捕获频率设置为250K时,如果要捕获小于4us的信号,可能会发生溢出中断。这是 ...

[md]虽然这是GPT给出的答案,但还是谢谢

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版