我们在 stm32f767xx.h 可以找到TIM1的4个中断:
TIM1_BRK_TIM9_IRQn = 24, /*!< TIM1 Break interrupt and TIM9 global interrupt */
TIM1_UP_TIM10_IRQn = 25, /*!< TIM1 Update Interrupt and TIM10 global interrupt */
TIM1_TRG_COM_TIM11_IRQn = 26, /*!< TIM1 Trigger and Commutation Interrupt and TIM11 global interrupt */
TIM1_CC_IRQn = 27, /*!< TIM1 Capture Compare Interrupt */
在 startup_stm32f767xx.s 中可以找到与之对应的中断服务函数
DCD TIM1_BRK_TIM9_IRQHandler ; TIM1 Break and TIM9
DCD TIM1_UP_TIM10_IRQHandler ; TIM1 Update and TIM10
DCD TIM1_TRG_COM_TIM11_IRQHandler ; TIM1 Trigger and Commutation and TIM11
DCD TIM1_CC_IRQHandler ; TIM1 Capture Compare
请问除了TIM1_UP_TIM10_IRQn 之外的3个中断是什么意思,有什么功能,怎么用,在什么地方可以找到这些中断的说明?
特别想知道,他们的触发条件是什么,也就是说,如何才能进入中断服务函数。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
首先使能TIMx_DIER的BIE[7]位
将TIMx_EGR的BG[7]位值1,则进入 TIM1_BRK_TIM9_IRQHandler 中断函数
进入中断函数后 须立即清除TIMx_SR的BIF[7]位,否则会在下一周期再次进入函数,形成锁死状态。
另外的几个类似。
一周热门 更多>