FranklinUNK 发表于 2025-4-20 15:50

PWM输出突然停止

用TIM1生成互补PWM控制电机,运行半小时后某通道无输出。冷却后恢复,怀疑是过温保护,但芯片温度实测仅45℃,寄存器配置会被意外修改吗?

回复就哭哭 发表于 2025-4-30 23:41

也行不是“温度”,而是外设“状态锁定”或“故障触发”

公羊子丹 发表于 2025-5-26 07:23

看起来不像是温度问题,你有没有实时查看TIM1的状态寄存器,看看是不是进了中断或者被强制关闭了?

周半梅 发表于 2025-5-26 07:25

电机控制是不是还用了死区时间或者刹车机制?这些设置也有可能在运行中触发关闭输出。

帛灿灿 发表于 2025-5-26 07:26

会不会是DMA或者中断写坏了寄存器?可以试试加个校验机制看看配置有没有被篡改。

童雨竹 发表于 2025-5-26 07:27

建议你在异常发生时,用SWD连上芯片,把寄存器dump下来分析一下,有时能看出端倪。

万图 发表于 2025-5-26 07:28

有没有检查电源波动?有时候VDD电压不稳,会影响PWM模块的逻辑判断。

Wordsworth 发表于 2025-5-26 07:29

看描述感觉像是保护机制触发了,建议确认下是否开启了Break功能或内部比较器触发。

Bblythe 发表于 2025-5-26 07:30

建议加个定时log,定时打印一下关键寄存器,比如CCER、CR1等,看是啥时候变了。

Pulitzer 发表于 2025-5-26 07:31

如果你在用互补PWM,还得确认是否两个通道配对正常,有没有主从配置异常。

Uriah 发表于 2025-5-26 07:32

有些外设,比如电机驱动芯片自身带保护功能,也可能误触导致PWM被拉低。

Clyde011 发表于 2025-5-26 07:32

实在不行你可以加个外部LED指示,失效那一瞬间能不能看到关断是程序行为还是电路行为。

elephant00 发表于 2025-5-26 11:52

上示波器检查一下PWM输出引脚状态。

jcky001 发表于 2025-5-26 11:53

检查PWM输出引脚若引脚悬空或驱动能力不足,尝试外接上拉/下拉电阻测试。

cr315 发表于 2025-5-26 11:54

检查PWM驱动的负载是否存在短路、过流或过热保护触发。

probedog 发表于 2025-5-26 11:58

STOP/STANDBY模式会关闭定时器时钟,需低功耗,改用睡眠模式并保持定时器运行。

flycamelaaa 发表于 2025-5-26 16:20

电源稳定与否?

powerantone 发表于 2025-5-26 18:00

TIMx_CR1寄存器的CEN位被清零?

stormwind123 发表于 2025-5-26 19:03

中断或DMA冲突?

classroom 发表于 2025-5-26 20:00

添加看门狗,在PWM停止时触发复位。
页: [1]
查看完整版本: PWM输出突然停止