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:ePWM 触发 CLA 任务问题

Guru**** 2579735 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/647529/ccs-tms320f28377d-epwm-trigger-cla-task-problem

器件型号:TMS320F28377D

工具/软件:Code Composer Studio

大家好、我将使用 ePWM CMPB 来触发 CLA 任务。

然而、CLA 中的计数器只计数一次。

如果 ePWM 触发 CPU ISR、然后触发 CLA (asm (" IACK #0x0001"))、它将起作用。

CLA 任务完成后、我不需要触发 CPU ISR、因此没有 CLA_INT、这意味着

// PieVectTable.CLA1_1_INT =&cla1Isr1; 

我的参考 e2e 文档是: e2e.ti.com/.../618912

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

    您好、Willie、

    您的意思是它只计算一次?  请澄清您的问题?

    此外、除非您在触发 CLA 任务之前需要 C28x 进行一些处理、否则您可以让 PWM 信号触发 CLA 任务。

    此致、
    SAL

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Sal、
    感谢您的快速回复。
    我在 CLA 任务上设置一个计数器、如果进入 CLA 任务1、那么计数器++、当任务由 PWM 触发时、该计数器仅计数一次。
    但是、如果我使用 PWM 触发 CPU、然后使用 CLA、则该计数器工作正常。
    因此、我假设我的 PWM INT 设置正确、我想知道 CLA 任务是否需要确认?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你的 CLA 任务是否在我执行一个 MSTOP 指令时完成执行?

    检查 MIRUN 寄存器以查看任务是否永不停止。 此外、确保您获得多个 PWM 中断、并清除 PIE ACK 寄存器以使 PWM 中断再次发生。

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

    您好 Sal、

    根据您的建议、我发现 CLA 的 PIE ACK 不清晰。

    我将在本周再次尝试、假设这是答案~

    非常感谢!

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

    很高兴您认为这可能是问题所在。 对于任何其他问题、请随时在此处发布或打开另一个主题。

    SAL
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Sal、
    在 CLA 中清除 PWM INT (EPwmxRegs.ETCLR.bit.INT = 1)后、CLA 任务正常运行。 非常感谢你们的帮助!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    非常好! 如果您有任何其他问题、请告知我们。

    SAL