How long (cycles) is a yield on a Cortex-M0+?

ljskinny wrote on Thursday, May 11, 2017:

Hi all,

We have a strange problem in using a time critial interrupt (samplin input) in conjunction with the freeRTOS.

my first question is, how long a yield is, which uses the critical section and disables the global interrupts.

So this could be the reason for blocking the interrupt.

I would expect, that the yield should not block that long the interupt or i am i something missing?

Any ideas are welcome. I have to check, if the RTOS itself is the problem for the issues in our application.

Best regards

Holle

rtel wrote on Thursday, May 11, 2017:

If you are referring to the context switch time then you can find some
information for a Cortex-M3 on the link below. An M0 will be a bit
slower due to its more limited instruction set.

Also unlike an M3, the M0 will globally disable interrupts in a critical
section - do you have long critical sections?
(taskENTER_CRITICAL()/taskEXIT_CRITICAL)

http://www.freertos.org/FAQMem.html#ContextSwitchTime