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:CLA 任务执行时间测量

Guru**** 2563960 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1356058/tms320f28p650dk-cla-task-execution-time-measurement

器件型号:TMS320F28P650DK

团队、您好!

目前、我正在 F28P65评估板上实施 CLA。 我已经成功地建立了一个控制环路并使用 CPU 和 CLA 来运行它。 使用 CPU 操作控制循环时、我可以通过周期计数方法确定执行时间。 在使用 CLA 执行任务时是否有计算周期计数的方法。  如果除了 GPIO 分析之外有一个替代方法来测量 CLA 中任务的执行时间、那将非常有用。

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

    Ajay、您好!

    解决此问题的方法有很多。 下面是几个选项:

    • 你可以查看反汇编视图、并计算任务中的 CLA 代码生成的汇编指令行数。 CLA 上的每个汇编指令都在一个 CLA 周期内执行、因此您可以利用这些知识来计算任务的执行时间。 如果在任务中调用了外部函数、也要考虑它们使用的汇编线数量。 对于只执行几个步骤的简单 CLA 任务、此方法将是最简单的。 任何带有环路的东西都将难以计算。
    • 另一种选择是在 CLA 任务被触发时启动 CPU 上的计时器、然后使用 CLA 任务结束中断来停止计时器、这将为 CPU 提供大致的任务执行时间。 如果你是通过来自 CPU 的软件触发 CLA 任务、这将是最简单的。 如果 CLA 任务是外设触发的、您可能必须在该条件下使用外设中断来了解何时启动计时器。

    此致、

    德拉尼

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

    尊敬的 Delaney:

    感谢您的支持。

    在我采用的第二种方法中、利用 ADC EOC 中断来启动 CLA 任务、并使用 PWM 来触发 ADC SOC。 因此、定时器的开始不能与 CLA 任务的触发精确对齐。 您能否提出替代解决方案或指定计时器应从哪个确切点开始

    提前感谢。

    此致、

    阿杰·K·R

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

    Ajay、您好!

    通过"计时器"、您是否指何时应触发 PWM ADC SOC? 您是否在问如何协调 ADC SOC 和 EOC 计时?  

    此致、

    德拉尼