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.

[参考译文] TMS320F280049C:当在运行代码中尝试调试时、EPWM6A 保持高电平大约1秒。

Guru**** 2587365 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1287163/tms320f280049c-epwm6a-remains-high-for-about-1-second-when-debugging-is-attempted-in-running-code

器件型号:TMS320F280049C

我已将 EPWM6A 配置为在50%占空比下生成10KHz 占空比。 当我尝试在硬件运行时调试代码时、ePWM 保持高电平大约1秒、这会损坏开关。 我无法弄清为什么会发生这种情况。 我随附了代码以及显示问题的 DSO 屏幕截图。 请帮我解决问题、或指导我在哪里犯了一个错误。  

 e2e.ti.com/.../EPWM6A_5F00_OldCompiler.zip

我也尝试过两种不同版本的编译器、但我无法找出问题。  

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

    尊敬的 Nikhil:

    为了说明这一点、这个问题是在您的代码每次开始执行时发生的、还是只在您命中断点代码时发生的。 如果它始终在启动时发生、请尝试在 ePWM 初始化结束和启用 TBCLKSYNC 之间添加延迟。 如果它只在你命中断点时发生、这是由 FREE_SOFT 位造成的。 如果您希望 PWM 即使在您命中断点代码时仍继续其正常行为、您应该将它们设置为11或10。

    谢谢!

    卢克

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

    Luke、您好!  

    只有当我使用 xds110仿真器来调试代码时、才会出现此问题。 因此、调试会话开始后、一段时间会 使 ePWM 6A 引脚处于高电平。 可以在哪里设置 FREE_SOFT 位? 它们是某些特定寄存器的一部分吗?  

    我将尝试您建议的延迟方法。 应使用的任何特定最小延迟值?  

    此致、  

    尼基尔  

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

    尊敬的 Nikhil:

    我建议延迟1000us。 其他用户在此处遇到类似问题:

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1283765/tms320f280034-behavior-of-pwm-pins-during-start-up

    请告诉我、这是否可以解决您的问题。

    谢谢!

    卢克