请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
问:如何计算 CLA 任务执行所需的时间? 或者如何描述 CLA 任务? 应包括哪些开销?
C2000培训小程序码
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.
问:如何计算 CLA 任务执行所需的时间? 或者如何描述 CLA 任务? 应包括哪些开销?
C2000培训小程序码
答:
使用计时器:
一种方法是使用自由运行的计时器来捕获任务执行所花费的周期数。 CLA 可访问 PWM 计时器。 例如、您可以按如下方式捕获 C 语言中的周期数:
在 C 语言中、这看起来类似于:
CT1 = EPwm1Regs.TBCTR; <<此处测量代码>> CT2 = EPwm1Regs.TBCTR; Δ_CT = CT2 - CT1;
使用 GPIO 引脚:
在某些器件上、CLA 可直接访问 GPIO 引脚。 在这种情况下、CLA 可以在要测量的代码前后切换引脚、而不是读取计时器。 使用示波器监控引脚、以测量时间差。 请参阅特定器件的 TRM。
开销:
由于触发 CLA 任务并通知 C28x 它已经完成、将会产生一些开销。 为了测试这个开销、你可以使用 C28x 上的一个定时器来为 CLA 任务的开始和停止计时。
另请参阅此帖子的讨论: https://e2e.ti.com/support/microcontrollers/c2000/f/171/t/738758