打印

STM32测频问题

[复制链接]
1188|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
nmtccbj|  楼主 | 2013-4-14 20:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
nmtccbj|  楼主 | 2013-4-14 20:41 | 只看该作者
void TIM3_IRQHandler(void)
{
    /* TIM2 CCR1 Register define the MSB of the captured value
     TIM3 CCR1 Register define the LSB of the captured value  */
  if (kk == 0)
  {
    LSB  =  TIM_GetCapture1(TIM3);
    MSB1 =  TIM_GetCapture1(TIM2);
    kk = 1;                               
  }
  else
  {
    TIM_ClearITPendingBit(TIM3, TIM_IT_CC1);
        LSB  = TIM_GetCapture1(TIM3);
    MSB2 = TIM_GetCapture1(TIM2);
     if (MSB1 > MSB2)
    {
      MSB = 0xFFFF - ((MSB1 - MSB2)) - 1;
    }
    else
    {
      MSB = (MSB2 - MSB1) - 1;
    }
    kk = 0;
        Freq[3] =        1.0*(TIMxCLK_Freq / ((MSB * 65535.) + LSB));
//        Freq[ii] =        1.0*(TIMxCLK_Freq / ((MSB * 65535.) + LSB));
//        ii++;
//        if(ii == 5){
//                ii = 0;
//                   for(kk=0;kk<5;kk++){
//                             for(jj=kk;jj<4;jj++){
//                                    if(Freq[jj] < Freq[jj+1]){
//                                             a = Freq[jj];
//                                                 Freq[jj] = Freq[jj+1];
//                                                 Freq[jj+1] = a;
//                                                 }
//                                      }
//                               }

                        FrequencyA = Freq[3];
                        FrequencyB = FrequencyA;
                        if( FrequencyB < 31063.){
                                                   FrequencyB = FrequencyA;
                                                                 }
            // }  
                         
  }
}

使用特权

评论回复
板凳
阿南| | 2013-4-15 09:50 | 只看该作者
查一下是否是误差,求下平均值

使用特权

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

本版积分规则

1

主题

3

帖子

1

粉丝