Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


Pb with vTAskResume, vDelay, vDelayUntil

Posted by it'sme Hello on March 13, 2008

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

RE: Pb with vTAskResume, vDelay, vDelayUntil

Posted by PICmeup on March 13, 2008
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?

RE: Pb with vTAskResume, vDelay, vDelayUntil

Posted by it'sme Hello on March 14, 2008
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.

[ Back to the top ]    [ About FreeRTOS ]    [ Sitemap ]    [ ]

Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

Meet us at Embedded World. Hall 3A-525.

Hear from Richard Barry at Embedded World. Feb 28, 16:00, Hall 4-428.

Video: Watch James Gosling & Richard Barry at re:Invent, Las Vegas 2017.

FreeRTOS kernel V10.0.1 is available for immediate download. Now MIT licensed.

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS