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.

[参考译文] TMS320F28335:如何查找当前时间或当前执行时间?

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1283674/tms320f28335-how-to-find-current-time-or-current-execution-time

器件型号:TMS320F28335

您好、TI 社区、

我正在查找代码的当前时间或当前执行时间。 如何找到此内容? 我需要在环路中执行以下操作:

例如:

环路->

双倍 CURR_TIME ...( 查找?? );

double last_time = 0;

DT =(CURR_TIME - Last_TIME);

Last_time = CURR_TIME;  

请建议如何计算此当前时间或当前执行时间?

谢谢

此致

阿尔萨兰

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

    您好!

    我建议在 CCS 中使用分析时钟:

    https://dev.ti.com/tirex/explore/node?node=A__ACh7aaTRwDWC-8ORL0EHMg__ccs_devtools__FUz-xrs__LATEST

    谢谢

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

    Ki、您好!

    感谢您的答复。

    我检查了该链接、并使用断点获取时钟周期中的值、如4345、下一个周期中的值4347、然后计算时间(4345 * 1/150m = 0.00002896)。 问题是、我必须手动计算我的环路的每个时间系统配置时钟周期。 如果 while 循环第二次运行、则此周期将发生相应变化、因此我必须再次测量系统配置时钟周期。

    是否可以在不测量每次的情况下得到系统配置周期、然后无论每次的环路周期是多少、都可以使用系统配置周期。 它会现场检查、然后进行相应测量? 我的意思是: Get (Profile_clock)。 因为我的 while 环路是连续的、我们不知道我的配置文件时钟的值是多少。 如果我们在我的 while 循环中固定 Profile_clock = 0.0000289的值、则 dt 将变为"0"、这是不正确的。

    在 CCS 中:

    double last_time = 0;

    while (1)
    {

    Duty_cycle_Ratio =((double)(((int32) PWM_Duty)/ 283;//该数字是0-1之间的比率
    A1=(Duty_cycle_Ratio * 3.0);//模拟输入电压
    dt =(0.000028966 - Last_Time);// Profile_clock .......................................................................... 该线路必须自动获取配置文件时钟
    last_time = 0.000028966
    E =(ref-a1);
    Se =(se + e)* dt;
    de =(e-le)/dt;
    PID_OUT =(KP*e)+(KI*SE)+(KD*DE);// PID 方程

    }  

    在 Arduino 中:  

    在 Arduino 中,控制器通过此行自动计算... 双倍现=毫秒();  

    如果我能得到这种函数或我的 CCS 代码的任何想法、就可以解决这个问题。

    请根据相关建议

    此致

    阿尔萨兰

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

    请注意、您的器件上的性能评测选项是有限的。 分析时钟的功能非常基础。 测量从 A 点到 B 点的周期很有用。您可以进行一些配置、例如每次运行中自动复位为0。 但这是关于它。 您也无法从应用程序代码访问配置文件时钟。  

    不过、您可以通过您的代码执行其他检测。 我会将此主题提请器件专家注意、他们可以提供更多详细信息。

    谢谢

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

    本页 https://software-dl.ti.com/C2000/docs/optimization_guide/phase2.html 详细介绍了如何在 C2000器件上使用 CPU 计时器来测量代码执行时间。  此页面上还有示例函数代码。  这将完成您所追求的目标。

    此致!

    马修