EmbeddedRelated.com
Forums

Simple and free RTOS for LPC24xx or LPC23xx

Started by Felipe de Andrade Neves Lavratti June 27, 2009
Hello...

I am looking for a very simple RTOS, have tryed many (Keil, uCOS, IAR
one) but no one is free, I only know FreeRTOS as being free but I found it
really complex to understand (I spent several hours reading the samples and
trying to port), so I am looking for a free RTOS system for LPC2xxx simple
and light.

What do you suggest?

Thanks.


An Engineer's Guide to the LPC2100 Series

> I am looking for a very simple RTOS, have tryed many (Keil, uCOS, IAR
> one) but no one is free, I only know FreeRTOS as being free
> but I found it
> really complex to understand (I spent several hours reading
> the samples and
> trying to port), so I am looking for a free RTOS system for
> LPC2xxx simple
> and light.

I don't think you will find one much simpler than FreeRTOS. The demos are
very comprehensive and serve to both test the port and provide examples of
every API function, rather than be a simple start. If you want a good
starting point just define two tasks that do nothing but toggle an LED:

void vTask1( void *pv )
{
____for( ;; ) // For ever
____{
________ToggleLED( 0 ); // Toggle LED 0
________vTaskDelay( 1000 ); /// Delay 1000 ticks.
____}
}

void vTask2( void *pv )
{
____for( ;; ) // For ever
____{
________ToggleLED( 1 ); // Toggle LED 1
________vTaskDelay( 500 ); /// Delay 500 ticks.
____}
}
int main( void )
{
____// Create an instance of each task
____xTaskCreate( vTask1, ........ );
____xTaskCreate( vTask2, ........ );

____// Start the tasks running.
____vTaskStartScheduler();

____// Should never reach here.
____for( ;; );
}
If you want a step by step explanation/tutorial then you can buy the eBook,
it comes with the source code for all the examples it presents:
http://www.FreeRTOS.org/Documentation
Regards,
Richard.

+ http://www.FreeRTOS.org
Designed for Microcontrollers. More than 7000 downloads per month.

+ http://www.SafeRTOS.com
Certified by T as meeting the requirements for safety related systems.

--- In l..., "FreeRTOS info" wrote:

>
> If you want a step by step explanation/tutorial then you can buy the eBook,
> it comes with the source code for all the examples it presents:
> http://www.FreeRTOS.org/Documentation
> Regards,
> Richard.

I just ordered both books; thanks for preparing them. I have been successful with FreeRTOS on the LPC2106 and LPC2148 but I look forward to having printable material. I just seem to 'get it' faster when I have a book.

Richard

Prognosis of future bug-fixes aside, here's another. Also, be sure you need a preemptive RTOS versus a cooperative tasking system. The latter is far simpler, and with state machines in each task, often suffices.

http://www.tnkernel.com/

--- In l..., "FreeRTOS info" wrote:
>
> > I am looking for a very simple RTOS, have tryed many (Keil, uCOS, IAR
> > one) but no one is free, I only know FreeRTOS as being free
> > but I found it
> > really complex to understand (I spent several hours reading
> > the samples and
> > trying to port), so I am looking for a free RTOS system for
> > LPC2xxx simple
> > and light.
>
> I don't think you will find one much simpler than FreeRTOS. The demos are
> very comprehensive and serve to both test the port and provide examples of
> every API function, rather than be a simple start. If you want a good
> starting point just define two tasks that do nothing but toggle an LED:
>
> void vTask1( void *pv )
> {
> ____for( ;; ) // For ever
> ____{
> ________ToggleLED( 0 ); // Toggle LED 0
> ________vTaskDelay( 1000 ); /// Delay 1000 ticks.
> ____}
> }
>
> void vTask2( void *pv )
> {
> ____for( ;; ) // For ever
> ____{
> ________ToggleLED( 1 ); // Toggle LED 1
> ________vTaskDelay( 500 ); /// Delay 500 ticks.
> ____}
> }
>
>
> int main( void )
> {
> ____// Create an instance of each task
> ____xTaskCreate( vTask1, ........ );
> ____xTaskCreate( vTask2, ........ );
>
> ____// Start the tasks running.
> ____vTaskStartScheduler();
>
> ____// Should never reach here.
> ____for( ;; );
> }
>
>
> If you want a step by step explanation/tutorial then you can buy the eBook,
> it comes with the source code for all the examples it presents:
> http://www.FreeRTOS.org/Documentation
>
>
> Regards,
> Richard.
>
> + http://www.FreeRTOS.org
> Designed for Microcontrollers. More than 7000 downloads per month.
>
> + http://www.SafeRTOS.com
> Certified by T as meeting the requirements for safety related systems.
>

>> I don't think you will find one much simpler than FreeRTOS.
FreeRTOS is about is simple as it gets, if you want a true RTOS.

If you want something smaller yet, then you are looking for a task manager.

Chris.


Hi

See also http://www.uTasker.com
It runs on LPC2101 up to LPC2478, including simulator.
See screen-shots of simulator at http://www.utasker.com/Demos/Simulations.html
There is an LPC2478 demo online (at the moment) at http://demo.uTasker.com

Regards

Mark

--- In l..., Felipe de Andrade Neves Lavratti wrote:
>
> Hello...
>
> I am looking for a very simple RTOS, have tryed many (Keil, uCOS, IAR
> one) but no one is free, I only know FreeRTOS as being free but I found it
> really complex to understand (I spent several hours reading the samples and
> trying to port), so I am looking for a free RTOS system for LPC2xxx simple
> and light.
>
> What do you suggest?
>
> Thanks.