DAbt in prvCheckDelayedList

nobody wrote on Thursday, May 10, 2007:

Hallo!

I’m using the LPC2368_GCC port. When my programm first schedules co-routines and executes prvCheckDelayedList, I get a DAbt anywhere in this while-loop, at first execution.
while( ( pxCRCB = ( corCRCB * ) listGET_OWNER_OF_HEAD_ENTRY( pxDelayedCoRoutineList ) ) != NULL )
{

}

Some LDR at a address like 0xEF… or something in that range…
This occures also when no Co-Routine is created.

What could that be?’

Thanks

SirSydom

nobody wrote on Thursday, May 10, 2007:

The usual first thing to check is the stack usage.  If you are running the co-routines in the idle task then the configMINIMAL_STACK_SIZE from FreeRTOSConfig.h is used to set the stack size.

Did you remove any of the other demo tasks from your system before adding in new features.  Maybe you are just running out of RAM?  Set a break point in xTaskCreate() in the place where an error is returned if there is insufficient RAM.

Dave.

nobody wrote on Thursday, May 10, 2007:

Yeah, i removed all tasks instead of a LCD Test-Task.

I have total 4 Tasks.

#define configTOTAL_HEAP_SIZE        ( ( size_t ) ( 10 * 1024 ) )
#define configMINIMAL_STACK_SIZE    ( ( unsigned portSHORT ) 128 )

I’m creating all 4 tasks with usStackDepth = 2* configMINIMAL_STACK_SIZE

The tasks  do only a little bit LED-togling and delay.  I cannot imagine im running out of ram…

nobody wrote on Thursday, May 10, 2007:

I check 5the retrun value of xTaskCreate - no Error returned.