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.

[参考译文] TMS320F2800155-Q1:Bootleader 程序加载异常、PWM 中断不会运行。

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1397821/tms320f2800155-q1-bootleader-program-load-exception-pwm-interrupt-does-not-run

器件型号:TMS320F2800155-Q1

工具与软件:

尊敬的团队:

当我下载了程序并跳转到应用程序后、我发现不会触发 PWM 中断、此时我必须再次关闭。 重新上电后、程序正常运行。 当我单独模拟它时、程序运行良好。

同时、我比较了下载到 RAM 中的数据、发现它与我下载的十六进制文件一致。 我可以问为什么会这样吗? 同时、

我的 CAN 通信中断和计时器中断是正常的。

PWM 中断是基准例程 EPWM ex2向上和向下 AQ.c

同时、我还想询问触发这个中断的条件是什么?

期待您的回复。

此致

Zhang

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

    纠正、显示错误、在比较闪存和十六进制数据时没有异常

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

    尊敬的 Zhang:

    参考的 PWM 中断在 TBCTR =ZRO 时产生。

    对于 ePWM1、ePWM2、和 ePWM3、只有当总共发生3个 TBCTR=ZRO 事件时才会生成中断。 这是将被触发的中断条件。

    此致!

    Ryan Ma

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

    大家好、马良马

    您能帮助我分析为什么不能触发 bootleader 跳转 PWM 中断吗。 你能给我一些想法吗。谢谢

    好的  

    Zhang

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

    尊敬的 Zhang:

    有几件事需要确认。

    1.生成中断的 ePWM 是否按预期运行? (在 CCS 的实时表达式窗口中 TBCTR 递增?)

    2.您是否看到事件触发器标志已设置? ETFLG?

    3.是否像示例中那样清除事件触发标志和中断标志?

    3.是否提到中断仅在进行下电上电后才生成?

    此致!

    Ryan Ma

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

    您好、Ryan Ma、
    非常感谢您的答复、但我不认为我很清楚,我会再次说。当我正常模拟,我的程序是好的。

    问题是、当我使用 bootleaer 进行写入时、我无法触发 PWM 中断、并且必须重新启动电源才能正常工作、那么如果我现在不进行仿真、我如何确认您所说的上述问题?

    好的  

    Zhang

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

    您好!

    专家今天不在办公室、请预计周一前回复。

    谢谢!

    Luke

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

    尊敬的 Zhang:

    请理解、让我询问引导加载程序专家、了解为什么 PWM 中断无法生成、需要重启才能正常运行。

    此致!

    Ryan Ma

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

    尊敬的 Zhang:

    正常模拟时、我的程序没问题。
    1. 上面提到的、您是指在连接 CCS 调试器的情况下运行程序吗?  
    2. 您是否仅使用 CCS 运行应用代码? 或者您是否使用仿真引导模式来模拟引导器件、通过引导加载程序加载程序等?
    3. 您使用哪种引导模式来加载程序?

    此致、

    Allison

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

    尊敬的 Allison Nguyen:

    我在重复我的问题、当我使用仿真器进行烧录时、或者使用仿真器模拟程序时、PWM 中断没有问题、但是、当我使用引导加载程序更新程序时、无法在程序运行到应用程序后触发 PWM 中断。 我在论坛上看到了类似的问题、但没有在答复。中得到解决

    此致、

    Zhang

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

    尊敬的 Zhang:

    请告知以下信息:

    1. 您在使用什么引导加载程序? 您是否通过 SCI 等某个通信外设引导并使用此外设将程序加载到器件上?
      1. 您是否为此使用闪存内核?
    2. 您是否使用过仿造产品 仿真 引导模式来引导器件?
    3. 将程序加载到器件后、您可以连接到 CPU 并加载程序.out 的符号、以便您可以单步执行并进行调试吗?

    如果不了解器件正在运行的内容和中断寄存器是什么样子、就很难评估正在发生的情况。 如果能够连接到器件、但器件无法生成 PWM 中断、我想知道寄存器中有哪些具体值。 PWM 中断的产生会通过 PWM 模块、PIE 模块和 CPU 有一条中断路径—因此我想查看 CPU 中断寄存器、PIE 组寄存器和 PWM 事件触发寄存器。

    此致、

    Allison