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:为什么 ePWM's 下降沿上有斜率?

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1382697/tms320f280039c-why-is-there-a-slope-on-the-epwm-s-falling-edge

器件型号:TMS320F280039C

工具与软件:

尊敬的专家:

我打算使用 CMPSS 模块和 ePWM 模块实现一种电流控制、但我发现不同触发源产生的波之间存在差异。 问题如下:
恒定 ePWM 设置:
EPwm1REGS.TBPRD = 0xFFFF;
EPwm1REGS.TBCTL.bit.CTRMODE = TB_COUNT_DOWN;

如果我按如下方式配置 EPWM 的 AQ 子模块:
EPwm1REGS.AQCTLA.bit.CAU = AQ_CLEAR;
EPwm1REGS.AQCTLA.bit.ZRO = AQ_SET;
EPwm1REGS.CMPA.bit.CMPA = 0x7FFF;
ePWM1A 的波形为:


但是、如果我将 T1事件和 T2事件设置如下:
EPwm1REGS.DCTRIPSEL.bit.DCAHCOMPSEL = 0x6;//CMPSS1.CTRIPH --> TRIPIN7 --> DCTRIP.A. HIGH
EPwm1REGS.DCTRIPSEL.bit.DCBHCOMPSEL = 0x7;//CMPSS1.CTRIPL --> TRIPIN8 --> DCTRIP.B. HIGH
EPwm1REGS.TZDCSEL.bit.DCAEVT1 = 0B010;//DCAH =高电平、DCAL =不用考虑
EPwm1REGS.TZDCSEL.bit.DCBEVT1 = 0B010;//DCBH =高电平、DCBL =不用考虑
EPwm1REGS.AQTSRCSEL.bit.T1SEL = 0x0;//0000:DCAEVT1
EPwm1REGS.AQTSRCSEL.bit.T2SEL = 0x2;//0010:DCBEVT1
EPwm1REGS.AQCTLA2.bit.T1d = AQ_CLEAR;
EPwm1REGS.AQCTLA2.bit.T2D = AQ_SET;

我通过依次运行2个代码组以4kHz ADC_ISR ()的形式手动反转 CMPSS1 H&L 的输出:
组1:
Cmpss1Regs.COMPCTL.bit.COMPLINV = 0;
Cmpss1Regs.COMPCTL.bit.COMPHINV = 1;

组2:
Cmpss1Regs.COMPCTL.bit.COMPLINV = 1;
Cmpss1Regs.COMPCTL.bit.COMPHINV = 0;

ePWM1A 的波形在理论上与上图类似、但与下图类似:

 更改为 AQ_CLEAR 时看起来它具有高阻抗 、因此我将 EPwm1REGS.AQCTLA2.bit.T1D 更改为 AQ_TOGGLE、但下降沿仍然类似。
那么、我如何在这种情况下立即使下降沿下降(就像以前的图像一样)(上升沿和下降沿必须由 CMPSS 输出信号触发)?

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

    嗨、Harley:

    当 TZ 设置未设置为"禁用操作"时、会发生此问题、因为默认情况下它配置为高阻抗。

    您能否确保设置 TZCTL 寄存器以禁用在不使用时对所有事件的操作? 这将删除此斜率。

    此致!

    Ryan Ma

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

    您好、Ryan、

    我 将 TZCTL 设置为0xFFFF、现在可以了、但我已在 TZSEL 寄存器中全部禁用。 剂量意味着只要我使用 DCxEVT 是否触发 TZ , DCxEVT.FORCE 信号将 不可避免地发送到 TZ ?

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

    是的、使用 T1/T2事件将不可避免地发送到 TZ。

    我提交了 JIRA 票证来记录此情况。

    此致!

    Ryan Ma