大家好,最近在调试程序的时候发现一个现象,没整明白是什么原因。 程序中用到了一个通用定时器TIM3,定时时间500us,初始化程序如下: TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_TimeBaseStructure.TIM_Period = 499;//500ms TIM_TimeBaseStructure.TIM_Prescaler =35; //36分频systemclock(36Mhz) TIM_TimeBaseStructure.TIM_ClockDivision = 0; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure); TIM_ITConfig(TIM3,TIM_IT_Update|TIM_IT_Trigger,ENABLE); TIM_ClearITPendingBit(TIM3, TIM_IT_Update); TIM_Cmd(TIM3, ENABLE); 没有打开自动重装载功能,它也可以自动重装载,从TIM3中断程序中退出后依然会发生TIM3中断事件,这是为什么。 请高手帮忙解释一下,谢谢。 |
回复:STM32通用定时器自动重装载机制