【发布时间】:2021-12-12 14:39:11
【问题描述】:
我设法通过使用动态更改时钟 TIM2 的预分频器
__HAL_TIM_SET_PRESCALER(&htim2,newValue);
但是,在计数器重置为零之前,它会以旧的速度计数。
我可以强制程序立即使用新的预分频器值吗?
我正在使用 STM32L052K8Tx
【问题讨论】:
-
您正在使用 _HAL 库,所以我假设您正在使用 STM micros,但您能否提供更多有关架构的详细信息?通常预分频器是您设置的注册版本,直到下一次定时器溢出才会更新,但这非常依赖于架构。
-
请edit您的问题并告诉我们您使用的是什么µC,您在其数据表的哪一章中找到了与您的问题相关的内容,以及为什么它没有帮助。
-
尝试停止计时器,更改预分频器并重新启动计时器
-
有什么特殊原因不能让它一直计入“快速单位”,而不是更改预分频器,而是更改延迟?