STM32
直播中

李梅

7年用户 1366经验值
私信 关注
[问答]

为什么STM32F103定时器开机后立刻进入中断函数呢

为什么STM32F103定时器开机后立刻进入中断函数呢?其解决方法是什么?

回帖(1)

曾盼丽

2021-11-16 15:25:55
  问题:
  存在开机后初始化,在TIM3_Int_Init()里面,一打开允许中断函数TIM_ITConfig(),定时器立刻进入中断函数一次。只进一次。
  初始化函数最后已经关闭定时器:
  TIM_Cmd(TIM3, DISABLE); //暂关闭TIMx外设。将这个函数提到初始化最前面也没用。
  解决方法:
  总结:应该是TIM_TimeBaseInit(TIM5, &TIM_TimeBaseStructure);产生了更新事件,只要将
  TIM_ClearFlag(TIM5, TIM_FLAG_Update);
  TIM_ITConfig(TIM5,TIM_IT_Update,ENABLE); 放在TIM_TimeBaseInit(TIM5, &TIM_TimeBaseStructure);的后面,就不会出现一开允许中断函数TIM_ITConfig(),定时器立刻进入中断函数一次的情况。
  IM_Cmd(TIM5, ENABLE); 放前放后无所谓,他只是让计数器开始计数,只是放后面的话可能需要将计数器清零。
  希望对:解决一开允许中断函数TIM_ITConfig(),定时器立刻进入中断函数一次;有帮助。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分