Major changes in this new release:
- FreeRTOS V9.0.0 with static memory allocation.
- Shell with single character I/O function.
- FatFS File System with extra shell commands for memory dump and file creation.
- Segger SystemViewer library updated to V2.36a
Major changes in this new release:
I’m using FreeRTOS in most of my applications. There were only a few exceptions where an RTOS has to be used in safety critical systems: there usually it is not permitted to use any dynamic memory allocation because this adds the risk that a memory allocation could fail at runtime because of memory fragmentation or memory leak. And FreeRTOS uses a dynamic memory (heap) for the task stacks and the RTOS resources including semaphore, mutex and queues.
This is now a thing of the past. This week a new FreeRTOS Version 9 was released which does not need any dynamic memory allocation anymore: it is possible now to build completely statically allocated systems with FreeRTOS :-).
The Schwanau is a little island in Lake Lauerz. It is occupied by a ruined castle, a chapel and a restaurant:
Sometimes it is very useful to clean or build a selected set of files. For this I select the file(s) in the Eclipse Project Explorer and use the context menu:
Eclipse has a cool feature which might not be known to everyone: the ‘To-Do’ (or Tasks) List which keeps track of what I have to do:
While hiking outside to get some sunlight (see “Daylight beating my Jetlag“), I saw on my way one of the rare Cypripedium Calceolus. They are known here as ‘Gelber Frauenschuh’ or ‘Lady’s-Slipper Orchid):
Air travel and especially across many time zones is no fun. I returned from the NXP FTF conference in Austin, Texas. Travelling to the west works pretty good, but travelling east is a beast.
My best tip beating timezone tiredness is to get out and tank as much sunlight as I can after. It has been a beautiful day today, I got a lot of sunlight, so here is a share of that:
The challenge with the selection of a microcontroller for a project is: which one has the required number of UART, I2C, SPI? Combine this with the desired package (48pins, 64pins? LQFN?), the needed FLASH and RAM size and then even the hundreds of available microcontroller shrink to a handful only. And many times I need to make compromises: such as I need two hardware I2C, but the microcontroller matching all my other needs has only one I2C hardware. So I might end up with bit-banging the slower I2C bus. Doable, but not ideal.
What is cool that some of the newer NXP Kinetis microcontroller come with an interesting hardware: FlexIO. A peripheral hardware which allows me to implement a custom protocol, including driving WS2812B (Adafruit NeoPixel) LEDs with a FRDM-KL43Z board:
In “Tutorial: Blinky with NXP Kinetis SDK V2.0 and Processor Expert” I used Processor Expert components with the NXP Kinetis SDK to blink some LEDs. This tutorial extends the earlier project and adds FreeRTOS.
In “Mother of Components: Processor Expert with NXP Kinetis SDK V2.0 Projects” I presented an approach how to use Processor Expert components with the NXP Kinetis SDK. This article is a tutorial how to create a blinking LED project with that approach, using McuOnEclipse Processor Expert components and the Kinetis SDK V2.0. As board the FRDM-K22F is used: