stm32通用定时器中断问题
在使用stm32的通用定时器定时中断的时候,发现定时器在完成初始化配置后,定时器UIF位会立刻置位,导致在使能中断后,程序会立刻进入定时器中断。
如果设计代码时不希望定时器配置完成后,立刻进入中断,可以在定时器配置完成后,立刻清除UIF标志位(TIMx->SR&=0xFFFE),再使能定时器更新中断。比如用库函数这么写:
TIM_ClearITPendingBit(TIM4,TIM_IT_Update);
TIM_ITConfig(TIM4,TIM_IT_Update,ENABLE);//使能TIM4的更新中断
TIM_Cmd(TIM4,ENABLE);
但又发现个特别奇怪的问题,TIM_ClearITPendingBit和TIM_ITConfig先后顺序一定不能错。如果顺序错了,也会立刻进入中断处理函数。
关键词: stm32通用定时器中断问

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码