新手请教stm32 输入捕获中断的问题

2019-07-14 22:21发布

void tiM4_IRQHandler(void)
{
  static u16 temp_cnt1,temp_cnt1_2 , temp_cnt2,temp_cnt2_2 , temp_cnt3,temp_cnt3_2 , temp_cnt4,temp_cnt4_2;
        
        if(TIM4->SR & TIM_IT_CC1)
        {
                u16 ccr1 = TIM4->CCR1;
                TIM4->SR &= ~TIM_FLAG_CC1OF;
                if(GPIOB->IDR & GPIO_Pin_6)   
                {
                        temp_cnt1 = ccr1;
                        TIM4->CCER |= (1<<1);
                }
                else
                {
                        temp_cnt1_2 = ccr1;
                        TIM4->CCER &= ~(1<<1);
                        if(temp_cnt1_2>=temp_cnt1)
                                Rc_Pwm_In[0] = temp_cnt1_2-temp_cnt1;  
                        else
                                Rc_Pwm_In[0] = 0xffff-temp_cnt1+temp_cnt1_2;
                }
        }

请问这段程序最后     Rc_Pwm_In[0] = temp_cnt1_2-temp_cnt1;        Rc_Pwm_In[0] = 0xffff-temp_cnt1+temp_cnt1_2;      
是怎么计算的,得出的量代表什么,谢谢各位!
0条回答

一周热门 更多>