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.

[参考译文] TMS320F280025:是否在不同的 ePWM 模块中同时更新了 TBPRD 和 CMPA?

Guru**** 2524460 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1203440/tms320f280025-tbprd-and-cmpa-updated-simultaneously-in-different-epwm-modules

器件型号:TMS320F280025

您好、专家!

我要求在这里为我的客户提供帮助。 客户的紧急案例。

客户正在使用 LLC 控制、通过 40k 至400k 的可变频率控制实现。 当使用 EPWM1_INT (当 TBCTR =零时生成)更新 CMPA 和 TBPRD 时、在 ePWM 模块之间同时写入 TBPRD 和 CMPx 寄存器。 我们知道 F28002x'TRM 中提到的 EPWMXLINK 和全局加载函数。  

客户 一直希望使用 软件中断来实现同时写入、但发生了下图所示的错误。  实际上 EPWM1和 EPWM2接收到相同的 CMPA 和 TBPRD、但下图显示 EPWM1A 不正常。 这是一个紧急情况、客户需要通过 RTM F280025解决此问题。

(CH1:EPWM1A;CH2:EPWM2A;CH3:EPWM1 ISR;CH4:ADC ISR)

客户使用 ADC ISR 计算 EPWM1.CMPA/EPWM2.CMPA、 以下 代码在 ADC ISR 中启用 EPWM 中断使能位、然后更新 EPWM1_Int.中的 TBPRD 和 CMPA/CMPB 值。

1.我们检查 EPwm1Regs.CMPA.bit.CMPA > EPwm2Regs.CMPA.bit.CMPA 、未找到。

检查 utemp > utemp1、未找到。 并 在 同时更新时检查所有 ePWM 模块的相同 TBPRD。

查看 ePWM 初始化代码与 TI 示例、未发现错误。

我们也启用了 TBPHS 和 SYNC 从不同的模块、ADC ISR 执行时间为2.180us、EPWM1 ISR 执行时间为3.06 us。

请帮助检查并深入了解该项目。 谢谢。

e2e.ti.com/.../1234.zip

 

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

    您好、绍兴市

    要澄清的是、客户是否已经在使用 XLink 功能、还是正在寻求有关实施此功能以避免上述问题的帮助? 我注意到、在 HRPWM_Config_pri_sec 中、会在软件中为所有3个 EPWM 写入 CMPA 寄存器。 如果客户使用 XLink、则应该没有必要这样做、因为单个 ePWM 模块只需写入 CMPA 即可同时更新所有模块 CMPA。

    谢谢!

    Luke

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

    Luke、您好!

    客户不希望使用  XLink 特性、他们保持使用 EPWM1_INT ISR、 同时在 ePWM 模块之间写入 TBPRD 和 CMPx 寄存器。 因此、我们将重点采用该方法来解决客户的问题。 谢谢。  

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

    绍兴、您好、我将关闭此主题、因为此讨论已移至电子邮件。