新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > stm32通用定時(shí)器中斷問題

stm32通用定時(shí)器中斷問題

作者: 時(shí)間:2016-11-19 來源:網(wǎng)絡(luò) 收藏
在使用stm32通用定時(shí)器定時(shí)中斷的時(shí)候,發(fā)現(xiàn)定時(shí)器在完成初始化配置后,定時(shí)器UIF位會(huì)立刻置位,導(dǎo)致在使能中斷后,程序會(huì)立刻進(jìn)入定時(shí)器中斷。

如果設(shè)計(jì)代碼時(shí)不希望定時(shí)器配置完成后,立刻進(jìn)入中斷,可以在定時(shí)器配置完成后,立刻清除UIF標(biāo)志位(TIMx->SR&=0xFFFE),再使能定時(shí)器更新中斷。比如用庫函數(shù)這么寫:

本文引用地址:http://butianyuan.cn/article/201611/318501.htm

TIM_ClearITPendingBit(TIM4,TIM_IT_Update);

TIM_ITConfig(TIM4,TIM_IT_Update,ENABLE);//使能TIM4的更新中斷

TIM_Cmd(TIM4,ENABLE);

但又發(fā)現(xiàn)個(gè)特別奇怪的問題,TIM_ClearITPendingBit和TIM_ITConfig先后順序一定不能錯(cuò)。如果順序錯(cuò)了,也會(huì)立刻進(jìn)入中斷處理函數(shù)。



評(píng)論


技術(shù)專區(qū)

關(guān)閉