Description FreeRTOS (www.freertos.org) implementation as component. Support for all S08 and all S12(X), ColdFire V1 (CN, JM, QE, JE, and MM families), ColdFire V2 (5225x) and all Kinetis (tested with K40, K60(F), K70/M4F, KL20Z Freedom Board).
Component FreeRTOS.PEupd
Dependencies Utility, FreeRTOSTrace, PercepioTrace

Important Information

Starting January 1st 2013, the latest and greatest versions of components and examples are hosted on GitHub.

A tutorial how to use the FreeRTOS Embedded Processor Expert component is used can be found here: Tutorial: FreeRTOS on DEMOJM

Attention Classic (non-eclipse) Users!

The component has been tested with CodeWarrior for S12(X) V5.1, which is not Eclipse based. The eclipse based CodeWarrior (MCU10.x) is using the concept of an RTOS adapter. The FreeRTOS component has now a setting to disable this. You need to set the setting 'Classic CodeWarrior' to 'yes' in order to have it working in a non-eclipse CodeWarrior environment. Otherwise you will see internal errors during code generation.

Additionally at least the PE 3.09 Service pack needs to be installed. The update is available on http://www.freescale.com/webapp/sps/site/overview.jsp?code=CW_UPDATES_MCU_63, direct link: CodeWarrior for MCU V6.3 Processor Expert V3.09 Update

RTOS adapter settings for classic CodeWarrior


License : Open Source (LGPL)
FreeRTOS (c) Copyright 2003-2012 Richard Barry, http: www.FreeRTOS.org
FreeRTOS Processor Expert Component: (c) Copyright Erich Styger, 2013
Processor Expert and CodeWarrior (c) Copyright Freescale Semiconductor, 2013, all rights reserved
This is a free software and is opened for education, research and commercial developments under license policy of following terms:
* This is a free software and there is NO WARRANTY.
* No restriction on use. You can use, modify and redistribute it for personal, non-profit or commercial product UNDER YOUR RESPONSIBILITY.
* Redistributions of source code must retain the above copyright notice.


Date Version Description
31-Jan-2013 1.203 Updated for IAR. See this post.
18-Dec-2012 1.202 Fix: using a tick timer other than SysTick for ARM/Kinetis was not supported, now the component gives an error message for this. LDD calls to the TickTimer on Kinetis uses now properly the device handle. Implemented M4F (M4 with floating point unit) for gcc compiler.
23-Nov-2012 1.201 Fixed possible hard fault with gcc and higher optimization levels (above -O0) for ARM gcc and Cortex-M0+. New properties to deal with interrupt levels. See http://mcuoneclipse.com/2012/11/25/arm-cortex-m0-interrupts-and-freertos/
26-Sep-2012 1.200 Updated to support different optimization levels (beyond -O0) for ARM gcc and Cortex-M0+.
18-Aug-2012 1.199 Update for FreeRTOS V7.2.0. This new RTOS version supports a new memory scheme 4. It is not possible any more to call vPortFree(). To help with this, the Processor Expert component defines FRTOS_MEMORY_SCHEME to identify the memory scheme used. This is used in the FSShell, so make sure you update it too.
07-Aug-2012 1.198 Fix for Freescale Kinetis K-Family compiler: with optimization level greater than 0 the stack was wrong for vOnCounterRestart() inside portasm.s, causing a hard fault interrtupt.
18-Jul-2012 1.197 Support for ARM gcc compiler (Kinetis-L and Kinetis-K family).
09-Jul-2012 1.196 Fix in uxGetTickCounterValue(): was using wrong type for GetCounterValue().
06-Jun-2012 1.195 Supports gcc compiler and Percepio Trace for Kinetis. Make sure you update as well FreeRTOSTrace.
27-May-2012 1.194 Updated to FreeRTOS V7.1.1. See this post for details.
14-Apr-2012 1.193 Fix for Kinetis: after adding Percepio trace in 1.191/192, the Kinetis port produced code generation errors. Note that the Kinetis port has not been tested with the Percepio Trace yet.
27-Mar-2012 1.192 Fixed a stack problem for ColdFire V2 caused by the change from using a free running counter for the tick counter.
25-Mar-2012 1.191 Changed the tick counter from a periodic timer interrupt to a free running counter for the non-LDD architectures. This is required to use it with the PercepioTrace component. Note that if you have an existing FreeRTOS component in your project, you must assign a new tick counter. You have to assign a timer which modulo up/down counter, with reset on compare.
11-Feb-2012 1.190 Added support for Freescale S12/S12X family of processors, for Banked and Small memory model, for more details see here. Component has a setting to work as well in classic (see note for non-eclipse users). Added for Kinetis a setting to specify the optimization level of the compiler.
03-Jan-2012 1.189 Supporting FreeRTOS 7.1.0 and Cortex-M4F (with floating point support). Extended support for RTOS Adapter API.
23-Nov-2011 1.188 Fixed problem of missing include for Drivers\Sw\RTOSAdaptor\Common_RTOSAdaptor.prg.
15-Nov-2011 1.187 Integrated FreeRTOS 6.0.5, and using safe (no overlow) routines for vTaskGetRuntimeStats().
13-Nov-2011 1.186 First version including support for Kinetis.
02-Nov-2011 1.185 Fixed vTaskEndScheduler() for HCS08, added xTaskResumeFromISR() wrapper.
04-Sep-2011 1.184 Initial release.


Project View

Properties View