我有一个FreeRTOS版本,它附带一个TraceAlyzer工具,我需要比较它如何影响整个系统的有效性(它减慢了什么时间)。我有两个简单的任务,可以在短时间内运行和延迟。我使用Tracealyzer启动系统两次,没有进行一些迭代。
我知道vTaskGetRunTimeStats(),但据我所知,它只测量一个任务的运行时间,而不是整个系统的运行时间。目前我正在使用PowerShell工具Measure-Command
,但我想在FreeRTOS中使用内置工具。
如何衡量FreeRTOS中整个系统(所有任务,而不仅仅是一个)的执行时间?
答案 0 :(得分:1)
vTaskGetRunTimeStats()将为所有任务提供统计信息,前提是您已配置其使用的时钟。此图像是它提供的数据的示例: https://freertos.org/rtos-run-time-stats.jpg
如果您只想要原始数据,请使用https://freertos.org/uxTaskGetSystemState.html