Pb with vTAskResume, vDelay, vDelayUntil

Hi, 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!!

Pb with vTAskResume, vDelay, vDelayUntil

I suspect the problem might be that you are running it in the sim. Can you run it on the mcu. Does the tick interrupt work in the sim?

Pb with vTAskResume, vDelay, vDelayUntil

I can’t run it on the mcu because I don’t have it yet but the tick interrupt seems to work in the sim. When I look the tickcount variable, it increments well. If I want a delay of 20 ticks, the tickcount variable counts from A to A + 20 and after that the current TCB changes and points on the high priority task (the delayed task) but the programm never go in it.