输入捕捉测频率很简单么为什么我做了四天多没做出来,我是不是不适合做这个

2019-08-19 17:26发布


这是我的中断采集两次数值函数,理论没问题,就是lcd显示不正确。顺便lcd显示是WHILE显示还是要if的判断句
u8 T2;
u8 flag;
u8  capture_number;        //êäèë2¶»ñ×′쬠                                                  
u32        TIM5CH1_CAPTURE_VAL1;       
u32 TIM5CH1_CAPTURE_VAL2;//êäèë2¶»ñÖμ(TIM2/TIM5êÇ32λ)
u32 pinlv;
u32 fuck;
u8 TIM5CH1_CAPTURE_STA;
void TIM1_IRQHandler(void)
{
        if (TIM5CH1_CAPTURE_STA)
        {
                        TIM5CH1_CAPTURE_STA=0;
               
                if(capture_number==0 )
                {
                        TIM5CH1_CAPTURE_VAL1 = TIM5->CNT;
                        capture_number=1;
                }
               
        else if(capture_number==1)
        {
         TIM5CH1_CAPTURE_VAL2 = TIM5->CNT;
        }

        if(TIM5CH1_CAPTURE_VAL1>TIM5CH1_CAPTURE_VAL2)
        {
                pinlv=TIM5CH1_CAPTURE_VAL2-TIM5CH1_CAPTURE_VAL1-1;
        }
        else
        {
                pinlv=TIM5CH1_CAPTURE_VAL2-TIM5CH1_CAPTURE_VAL1-1+0xffff;
        }
        fuck=(u32)1000000/ pinlv;
                }
        capture_number=0;
}


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。