打印
[其他ST产品]

定时器参数配置错误

[复制链接]
559|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
t60yz|  楼主 | 2025-1-18 19:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
定时器参数配置错误:定时器的自动重载值或预分频器配置不当,导致计数器工作不正常。

解决方案:检查 ARR 和 PSC 的设置,确保它们的值合适。如果预分频器设置不当,计数器可能无法正确计数,导致 PWM 信号失效。
c
复制
编辑
htim1.Init.Prescaler = 79;  // 设置预分频器
htim1.Init.Period = 999;     // 设置自动重载值(ARR)
HAL_TIM_PWM_Init(&htim1);

使用特权

评论回复
沙发
598330983| | 2025-1-19 17:02 | 只看该作者
定时器使用cubeMX配置很难出错。或者用库函数配置。

使用特权

评论回复
板凳
Stahan| | 2025-1-19 23:57 | 只看该作者
图形配置确实方便

使用特权

评论回复
地板
Amazingxixixi| | 2025-1-21 17:01 | 只看该作者
学习一下啊,还有好多需要学习的。

使用特权

评论回复
5
SophiaOP| | 2025-1-22 22:33 | 只看该作者
用cubeMX可以尽量不出错

使用特权

评论回复
6
公羊子丹| | 2025-1-23 09:54 | 只看该作者
看起来你的配置还行啊,楼主是不是没开定时器或者 PWM 通道?再确认下。

使用特权

评论回复
7
周半梅| | 2025-1-23 09:56 | 只看该作者
预分频器和重载值要根据时钟频率算一下,确保输出频率是你想要的。

使用特权

评论回复
8
帛灿灿| | 2025-1-23 09:57 | 只看该作者
如果 PWM 信号没出来,可能是 GPIO 没配置成复用功能,检查一下管脚。

使用特权

评论回复
9
童雨竹| | 2025-1-23 09:59 | 只看该作者
这种问题我以前遇到过,最后发现是定时器的时钟没打开,坑得不轻。

使用特权

评论回复
10
万图| | 2025-1-23 10:01 | 只看该作者
楼主是不是忘了调用 HAL_TIM_PWM_Start 了?初始化只是配置,得手动开。

使用特权

评论回复
11
Wordsworth| | 2025-1-23 10:02 | 只看该作者
我之前踩过一个坑,PSC 和 ARR 设置没问题,但 Timer 的时钟源被分频了,实际频率不对。

使用特权

评论回复
12
Bblythe| | 2025-1-23 10:03 | 只看该作者
如果信号还是不对,可以用逻辑分析仪看看,是波形错误还是压根没输出。

使用特权

评论回复
13
Pulitzer| | 2025-1-23 10:05 | 只看该作者
你这个配置输出频率应该是 1kHz,计算没问题啊,是不是哪里漏掉了?

使用特权

评论回复
14
Uriah| | 2025-1-23 10:06 | 只看该作者
建议楼主加个断点看看 HAL_TIM_PWM_Init 有没有返回错误,有时候初始化失败都没注意。

使用特权

评论回复
15
Clyde011| | 2025-1-23 10:08 | 只看该作者
如果还是不行,试试用 CubeMX 生成代码,直接调出来的配置一般没问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

181

主题

1021

帖子

0

粉丝