【简介】
在之前的帖子中有介绍过如何适配使用perf_counter(https://forum.eepw.com.cn/thread/386237/1),适配过程此贴有记录在此就不再赘述了,之前适配使用的IAR 编译工具链,本次使用S32DS 自带的GCC 工具链,针对S32DS适配过程的问题点进行记录。
【添加 CMSIS 】
以下是perf_counter 中 对CMSIS 的依赖

perf counter 的源代码依赖了CMSIS 但是S32DS 的SDK 没有支持CMSIS ,我们需要下载CMSIS 的源代码(https://github.com/ARM-software/CMSIS_6)加入到工程中即可。
代码适配后S32DS 会有如下的编译警告perf 需要gnu 的扩展属性支持

我们在编译选项配置使用gnu99 的配置

添加如下代码验证perf counter 功能
unsigned int perf_test(char argc,char ** argv)
{
(void)argc;
(void)argv;
start_cycle_counter();
vTaskDelay(1000);
int64_t lCycleUsed = stop_cycle_counter();
PRINTF("cycle counter %lld.\r\n",lCycleUsed);
return 0;
}本地CPU主频为160M 计算延时1S所消耗的CPU周期,数据和预期的160M 保持一致

						
			
			
			
						
			
 我要赚赏金
