This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Tick period of 20 microseconds works but not less than 20!!!

Hi, I have been working on F28335 and using SYS/BIOS.

I am using the threading module and currently I have only one task running. The task execution time is around 3.5us.

I have been trying to put the task to sleep using the Task_sleep() function for a couple of microseconds. I am able to do it correctly for and above 20 microseconds but not below that value. When I set the Tick period to less than 20, I don't see the task being run more than once!! For Tick period above 20, I get the exact period.

FYI, CPU frequency has been set to 150MHz

Please Help!!

Thanks.

  • Avik,

    20 us is a pretty aggressive Clock.tickPeriod setting.

    The overhead of servicing the tick interrupt every 20 us is probably not leaving any time left to return to your task before the next interrupt comes in.

    Code execution performance on the F28335 is very sensitive to the speed of the memory the code is executing within.

    Take a look at this forum post to see if strategic placement of code sections will allow you to support a 20us or less Clock.tickPeriod setting:

         http://e2e.ti.com/support/embedded/bios/f/355/t/187395.aspx

    Alan