[讨论] TIM测量频率和占空比求助

flashtt   2014-12-5 10:28 楼主
这是TI官方的PWM Input例程,测量TIM3 Channel2输入的频率和占空比,配置了TIM3 Channel2为输入捕获模式,开了主从模式,上升沿开始计数,测频率的部分看懂了,测占空比的部分没看懂
void TIM3_IRQHandler(void)
{
  /* Clear TIM3 Capture compare interrupt pending bit */
  TIM_ClearITPendingBit(TIM3, TIM_IT_CC2);

  /* Get the Input Capture value */
  IC2Value = TIM_GetCapture2(TIM3);

  if (IC2Value != 0)
  {
    /* Duty cycle computation */
    DutyCycle = (TIM_GetCapture1(TIM3) * 100) / IC2Value;

    /* Frequency computation */
    Frequency = SystemCoreClock / IC2Value;
  }
  else
  {
    DutyCycle = 0;
    Frequency = 0;
  }
}
求大神们解释一下占空比是怎么得到的,TIM_GetCapture1(TIM3)得到的值和TIM_GetCapture2(TIM3)有什么关系,谢谢

回复评论 (2)

关系得看相对应的通道设置(比如极性回零值等),那个函数返回当前通道值也就是捕获到信号的时间点.
这个时间点实际是定时器的当时的计数数值.
点赞  2014-12-5 12:56
如果是TI的芯片,请发帖到 TI板块,大家好帮助你。。。。。
我的博客
点赞  2014-12-5 14:35
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复