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.

[参考译文] TMS320F28P650DK:支持与 F28P650配合使用 PWM 死区生成的 C2000ware 示例、可在不同的死区配置中配置6个模块

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1292994/tms320f28p650dk-support-in-working-with-f28p650-c2000ware-examples-for-pwm-dead-band-generation-which-configures-6-modules-in-different-dead-band-configurations

器件型号:TMS320F28P650DK
主题中讨论的其他器件:C2000WARESysConfig

团队、

我们的客户正在提供 f28p650的 c2000ware PWM 死区生成示例、此示例可在不同的死区配置中配置6个模块。

 根据示例代码、它们在具有以下死区设置(400和200)的 ePWM4输出上测试有源高互补模式、但会产生没有死区的互补 PWM (请参阅随附的示波器快照)、您能检查相同的内容吗? ?

 

此外、在时钟树中配置 PWMclock2的除法/2会产生200.0 MHz 的 PWM 时钟(尽管它显示为100 MHz )、除法/1会提供100MHz。在 SysConfig 工具(1.17)中、您能否检查相同的内容。

 

 Ty、

CY (针对客户)

谢谢。

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

    Chris、您好!

    检查 RED 和 FED 的影子模式加载启用可修复死区生成的问题。

    拉胡尔

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

    拉胡尔

    很高兴您能够解决这个问题

    此致

    西达尔特

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

    是的、感谢您的努力、Rahul 和最新消息。

    根据您的离线消息、如果 PWM 频率仍然是问题、请告知我们。

    我们将暂时使该线程保持打开状态。

    再次感谢您、

    克里斯

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

    大家好、Chris 和 Rahul、

    除了 Rahul 提到的内容外,当前使用  C2000Ware  5.00.00.00版本生成的 SysConfig 代码,要启用死区影子加载模式,请确保选中启用红色阴影模式和启用 FED 影子模式的复选框。

    在下一个 C2000Ware 版本中、我们已更新设置以正确配置是否禁用了死区影子加载模式。

    user5948470 说:
    此外、时钟树中 PWMclock 的除法/2配置会产生200.0 MHz 的 PWM 时钟(虽然它显示为100 MHz) 、除法/1会给出100MHz、在 SysConfig 工具(1.17)中、您能不能再检查一下?
    请允许我和我的同事再次核对一下、并就此与您联系。
    此致!
    马瑞安

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

    Chris、  

    我检查了时钟树.  它根据 EPWMCLKDIV 的值生成代码并使用 driverlib 函数  SysCtl_setEPWMClockDivider () 设置 EPWM 模块的时钟。

    请检查 device.c 文件、并告诉我在您选择不同的分频器值时它是否发生变化。

    此致、

    哈迪

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

    你好,Hadi,谢谢你的 答复,

    我想我知道是什么导致了这个问题,我检查了自动生成的代码,它设置值1和2而不是0和1分别为/1和/2分频器,请参阅下面的代码管理。

    此外、我在独立模式下使用 SysConfig 工具(1.18.0+3266)生成源文件、这意味着不使用编译器时间调用。

    此外,注意到在你自动生成的代码输入参数是宏和我的版本它的常数值,你知道如何配置它以使用宏吗?


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

    尊敬的 Rahul:

    如您所见、driverlib 函数正在使用 EPWMCLKDivider 的枚举来处理所有调用。

    如果使用 C2000ware 版本5、将自动生成宏。

    此致、

    哈迪

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

    Hadi,  

    感谢您的回复、正如您在 SysConfig 文件顶部下方附加的快照中看到的、该文件提到使用 c2000ware 5.0版本保存。 但是、正如我提到过的 、我将在保存文件时 手动 使用该工具而不是使用 CLI 调用、不确定这是否有区别。

      

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

    Rahul、

    抱歉、我们在发布版本5后修复了此功能。

    要解决此问题,您需要替换   中的函数 SysCtl_setEPWMClockDivider ()。 使.xdt 有效  C2000ware 目录中的文件: C2000Ware_5_00_00_00\driverlib\.meta\device\functions_c\Clocktree] 、下面提供了函数:  

    SYSCTL_setEPWMClockDivider (SYSCTL_EPWMCLK_DIV_Θ` evice_CLK_EPWM_DIV `D);

      

    此致、

    哈迪