One of the major benefits of Processor Expert is that I can easily switch the device or processor used in a project. For example I can do my concept with a larger device with more FLASH and RAM, and then at the end easily switch to a smaller or even completely different device very quickly. For example I have a project working with the 64KByte FLASH version of the KE02Z (KE02Z68VLH2):
Tag Archives: Freescale
First steps: ARM Cortex-M7 and FreeRTOS on NXP TWR-KV58F220M
For a university research project I need a fast microcontroller with lots of RAM and FLASH memory. I have ordered a TWR-KV58F220M board from NXP which arrived yesterday. The special thing is that it has on of these new ARM Cortex-M7F on it:
Swiss Army Knife of Terminal Program for Serial Bootloaders
A bootloader shall be small and concise. I very much like bootloaders which do not need a ‘special’ program on the host, so I prefer a simple terminal for this. While porting my serial bootloader to the NXP FRDM-K64F board, I have found RealTerm which offers a lot of cool features:
Segger J-Link OpenSDA Firmware with Virtual MSD
Sometimes it is very convenient to load a new firmware to a board without the need for a hardware debugger. This is usually done with a bootloader. The NXP Freedom and Tower evaluation boards have on-board debug device/microcontroller (OpenSDA) which can load different firmware implementations like CMSIS-DAP/mbed, P&E Multilink or a Segger J-Link OpenSDA applications. Both mbed and P&E implemenations support to program the board with drag&drop: simply send a file to a virtual MSD (Mass Storage Device) to get it programmed. The latest Segger OpenSDA firmware has this ability added now too: Programming the board with a virtual MSD device:
A Flying UAV Drone Full of Sensors
One goal of this blog is to inspire engineers, in one way or another. And when I get reports back that things were useful, I like to share it :-).
So here is something what a team of young undergraduates (Przemyslaw Brudny, Marek Ulita, Maciej Olejnik) did for theirs Master Thesis work at the Politechnika Wroclawska, Poland: a very cool flying machine controlled by two Kinetis K66, having many sensors (on own designed boards) with a custom debug/programmer board similar to the tinyK20, developed with the NXP Kinetis Design Studio:
INTRO FS2016 Semester Closing with Robot Maze Challenge
“Learning-by-doing” is one of the core principles of my embedded systems and robotics course at the Lucerne University. For this the students apply what they learned using a robotics platform. In earlier semesters we did a Sumo battle at the end. This time the challenge was to build a remote controller plus to add the ability to explore and solve a line maze:
McuOnEclipse Components: 29-May-2016 Release
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
FreeRTOS V9.0.0 with Static Memory Allocation
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 :-).
NXP FlexIO Generator for the WS2812B LED Stripe Protocol
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:
Tutorial: FreeRTOS with NXP Kinetis SDK V2.0 and Processor Expert
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.








