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;
是怎么计算的,得出的量代表什么,谢谢各位!
一周热门 更多>