I am a new user of FreeRTOS and I try to understand how it works. I want to use it with the new PIC32MX360F512L and I test it with MPLAB SIM (MPLAB IDE v8). I created two simple task with differents priorities and I want to delay/suspend the first one, run the second and go back in the first task after the end of the delay or with vTaskResume ( xHandle ).
When I run the programm the first task is delayed or suspended and the second run correctly. Next, when it’s time to resume the first task, the second task stops to run (that is normal) the current TCB point on the first task but the programm never go back in this task. Instead of this, the programm loops in the port_asm.S file between portSAVE_CONTEXT and portRESTORE_CONTEXT.
I guess the problem come from portSAVE_CONTEXT, portRESTORE_CONTEXT or vTaskIncrementTick but I am not good enough to see exactly what happens.
Can you explain me what I have to do in order to have the expected behaviour?
Thanks for your help.
PS: Sorry for my english but as you can read, it’s not my mother tongue!!