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:CMPSS 输出

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/668503/tms320f280049-cmpss-output

器件型号:TMS320F280049

您好、香榭丽舍

客户发现、在 F280049  中、当 CTRIPHSEL 仅设置为0 (异步比较器输出驱动 CTRIPH)时、比较器输出 通常可以切换。 但是 、当设置为1 (同步比较器输出驱动 CTRIPH)或设置2 (数字滤波器输出驱动 CTRIPH)时、比较器输出无法切换。

请提供帮助吗?  谢谢!

此致、

Linda

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

    Linda、

    您能否共享其 CMPSS 和 GPIO X-BAR 输出设置?

    Tommy

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

    您能否澄清比较器输出的端点? 它是切换 GPIO 输出引脚还是馈入 ePWM 事件?

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

    您好 Linda、

    我通过电子邮件收到了您的代码。 我还没有完全了解过它、但马上就有几件事要解决了。

    1.您的滤波器初始化顺序不正确。 请按照 TRM 中的顺序操作、或者您可以使用"cmps_digited_filter_cpu01"示例。

    2.您的过滤器设置不正确。 阈值应大于1/2窗口。 在代码中、您有 SAMPWIN=15和 THRESH=5。

    3.您的一些评论与设置不匹配、因此我不确定评论中的措辞是否符合您的预期。 例如、要在 PWMSYNC 上加载 COMPDAC、SWLOADSEL 需要为1。

    我将跟进此帖子、了解更多内容。

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

    Linda、

    我已经完成了整个代码。 您有一些代码行在写入不带 EALLOW 的 COMPSTSCLR 寄存器中。 COMPSTSCLR 是 EALLOW 寄存器。 在 CompInit 函数中的代码段中并不重要、但需要记住这一点。

    您的问题实际上与此帖子非常相似-> https://e2e.ti.com/support/microcontrollers/c2000/f/171/t/667891。 对他的建议也应适用于您的情况、即:如果您有 CMPSS 设置来使 ePWM 跳闸并看到意外结果、出于调试目的、您还应在 GPIO 上启用 CMPSS 输出(CTRIPOUTH)、以查看跳闸是否实际符合您的期望。 这至少会将您的问题缩小到 CMPSS 或 ePWM。

    请应用建议的修复、并告知我们它是否起作用。