1 ready task never runs on LPC1227 (CM0)

varvenne wrote on Monday, October 24, 2011:

Hello,

I’m facing an issue which I can’t explain, therefore I’m hoping I can get some hints from this forum.

I have a configuration with 5 tasks + Idle task running on LPC1227, which has a Cortex M0. One task is used to handle the data sent received on the UART0, which is a simple serial port over used to send commands and receive some text output.

On my PC I have Tera Term connected to the correct port and I can see some status information and send commands, i.e. a regular command line interface.

Everything works fine until at some point where the terminal app stops receiving data.

I can see that when I type, data is received on the UART and the characters are sent to the right queue, so the task becomes READY, but it never runs, only the IDLE task is running. All other tasks are BLOCKED.

The READY task has a priority of 2 (Idle is 0 and other tasks have 1 and 4).

I attached a screenshot of the pxReadyTasksLists array - my task (which should be running) is located at position 3 (0 is the first) and I suppose that the Idle task is the one located at position 1, which I cannot verify since it is created without a handle.

rtel wrote on Monday, October 24, 2011:

There is not currently an official CM0 port, although there will be soon, so I’m not able to help directly.  There has been considerable effort on providing CM0 support in the FreeRTOS Interactive site, so I would recommend looking there for up to date ports, or to see if the port you are using has any issues (don’t post questions there though - it is not a support forum).

http://interactive.freertos.org/entries/20295001-lpc11xx-cortex-m0-freertos-v7-0-0-using-gcc-codered

Regards.

varvenne wrote on Tuesday, October 25, 2011:

Thanks a lot that is very useful information!

Best Regards,

Damien.