The Eclipse IDE is in my view the best IDE in the world :-). But it is not the fastest one: All the functionality and comfort has a price, and such a Java and highly flexible IDE requires its resources. The Eclipse community is continuously addressing that concern, and for example the Eclipse Juno 4.2 IDE in CodeWarrior for MCU10.5 shows this nicely: things are much smoother compared to the Eclipse Indigo 3.7 in MCU10.4. But if you feel that you do not want to use Processor Expert because it is too slow, then I have a trick how to improve performance by a factor of 10 :-).
Category Archives: Embedded Components
Optimized FreeRTOS: Stack Check and SysTick for ARM Cortex Cores
The ARM Cortex specification includes the ‘SysTick’ (System Tick Timer): a dedicated system timer which is intended to be used as time base for an RTOS. While technically it would be possible to use any periodic interrupt timer, I’m using as well the SysTick for my FreeRTOS ARM ports. And because Processor Expert includes a nice timer interface, I’m using the TimerUnit_LDD:
While this is great for flexibility, it has its price in efficiency. That TimerUnit_LDD adds overhead. So I want to get rid of the TimerUnit_LDD and use a more efficient way.
Continue reading
USB for the Freescale ARM Kinetis KL46Z and K21D50M
As I was so pleased with the FRDM-KL46Z board, that I have ordered the Tower version of it, the TWR-KL46Z48M:
What I missed so far was USB support for the KL46Z. So time to have a quick look at board(s) and to add USB support for it.
Driver for Microchip 24xx Serial EEPROM
For many projects I need to store configuration or sensor data. For this I’m using either an SD card or program the internal flash memory of the microcontroller. Using the internal flash is a good thing as it does not need an external component. However, the typical number of programming cycles is limited to 10k-50k which is a limiting factor if data has to be recorded over a long time or very often. That’s why I’m using the very popular external 24xx external EEPROM devices from Microchip.
Device Driver for Freescale MAG3110 Digital Magnetometer
One of the ‘goodies’ of the FRDM-KL46Z is the Freescale MAG3110 magnetometer. The MAG3110 is a tiny 2×2 mm device:
What was missing so far is a Processor Expert component for it. This post is about closing this gap…
A new Freedom Board: FRDM-KL46Z
Freescale has added a new Freedom board: the FRDM-KL46Z:
My opinion? The best Freedom board so far, I love it!
DIY Free Toolchain for Kinetis: Part 5 – FreeRTOS Eclipse Kernel Awareness with GDB
So far I have covered in this tutorial series how to install ARM GNU gcc, adding Eclipse, followed by adding GNU GDB debugger, and then adding Processor Expert. I’m using FreeRTOS a lot in my projects, and luckily there is a Kernel Awareness Plugin available for FreeRTOS for GDB in Eclipse. This tutorial is about how to install and use it.
DIY Free Toolchain for Kinetis: Part 4 – Processor Expert for Eclipse
I covered in a previous tutorial how add ARM gcc to Kepler Eclipse to build a DYI toolchain. I’m using Processor Expert a *lot* in my project, because it simplifies and speeds up the development of my embedded applications. What is missing so far is how Processor Expert can be added to Eclipse. As Kepler is as of this writing the latest Eclipse version, this tutorial is using that version.
❗ Eclipse Luna is *NOT* supported in Processor Expert 10.4! Eclipse Luna is expected to be supported in Processor Expert 10.5 coming out in 2015! So if you are using Processor Expert 10.4, then make sure you are using Eclipse Kepler.
Using the FRDM-KL25Z as a USB Mouse Device
I finally completed my project turning the FRDM-KL25Z board into a USB mouse device :-). The form factor and the capabilities of the Freedom board makes it a great board for implementing it as a ‘custom mouse’. All what I need is the USB stack running on it and have it acting as USB HID Mouse device.
FreeRTOS V7.5.0 released
A week ago, the updated FreeRTOS V7.5.0 has been released on FreeRTOS.org. So time to have my Processor Expert FreeRTOS component updated as well :-).








