Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem TCP & FAT




Loading

Kinetis K60 with FreeRtos and uIP or lwIP

Posted by Manu on November 7, 2012
Hello I am new i n the field of IP Stacks and due to the fact that FreeRTOS recommends the use of either uIP or lwIP I would try one of these stacks. Does anybody knows about an example of a Kinetis controller and one of the above moentioned TCP Stacks? I am using CodeWarrior based on eclipse.


RE: Kinetis K60 with FreeRtos and uIP or lwIP

Posted by Richard on November 7, 2012
Just to be clear - FreeRTOS does not recommend the use of these stacks over and above any other. There are several (oldish) demos that use them, but people use FreeRTOS with lots of different stacks.

uIP is a really good stack in the right situation, and the right situation is where RAM is extremely limited and throughput does not matter.

lwIP is under continuous development, but naturally more complex.

To port either of these stacks you don't necessarily need a Kinetis example. The only portion of the code that is specific to a platform is the MAC interface. You can copy an integration from a FreeRTOS project, and copy a MAC driver from the Freescale processor expert - and put the two together.

Regards.

RE: Kinetis K60 with FreeRtos and uIP or lwIP

Posted by woops_ on November 7, 2012
Here is IAR example http://www.freertos.org/FreeRTOS-for-K60-Cortex-M4-with-web-server.html

RE: Kinetis K60 with FreeRtos and uIP or lwIP

Posted by Manu on November 8, 2012
Hello,

@ Richard: thanks for clarifying and providing me the information resecting the porting. I will try o port one of the stacks.

@woops, thanks for the IAR example


RE: Kinetis K60 with FreeRtos and uIP or lwIP

Posted by Manu on November 9, 2012
Does anybody know what steps i have to do to port the IAR solution to a CW solution?

tahnks in advance!

RE: Kinetis K60 with FreeRtos and uIP or lwIP

Posted by Richard on November 9, 2012
Generally, the only part of the TCP/IP stack that is dependent on the compiler are:

1) The syntax required to pack structures - which is required for a TCP/IP stack. If you search for the files pack_struct_start.h and pack_struct_end.h you will see that they contain a test for the compiler being used, then the syntax that is required by that compiler. You would have to add something for the CW compiler. If CW is using GCC then you probably won't have to do anything.

2) How the interrupt service routines are installed. On a Cortex-M3, if a CMSIS vector table is being used, and if the demo is using a CMSIS interrupt name, then again you probably won't have to do anything. Otherwise, just ensure the interrupt is installed in the Ethernet vector [I suppose that is not really compiler dependent after all].


As far as FreeRTOS goes, you would need to build the portable.c file that is correct for the compiler being used, and ensure the include path is set up to include the portmacro.h that is right for the compiler.

Regards.


[ Back to the top ]    [ About FreeRTOS ]    [ Sitemap ]    [ ]




Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

FreeRTOS kernel V10 is available for immediate download. Now MIT licensed.


FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS