You are here

Profiling PSOC4 code | Cypress Semiconductor

Profiling PSOC4 code

Summary: 1 Reply, Latest post by odissey1 on 17 May 2015 03:48 PM PDT
Verified Answers: 0
Last post
Log in to post new comments.
Fayek's picture
8 posts



In psoc creator,

how can I profile the code and know how much resourses each function takes?




user_342122993's picture
530 posts

There is no profiler in Creator AFAIK. You can yse SysTick counter to measure amount of CPU cycles taken by a function or operation as shown below. You will be limited by 2^24 CPU ticks only (about 0.25sec @24MHz CPU speed), as SysTick counter on Cortex M0 and M3 can not go beyond  SYSTICK_MAXVAL.




#define SYSTICK_MAXVAL 0x00FFFFFF //max allowed SysTick counter value for 24bit

uint32 SysCntVal; // The value of SysTick counter you are trying to retrieve

float x=1.0f; //some variable to work with    
      SysTick_Config(SYSTICK_MAXVAL); //reset counter set to max value, 1-time,  will not reload

      x+=(float) 0.0001; //do something.. 

      SysCntVal = SYSTICK_MAXVAL - (SysTick->VAL); //get elapsed ticks (min offset 3 ticks)
      sprintf(strMsg1, "%d, %f\r\n", SysCntVal, x); //report result

Log in to post new comments.