This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] MSPM0L1306:平滑的 PWM 信号上的零星峰值

Guru**** 2124380 points
Other Parts Discussed in Thread: MSPM0L1306
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1272691/mspm0l1306-sporadic-peaks-on-smoothed-pwm-signal

器件型号:MSPM0L1306

我使用 timerG0生成 PWM 信号。 使用"单路施密特触发反相器栅极"对信号进行去耦、使用二阶 RC 低通进行平滑处理。 在输出三角信号时、它在信号上偶尔会出现峰值。 如果输出恒定电压、则不会发生这种现象。 我使用"DL_TimerG_setCaptureCompareValue"函数调整捕获比较值来更改脉冲宽度。

紫色:视为直流电压的输出信号

黄色:以交流电压的形式查看的输出信号

我怀疑 PWM 值设置不正确或根本没有。 您对此行为是否有理论、如何解决?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Daniel、您好!

    我想可能正在发生的情况是、 当定时器以小于当前定时器计数的周期值运行时加载 CCx 寄存器、 它会导致 CCx 寄存器丢失比较、因此在它循环之前可以随机混合1个100%占空比的周期。   随着占空比计数变得越来越低、这种情况可能会发生。   

    在 TIMG0-TIM3上、CCx 寄存器上没有影子加载寄存器、这允许加载恰好在零事件时发生。  现在、MSPM0L1306中的 TIMG4确实具有 shawdow 寄存器、如果您使用这些寄存器、我认为您可以避免这个问题。  

     

    希望这对您有所帮助。   

    谢谢。

    JD