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.

[参考译文] TMS320F28335:最大 PWM 频率

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1319055/tms320f28335-maximum-pwm-frequency

器件型号:TMS320F28335
主题中讨论的其他器件: C2000WARE

您好!

我正在尝试使用时钟频率为150MHz 的 TMS320F28335来实现25MHz PWM 频率。 为此、我将使用向上计数器且 EPwm1Regs.TBPRD = 6;

我保持占空比为50%。 EPwm1Regs.CMPA.half.CMPA = 3.

不过、没有显示任何脉冲。 当我保持 TBPRD 值=30时、我看到了 PWM 脉冲。 但如果我给出 TBPRD=20或更低的值、我就看不到来自 PWM1A 的任何脉冲。

PWM1的设置方式如下、

EPwm1Regs.AQCTLA.bit.ZRO = AQ_SET;//设置 EPWM1A 的操作
EPwm1Regs.AQCTLA.bit.CAU = AQ_CLEAR;
EPwm1Regs.AQCTLB.bit.ZRO = AQ_CLEAR;//在0上设置 PWM1A
EPwm1Regs.AQCTLB.bit.CAU = AQ_SET;

请告诉我、在实现这样的高频方面是否存在任何限制。

谢谢!

Naveed

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

    您好、Naveed:

    数据表 指出最小 PWM 周期 宽度为20ns (50MHz)、因此25MHz 应该可达到。 对于向上计数(非对称)计算: TBPRD =(FTBCLK/FPWM)-1 =(150 MHz / 25MHz)-1 =  5.我明天可以尝试测试一下,让你知道我能看到什么问题。

    为了说明这一点、您是否认为20的 TBPRD 是您看到任何 ePWM 脉冲的截止值? 我能不能要求  您确认您的时钟 分频器 是什么?

    此致、

    艾里森

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

    感谢您联系 Allison。

    我的 CLKDIV 如下:

    EPwm1Regs.TBCTL.bit.HSPCLKDIV = TB_DIV1;//时钟与 SYSCLKOUT 的比率
    EPwm1Regs.TBCTL.bit.CLKDIV = TB_DIV1;

    #define TB_DIV1 0x0

    我在 PWM 信号没有出现时尝试使用 TBPRD=20。 如果我给出30它即将到来。

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

    您好、Naveed:

    应能够 使用25MHz (因为这是数据表中指定的最大 GPIO 切换频率)。 将 TBPRD 值更改为测试时、您是否更改了代码中的任何其他内容? 此外、您是否使用 C2000Ware 中的任何示例代码?

    此致、

    艾里森