You are here

Code execution time | Cypress Semiconductor

Code execution time

Summary: 2 Replies, Latest post by odissey1 on 17 Aug 2016 09:07 AM PDT
Verified Answers: 0
Last post
Log in to post new comments.
creative's picture
38 posts

Is there any way to find how long a part of my code take to complete execution on psoc 5lp?


Thank you

user_1377889's picture
9301 posts

Use a logic analyzer and flip a port. If it is a lengthy program part use a timer/counter component as a clock and read the values at begin and end.



user_342122993's picture
531 posts

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

SysTick_Config(SYSTICK_MAXVAL); //reset counter set to max value, 1-time, will not reload
TCPWM_WritePeriod(); // your function is here...
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.