stm32的定时器几乎每个项目中,都会用到,但是对于有些细节的问题,一直感觉搞得不太明白,允许定时器中断的时候,TIM_ITConfig(TIM1,TIM_IT_Update|TIM_IT_Trigger,ENABLE ); 为什么有的中间参数有触发中断 TIM_IT_Trigger,有的没有,经测试两种初始化模式感觉并无多大区别,所以冒昧的问下,加和不加区别到底在哪里。还有中断服务程序里面也是:
if (TIM_GetITStatus(TIM5, TIM_IT_Update) != RESET)//Òç³öÖжÏ
{
TIM_ClearITPendingBit(TIM5, TIM_IT_Update);
}
TIM_ClearITPendingBit(TIM5,TIM_IT_Update);
if (TIM_GetITStatus(TIM5, TIM_IT_Update) != RESET)//Òç³öÖжÏ
{
TIM_ClearITPendingBit(TIM5, TIM_IT_Update);
}
if (TIM_GetITStatus(TIM5, TIM_IT_Update) != RESET)//Òç³öÖжÏ
{
}
TIM_ClearITPendingBit(TIM5, TIM_IT_Update);
也是常见这三种写法,具体哪种写法比较标准比较好,经测试貌似并无区别
|