文章目录
-
- 前言
- RTM配置
-
- RtmControl
- RtmGeneral
- RtmMonitor
- OS配置
- RTE配置
- 集成与测试
-
- 初始化
- 主函数
- 函数执行测量
- 测试
-
- CPU Load
- Task Monitor
- ISR Monitor
- 函数监控
- 总结
前言
一般对CPU Load的测量,task及runnable的监控等有两种方案:
1.需要使用带trace功能的调试器,且硬件也需要支持对应的trace接口
2.使用软件Gliwa T1适配对应的软件程序,通过CAN通信进行监控
以上两种方案所需的成本都不低,本文介绍基于ETAS RTM的配置实现CPU load测量/task时间测量/Isr时间测量,测量是基于定时器计数来的,可能不太准确,但是长时间的数据统计还是有一定参考意义的。
RTM配置
正常流程通过ETAS RTM模块配置,使用Cobra工具生成代码。实际在代码中直接修改配置也可以实现
RtmControl
RtmConcurrentMeasure:每个核心的并发测量数。增加这个值会加快测量速度,但会占用RAM和断点单元。设置1时占用断点单位0和1
RtmControlEnabled:使能RTM控制,开启测量功能
对应代码配置为
#define RTM_CTRL STD_ON
#define RTM_CTRL_CONCURRENT_MEASURE 1