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.

[参考译文] TMS320F28P550SJ:SysConfig 中的死区配置

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1492499/tms320f28p550sj-dead-band-configuration-in-sysconfig

器件型号:TMS320F28P550SJ
Thread 中讨论的其他器件:SysConfigC2000WARE

工具/软件:

您好 Champ、

我检查 SysConfig 中的死区配置。

通过圈出的选择、 EPwm1Regs.DBCTL.bit.IN_MODE 应设置为2、在我的末尾可以看到该位仍被设置为0。  

SysConfig 这里是否有问题?

此致、

Johnny

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

    您好 Johnny、

    您能否提供有关如何检查寄存器值的更多背景信息? 此外、您使用的是哪个版本的 C2000Ware?

    我正在使用最新的 C2000Ware 版本、但没有发现问题。 对于您所拥有的 SysConfig 设置、DBCTL 寄存器的 IN_MODE 设置为2。  

    此致、
    Marlyn

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

    尊敬的  Marlyn:

    您能提供更多关于如何检查寄存器值的背景信息吗?

    已在调试模式下对其进行检查。  

    此外、您使用的是哪个版本的 C2000Ware?

    使用 最新的 C2000ware (C2000Ware_5_04_00_00)。

    时基配置为向上/向下计数模式。

    逐步调试并发现它在 EPWM_setFallingEdgeDeadBandDelayInput 行中将 IN_MODE 设置为2。 但在 HRPWM_setFallingEdgeDeadBandDelayInput (LLC_PRI_BASE、EPWM_FED_LOAD_ON_CNTR_ZERO)行中清除该位;如下所示。

    另外,我尝试在 board_init ()之后手动写;。 然而、 开始执行时 epwm1A 上有一个250ns 脉冲。

    由于 board_init ()中的配置不正确、因此在 syscfg 中禁用 DB 模块并通过该手写内容启用该模块。

    epwm1A 的极性发生变化。 我怀疑这种极性变化可能会导致脉冲。

    黄色波形为 Epwm1A、蓝色脉冲为 GPIO22。 我们可以看到 epwm1A 上有一个250ns 脉冲。

    (1)。 为什么 IN_MODE 使用 第 HRPWM_setFallingEdgeDeadBandDelayInput 行并将其设置为0? 是否有任何违反/覆盖死区馈送信号的配置?

    将 IN_MODE 设置为0x00的 HRPWM_setFallingEdgeDeadBandDelayInput 可以在 EPWM_EX8_DEADEMENT 示例中复制。

    (2)。 要手动写这个,任何解决方法来解决脉冲?

    谢谢。此致、

    Johnny

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

    您好 Johnny、

    感谢您分享有关此问题的更多信息。

    [引述 userid="488507" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1492499/tms320f28p550sj-dead-band-configuration-in-sysconfig/5779034 #5779034"]

    (1)。 为什么 IN_MODE 使用 第 HRPWM_setFallingEdgeDeadBandDelayInput 行并将其设置为0? 是否有任何违反/覆盖死区馈送信号的配置?

    将 IN_MODE 设置为0x00的 HRPWM_setFallingEdgeDeadBandDelayInput 可以在 EPWM_EX8_DEADEMENT 示例中复制。

    [/报价]

    HRPWM 代码生成错误地将 setFallingEdgeDelayCountShadowLoadMode 的 HRPWM 功能映射到并再次调用 setFallingEdgeDeadbandDelayInput。 我们将在下一个版本中对其进行更正。

    (2)。 要手写此内容、任何解决脉冲问题的变通办法?

    能否请在 Board_init ()之前确保 TBCLK 也设置为0。 我看到您在代码片段中调用 disable_main_ mos (),您能为测试目的注释掉吗? 我不确定此软件强制何时加载或清除、以及这对 EPWM1上的输出脉冲有何影响。  

    此致、

    Marlyn