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.

[参考译文] TMS320F280039C:4.03SDK 和5.00SDK 中的 ePWM 配置

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1258388/tms320f280039c-the-configuration-of-epwm-in-4-03sdk-and-5-00sdk

器件型号:TMS320F280039C
主题中讨论的其他器件:SysConfigC2000WARE

使用 CCS (12.4.0) SysConfig (1.17.0)配置280039C ePWM 外设时、相同的 SysConfig 文件通常可以在使用4.03 SDK 时生成死区时间、在使用5.00 SDK 时无法生成死区时间、 并发现5.00 SDK 在初始化配置时有额外的代码部分、导致死区时间配置无效。

SysConfig 不配置死区影子模式、并且未在4.03 SDK 中直接设置相应的寄存器。 但在5.00 SDK 中、
首先配置影子寄存器、然后配置死区时间、最后关闭影子寄存器配置。 仿真发现、当在最后一步中关闭影子寄存器时、死区时间寄存器值被清除为零、问题是、您为什么先打开影子模式、然后将其关闭?

感谢您的回复!

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

    尊敬的 Kailun:

    这是我们研究过的配置问题、并已针对下一个 c2000ware 版本进行修复。

    Unknown 说:
    首先配置影子寄存器、然后配置死区时间、最后关闭影子寄存器配置

    必须首先配置影子寄存器配置、然后配置影子寄存器的启用/禁用、然后对 DBRED/DBFED 执行写入操作。

    如果您禁用 RED/FED 的影子模式、则正确的配置应该是这样的。

    ePWM_setRisingEdgeDelayCountShadowLoadMode ();

    ePWM_disableRisingEdgeDelayCountShadowLoadMode ();  

    ePWM_setRisingEdgeDelayCount ();

    如果您为 RED/FED 启用影子模式、则正确的配置应该是这样的。

    ePWM_setRisingEdgeDelayCountShadowLoadMode ();

    ePWM_setRisingEdgeDelayCount ();

    为了启用影子模式、您将使用此 SysConfig 选项:

    此致!

    马瑞安