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.

[参考译文] TMS570LC4357-EP:无法读取PMU计数器

Guru**** 2463330 points
Other Parts Discussed in Thread: TMS570LC4357

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1093433/tms570lc4357-ep-unable-to-read-pmu-counters

部件号:TMS570LC4357-EP
主题中讨论的其他部件:TMS570LC4357

你(们)好  

我们正在使用TMS570lc4357,我们希望使用PMU计数器进行任务探查,但遗憾的是,它始终显示为零。 我已按照下面提到的顺序进行操作,能否请您指导我解决问题?

UINT32连接器;

_pmuInit_();

_pmuEnableCountersGlobal_();

_pmuResetCounters_();

_pmuStartCounters_(0U);

CallDummy ();
CallDummy ();

_pmuStopCounters_(0);

CNTR =_pmuGetCycleCount_();

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

     _pmuStartCounters_汇编器函数写入Cortex-R5 C9,Count Enable Set Register

    _pmuStopCounters_(0);

    [/引述]

     _pmuStopCounters_汇编器函数写入Cortex-R5 C9,计数启用清除寄存器

    写入这些寄存器将采用位掩码,指定要启用或禁用的计数器。

    传递参数0表示所有计数器的启用标志保持不变。

    如果要使用循环计数器测量测试下函数的时间,请通过 计数器位掩码的pmycle_counter。 即:

    _pmuStartCounters_(pmuCYCLE_COUNTER);
    
    CallDummy();
    CallDummy();
    
    _pmuStopCounters_(pmuCYCLE_COUNTER);

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

    您好,Chester,

    非常感谢。 现在它按预期工作。

    谢谢!

    苏巴什