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.

[参考译文] TMS320F280049:未启用 PWM1时、CMPSS 状态不正确

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/926775/tms320f280049-cmpss-status-not-correct-when-pwm1-not-enabled

器件型号:TMS320F280049

您好!

 在启动后、但在启用 PWM 之前、我尝试通过 CMPSS 状态读取引脚(PGA2_IN、100引脚 PZ 上的引脚30)、并观察到以下情况:

-当 PWM1未启用且 TBCLKSYNC 至少未启用一次时、COMPHSTS 和 COMPLSTS 的状态不正确(尽管引脚连接到3.3V、但始终为0)。

DACVALS/DACVALA 设为一半(2048)。

将 COMPDACCTL.RAMPSOURCE 从0 (PWM1)更改为1 (PWM2)时、除非启用 PWM2且启用 TBCLKSYNC、否则状态 COMPHSTS 和 COMPLSTS 不正确。

因此 、似乎存在数据表中未记录的关系/连接。

此致、

Stephan

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

    您好、Stephan、

    您是否已将 CMPSS2的 HPMXSEL 和 LPMXSEL 配置为2?

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

    您好、Frank、

    是的、从 sprs945e.pdf 中的表5-38开始、CMPSS2的 HPMXSEL 和 LPMXSEL 配置为2。

    此致、

    Stephan

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

    Stephan、

    好的。 几个问题。

    1.您是否已仔细检查以确保 CMPSS 设置是您在 CCS 监视窗口中配置的?

    2. HSYNCCLREN 或 LSYNCCLREN 是否设置为1?

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

    您好、Frank、

    首先、我必须澄清我的起始帖子:
    当 PWM1周期= 0且 TBCLKSYNC 至少未启用一次时、状态 COMPHSTS 和 COMPLSTS 不正确(尽管引脚连接到3.3V、但始终为0)。

    因此、将 PWM1周期设置为一个值!= 0并为 COMPHSTS 和 COMPLSTS 启用 TBCLKSYNC 即可正常工作。
    未完成 PWM1的其他设置。

    1.是的、我已仔细检查了设置。
    您能想象一个场景、错误的 CMPSS 设置会导致错误的 COMPHSTS、COMPLSTS、并且仅设置 PWM1周期和启用 TBCLKSYNC 会导致正确的 COMPHSTS 和 COMPLSTS?

    2.我已将 HSYNCCLREN 和 LSYNCCLREN 都设置为1 -但这不应产生任何影响、因为我查看的是非锁存寄存器位 COMPHSTS、COMPLSTS、而不是锁存寄存器位 COMPHLAATCH、COMPLLATCH。

    此致、

    Stephan

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

    Stephan、

    1.是的、我已仔细检查了设置。
    您能想象一个场景、错误的 CMPSS 设置会导致错误的 COMPHSTS、COMPLSTS、并且仅设置 PWM1周期和启用 TBCLKSYNC 会导致正确的 COMPHSTS 和 COMPLSTS?

    我主要想确保在两种情况下都将 COMPDACE 设置为1。

    2.我已将 HSYNCCLREN 和 LSYNCCLREN 都设置为1 -但这不应产生任何影响、因为我查看的是非锁存寄存器位 COMPHSTS、COMPLSTS、而不是锁存寄存器位 COMPHLAATCH、COMPLLATCH。

    这实际上会产生影响。 您可以看到、latchclr 信号也会进入滤波器进行复位。

    我认为这可能是您的问题。 我们在 TRM 中有此部分。 实际上、如果 EPWM 未完全配置并运行、EPWMSYNCPER 将保持高电平。

    您可以通过将 HSYNCCLREN 和 LSYNCCLREN 设置为0并查看问题是否消失来再次检查这是否是问题。 如果不是、我们可以继续挖掘。

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

    您好、Frank、

    就是这样!

    我清零了 HSYNCCLREN 和 LSYNCCLREN、并立即获得 CMPSS 状态、也没有将 PWM1周期设置为值!= 0并启用 TBCLKSYNC。

    我只是通过 latchclr 忽略了滤波器复位输入。

    非常感谢您向我介绍并解释了这一点。

    此致、

    Stephan

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

    没问题、Stephan。 很高兴听到它正在工作!