通用定时器挂载在APB1总线,高级定时器挂载在APB2总线。配置NVIC中断分组时,利用NVIC_InitStructure.NVIC_IRQChannel=TIM2_IRQN;可以配置全部通用定时器中断,但是高级定时器的中断配置是分开的,如定时器1分别是TIM1_BRK_IRQn / TIM1_UP_IRQn / TIM1_TRG_COM_IRQn/TIM1_CC_IRQn。四种分别配置不同的定时器中断,在stm32f10x.h中有相应英文注释。在使用定时器1做输入捕获时使用的是TIM1_CC_IRQn进行配置。高级定时器的中断服务函数名也和通用定时器的中断服务函数名有区别。高级定时器的中断服务函数名分别是:
TIM1_BRK_IRQHandler/TIM1_UP_IRQHandler/TIM1_ TRG_IRQHandler / TIM1_CC_IRQHandler
/*以下代码摘自正点原子论坛网友回答,汉字为自己注释的*/
TIM1_BRK_IRQn = 24, /*!< TIM1 Break Interrupt */ /* TIM1打破中断*/
TIM1_UP_IRQn = 25, SS /*!< TIM1 Update Interrupt */ /* TIM1 更新中断*/
TIM1_TRG_COM_IRQn = 26, /*!< TIM1 Trigger and Commutation Interrupt */ /* TIM1触发器和交换中断*/
TIM1_CC_IRQn = 27, /*!< TIM1 Capture Compare Interrupt */ /* TIM1捕捉比较中断 */