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.

[参考译文] CCS/TMS320F28377S:TMS320F28377S

Guru**** 2478765 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/676903/ccs-tms320f28377s-tms320f28377s

器件型号:TMS320F28377S

工具/软件:Code Composer Studio

我想生成异常的 PWM 波形、如开关 SB 文字所示、请给我一些提示或指南。 感谢 e2e.ti.com/.../WAVEFORM.docx

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

    Wentao、

    以下是一些可供您回答的问题:

    1. Sa、Sb 和 Sc 之间是否存在关系? 您需要仅生成 SB?
    2. T0、T1、T2和 T7的值是多少?

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

    是的、这三个开关之间存在关系、即我知道 SB 上升沿和下降沿的准确时间点。 t0 T1 T2的值也是已知的、因此我想生成波形 SB。 但问题是、我不知道如何在 ePWM 模块中生成此类波、 因为 CMPA 和 CMPB 似乎还不够。

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

    根据我的理解、您不能只设置 CMPA 和 CMPB、而是希望 ePWM 模块生成所需的信号。 但这里是我生成该信号的方式。

    首先、我会以不同的方式考虑信号。

    基本上、我会将信号向右移动 T0/2。

    现在、我将执行以下操作来生成信号:

    在 BOOATH CTR=0和 CTR=PRD 上、将 ePWM 设置为加/减模式、并具有加载负载。

    对于信号的前半部分、  

    在下半部分、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您的回答。 您的实施方式会激励我,我对此方法有一些小问题:
    1.当 CTR 等于0或 PRD 时、程序中的 cmpa 和 cmpB 被改变或载入到 PWM 中断中是否合理且可行?
    2.如果没有在 AQCTL 中设置,在您的 sb 信号的末尾,当 CTR=0时,sb 信号将不会变为低电平,并且在 prd 之后 CTR 达到 cmpa 之前保持高电平。 因此,这种方法可能不可行。
    期待您的回复。
    真诚地感谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    由于 CMPA 和 CMPB 在中断中发生了变化、所以需要注意的是、必须使用影子模式并在需要一个事件生效之前更改值。
    2.我还会在分流模式下使用 AQ 模块、并将其配置为在 CTR=0时清除输出低电平。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在您的帮助下成功生成信号 SB。 但在这里、信号并不独立于 Sa 和 SC、因为在同一时间、高电平或低电平开关信号可以在 SVPWM 技术中形成空间矢量。 实际上、根据已发布的一篇文章、这种异常信号波来自一种新颖的 SVPWM。

    因此、在 Sa = 0、Sb = 1、Sc = 0时、在最后一个时间周期2/T0期间、信号 Sa、Sb、Sc 仅具有四个状态:000 100 110 111 110 100 000、如果我们定义为高电平、低电平表示0、则信号 Sa、Sb、Sc 将生成另一个电压矢量010。

    因此、可能需要移动三个信号。  

    没有移位、是否有任何方法可以生成三个信号?

    thankse2e.ti.com/.../modified-svpwm.pdf

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

    我刚刚浏览了文档、了解我们是否可以使用 CMPC 和 CMPD 来提供帮助、但遗憾的是、我认为这是不可能的。 换档是我目前唯一可以提出的解决方案。 这是一个非常有趣的信号。

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

    大家好、您是否认为可以通过在立即模式而非影子模式下更改 CMPA 和 CMPB 来完成 PRD 之后的三个边沿?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    因此、您可以在周期前的前半部分设置 CMPA 和 B
    然后是第二个半周期后的 CMPA 和 CMPB
    然后、在我们不再移位的额外状态变化之前发生 CMPC 中断、在该中断中更改 CMPA

    虽然我从未见过任何人尝试过、但我认为这会起作用。 一个发挥作用的因素是 PWM 时钟的速度、要在中断中更改 CMPA、B、必须考虑进入中断所需的周期。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的、当下降沿出现在 PWM 周期的后半部分时、我使用 CMPC 中断、其中 ePWM 被强制为低电平、并在立即模式下设置新的 cmpa 和 cmpB。 因此可以生成信号。 下面是另一个问题:
    当计数器的值等于 CMPC 时、会发生一个 ePWM 模块中断2。 另一个 EPWM 中断1在计数器等于零时发生、此时在周期的前半部分设置了 cmpa。 因此、我们必须确保两个计数器在每个时刻都具有相同的值。 正确吗? 您是否有一些想法来确保它的存在? 谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我不确定您的具体意思。 但是、您可以在写入后始终检查 CMP 值、以确保它们是正确的。