pimvanhezewijk wrote on Thursday, May 29, 2008:


I’m experimenting for a couple of weeks now with FreeRTOS. I’m working with Keil Uvision and a LPC2138 microcontroller.
Now I have a problem with the function:
        if( xSemaphoreTake( xMutex, ( portTickType ) 10 ) == pdTRUE )
A strange error occurs when the function prvLockQueue has been called.
When he wants to store R1 in R0, he goes into the D abt handler.
(I can’t see the pxQueue anymore, so I don’t know what happend with it)

The printscreen is over here:
I hope someone could help me.
By the way, if you need more information, please let me know.

Thanks in advance,

Best Regards,
Pim van Hezewijk

davedoors wrote on Thursday, May 29, 2008:

Its difficult to say, but the first thing to check is that you are not just experiencing a stack overflow. Try allocating the task more stack.

Where did you get the Keil port from?

pimvanhezewijk wrote on Thursday, May 29, 2008:

Thanks for your fast reply Dave,
I allocated more stack, but it still doesn’t work.
I’m still working on the demo application…

Best Regards,