TI E2E™ 设计支持论坛将于 5 月 30 日至 6 月 1 日进行维护。如果您在此期间需要技术支持,请联系 TI 的客户支持中心寻求帮助。

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.

[参考译文] TMS320F2.8335万:ePWM脉冲操作

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/576654/tms320f28335-epwm-pulse-manipulation

部件号:TMS320F2.8335万

我需要为使用F2.8335万处理器实施的同步降压稳压器生成自举充电脉冲。 为此,我需要在ePWM1A上的脉冲结束后立即在ePWM1B通道上生成一个小脉冲。 类似如下的内容:

是否有任何方法可以从处理器上的ePWM模块生成类似的内容? 我尝试了一些死区设置和ePWM1A和ePWM1B的设置/清除设置,但没有成功。 请注意,ePWM1A脉冲和ePWM1B上的引导脉冲之间存在一小段死机时间。 必须生成停用时间以避免变矩器中的射流。

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

    您能否共享当前用于初始化ePWM模块的设置。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    计数器模式:向上向下

    ePWM1A:
    当CMPA =计数器减计数时设置
    当CMPA =计数器时重置计数

    ePWMB:
    当CMPA =计数时设置
    清除当CMPB=计数器时的计数

    请注意,CMBB的值略高于CMPA,因此ePWMB的脉冲宽度将根据需要非常小。

    上述设置将根据我的需要在ePWMA和ePWMB上创建脉冲,但死时/死区除外。

    现在对于死区,活动高互补或活动低互补设置不相关,因为它们将为ePWMA和ePWMB生成互补脉冲,此处的情况并非如此(ePWMB在大多数时间都保持关闭,只有一个微小脉冲除外)。

    我不知道使用什么设置来获得上述脉冲之间的死区。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Rohit:

    我想您可以 使用另一个ePWM模块生成2个PWM脉冲。 保持这些模块同步。 您可以正确生成这2个PWM脉冲,然后对这2个脉冲执行一些必要的逻辑操作,如和,或等,以获得所需的信号。

    ePWM基本上基于占空比控制。 另一种方法可能是基于0,1的控制。 我认为这也会有帮助。

    但是,如果PWM通道足以满足您的应用,则首选第一种方法。

    谢谢,

    Javy

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

    我尝试对DBCTL寄存器使用不同的设置,但无法根据需要生成死区。 我认为另一个选择是使用GPIO引脚来生成所需的小信号。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    @Ankit
    这将不起作用,因为GPIO可能与PWM模块不能很好地同步。

    关于建伟的建议,问题是我已经在使用4个PWM通道,用于一个多段交错降压转换器。 因此,我总共需要8个信道来完成此操作,这比处理器上的6个信道还要多。 我想最好的方法是生成没有死带的PWM脉冲,正如我在本线程的第三篇文章中所描述的那样,然后使用硬件死带电路。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    实际上,2.8335万具有6个ePWM模块,可生成12个PWM信号(通道)。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的,我知道六个PWM模块中的每个模块都可以生成2个信号。 但问题是,我无法使用一个PWM模块中的两个通道以所需的方式生成带死区的脉冲。 这可能意味着我可以使用两个PWM模块,其相移等于它们之间的死区,从而分别为上部和下部开关生成脉冲。 但是,这意味着我总共需要8个PWM模块,以按所需方式生成总共8个脉冲。 但是,由于只有六个模块,因此这种情况不可能发生。 我在使用字频道时犯了错误,我应该在其中使用字模块。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    更换控制器可能不是一个好主意。但如果必须,您可以这样做。 我正在使用2.8377万d,它有12个ePWM模块。这可能适合您。

    或者,您可以使用硬件来实施死区以保存PWM模块。

    同样,正如我之前提到的,您可以选择对ePWM模块使用基于0,1的控制方法。更多详细信息请参阅ePWM TRM 2.8335万。

    祝你好运
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    哦,更新后的2.8377万版本现在是2.8379万,尽管它们在大多数功能上都非常相似。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,现在不能选择更换控制器。 但是,您所说的基于0,1的控制方法是什么? 请简单介绍一下。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Rohit,大家好,

    F2833x器件绝对可以实现这一点。 下面介绍了如何实现这一目标。

    术语:

    CxD:计数器倒计时时比较x寄存器匹配

    CxU:计数器正在计数时比较x寄存器匹配

    设置:

    PWMA设置:在CAD上设置,在CAU上清除

    PWMB设置:在CBU上设置,在CAU上清除。

    死区设置:DBCTL[IN_MODE]= 10b (将红色应用于PWMA并将其馈入PWMB), DBCTL[POLSEL]= 10b (PWMB反转)。

    我希望这能有所帮助。

    Hrishi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您可以控制实时开关状态,例如0表示关闭,1表示打开,以控制占空比。这需要高'PWM'频率来提高精度。简单地说,您的CMPA是TBPRD或0,即占空比是100或0。 这些Shoudl遵循您的实时控制算法输出。 这只是一个建议,您应该检查一下是否适合您的应用。 有关实施此操作的详细信息,请参阅技术参考手册和数据表
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢。
    是的,死区设置帮助。这取决于该'换档'的值
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Hrishi,是的,此设置可以正常工作。 谢谢你。 我还有一个问题。 在转换器启动期间,我需要在一段时间内将ePWM设置为有效的高互补,并将ePWMA配置为红色和馈电的源。 这是否可行? 我的意思是ePWM模块通常是在项目中配置的,然后就像这样。 我是否可以将其包含在代码中,以便在启动一段时间后更改ePWM死区设置?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,有人能回答我在上述帖子中的问题吗? 请帮助。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Rohit,

    我们不建议在这些设备上运行时更改DBCTL寄存器,因为DBCTL寄存器没有阴影。 这些寄存器在我们的较新器件(TMS320F2837x,F2804x)上具有影子负载,完全是为了动态配置更改的目的,这里就是如此。

    Hrishi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我明白了。 但如果我们这样做,最坏的情况是什么? 请告诉您吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您注意到与PWM切换周期相关的时间点,则可以执行此操作。 最坏的情况是特定于应用程序/功率阶段的情况,具体情况取决于您的整体系统实施。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我明白了。 基本上,我们正在考虑在实施这一功能的同时,在PWM信号输出上也有一个NAND锁定,以避免射过。

    或者,我们正在考虑完全绕过ePWM模块中的死区,并在外生成死区以及锁定电路。 在这种情况下,也必须更改ePWMB,以便在正常操作期间从CMPA触发,并在启动期间从CMBB触发。 此选项是否更安全?