Quality RTOS & Embedded Software

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




Loading

two tasks block LPC31XX ARM9

Posted by kimokono232 on January 2, 2014

Hello,

I am using vTaskDelay in every task. I have no problem using a single task.but when I create the second task, one task gets blocked and the other one works correctly in response to its ticks (increments correctly) but it increments again on the tick of the blocked task.

Both tasks start correctly but later it goes wrong as described above. I have tried to use taskYIELD calls instead of vTaskDelay and it works if priority of both tasks is the same. highest priority task gets blocked if I give different priorities to both created tasks.

I would appreciate any hint or clue on how to find the problem or how to fix it

Regards


two tasks block LPC31XX ARM9

Posted by rtel on January 2, 2014

I took a quick look at your code and the only thing I can suggest is to convert the C code in the naked functions into assembler code. Whether this is necessary or not is dependent on the version of GCC being used. Compare your portASM.c to FreeRTOSSourceportableGCCARM7_LPC23xxportASM.c to see the differences.

Other than that, try it on real ARM9 hardware, historically support requests from using using simulators highlight simulator bugs rather than code bugs.

Regards.


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




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

Latest News

FreeRTOS kernel V10 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