新手上路
- 积分
- 29
- 金钱
- 29
- 注册时间
- 2016-5-22
- 在线时间
- 4 小时
|
4金钱
void TIM2_IRQHandler(void)
{
if (TIM_GetITStatus(TIM2, TIM_IT_CC1) != RESET)
{ TIM2CC1++;
if(TIM1OFF)
{TIM2CH1_CAPTURE_VAL=TIM2CC1;
TIM2CC1=0;
}
}
if (TIM_GetITStatus(TIM2, TIM_IT_CC2) != RESET)
{ TIM2CC2++;
if(TIM1OFF)
{TIM2CH2_CAPTURE_VAL=TIM2CC2;
TIM2CC2=0;
}
if (TIM_GetITStatus(TIM2, TIM_IT_CC3) != RESET)
{ TIM2CC3++;
if(TIM1OFF)
{TIM2CH3_CAPTURE_VAL=TIM2CC3;
TIM2CC3=0;
}
if (TIM_GetITStatus(TIM2, TIM_IT_CC2) != RESET)
{ TIM2CC2++;
if(TIM1OFF)
{TIM2CH4_CAPTURE_VAL=TIM2CC4;
TIM2CC4=0;
}
TIM_ClearITPendingBit(TIM2, TIM_IT_CC1|TIM_IT_CC2|TIM_IT_CC3|TIM_IT_CC4);|TIM_IT_CC4 )
}
}
如果由TIM_IT_CC1触发中断正在执行还没结束,|TIM_IT_CC2又触发了MCU会怎样处理? 同一中断函数void TIM2_IRQHandler(void)被不同的中断源在同一时刻触发(TIM2, TIM_IT_CC1|TIM_IT_CC2|TIM_IT_CC3|TIM_IT_CC4);|TIM_IT_CC4 )有没有优先级?
|
|