I’m using FreeRTOS 7.6.0 on LPC1766, with Rowley Crossworks. I have a small program with one task adapted from a ‘CORTEX_LPC1768_GCC_Rowley’ demo (but with LPC1766 set in Crossworks).
I’m getting an exception (presumably an illegal memory access) at the statement <<<< below in uxListRemove.
unsigned portBASE_TYPE uxListRemove( xListItem * const pxItemToRemove )
xList * pxList;
pxItemToRemove->pxNext->pxPrevious = pxItemToRemove->pxPrevious;
pxItemToRemove->pxPrevious->pxNext = pxItemToRemove->pxNext; <<<<
uxListRemove is called about 6 times before the crash. The particular time it is called and crashes comes from this line in the vTaskDelay which is in the main task loop:
if( uxListRemove( &( pxCurrentTCB->xGenericListItem ) ) == ( unsigned portBASE_TYPE ) 0 )
Can anyone suggest what may be wrong or where I should look next.