打印
[应用相关]

解决STM32定时器初始化后直接进入中断问题

[复制链接]
70|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
micoccd|  楼主 | 2024-3-11 10:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

STM32初始化完毕后第一次启动定时器直接进入中断,原因是定时器的寄存器中断标识没有被清理掉。

如果使用标准库,先用TIM_ClearITPendingBit(TIM1, TIM_IT_Update)清除中断标记,然后使能定时器中断,最后启动定时器;

如果使用HAL库,在MX_TIMx_Init函数后紧跟着__HAL_TIM_CLEAR_IT(&htimX, TIM_IT_UPDATE)以此来清除中断标识位。


使用特权

评论回复
沙发
香水城| | 2024-3-13 20:53 | 只看该作者
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

92

主题

549

帖子

1

粉丝