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/TMS320F28377D:需要有关生成 PWM 信号的帮助

Guru**** 2540720 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/622538/ccs-tms320f28377d-need-help-to-generate-pwm-signals

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

工具/软件:Code Composer Studio

尊敬的:

我在此附上了在 ePWM2和 ePWM3上生成 PWM 信号的代码... 我想使用数字电源库并从 CLA 生成信号。  

我已经用 C28x 内核成功实现了这一目标、并在相同的引脚上生成了 PWM 信号...  

此外、我运行 cla_sqrt 示例以了解 CLA 调试过程、而不会出现任何问题。 然后部署了 DP 库、以使用 CLA C 编译器生成 PWM。  

虽然我的代码看起来在运行、但到目前为止、我无法在示波器中获得波形。  

我使用的是 CCS 版本6.1.1.00022

如果能在这方面提供任何帮助,我们将不胜感激!

e2e.ti.com/.../ePWM2_2600_3_5F00_CLA.zip

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否能够在 C28x 优先的情况下生成信号?

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

    是的、我能够做到这一点。 此外,在我的上一篇文章之后,我在调用 main()内的 CLA 函数之后不久添加了一个 LED 闪烁循环。 然后、我能够在示波器上观察到 PWM。 但是、我在 CLA 内部使用的函数似乎没有生效。 您可能会观察到代码、

    PWM_PSFB_CNF ();"main.c"的"main()"中的函数调用可配置周期并生成 PWM 脉冲...
    稍后、PWMDRV_PSFB_F_C ();函数调用会更新相位差和死区...

    当我运行新代码时、相位和死区未更新... 这意味着我的 CLA 任务未生效。

    但是、我可以看到、当我在 CLA 任务中插入一些数学函数时、它们运行正常。

    从 CLA 访问 ePWM/ADC 寄存器时是否需要执行一些操作?

    此外、您能否澄清为什么在代码末尾没有无限循环、我无法生成 PWM? (我可以直观地理解、这与周期快于 ePWM 周期的系统时钟频率有关、并在下一个周期开始前将其复位... 但情况是这样吗?)

    谢谢、此致、
    Shyam
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您将需要一个无限循环、以便您的中断和任务将继续生效、否则程序将完成、代码将中止。

    在访问外设寄存器之前、您可能需要一个 MEALLOW。 请尝试此操作。 此外、请参阅 C2000Ware 中的其他 CLA 示例。

    SAL