Playing with RFID and NFC is definitely fun :-), and they are everywhere! For a research project I’m exploring different RFID tags and solutions. I several types around for a long time, but never found the time to actually work on it, so last nightI thought I give it a try, and I have it working with GNU ARM and Eclipse, powered by the NXP FRDM-K64F board 🙂
This is the third part about ARM Cortex-M and how the interrupts are used. In Part 1 I discussed the Cortex-M interrupt system and in Part 2 I showed nested interrupt examples. This part is about FreeRTOS and how it uses the Cortex-M interrupt system.
Smartwatches are around for a while now. To me it is still questionable how useful the ‘big’ ones for iOS and Android are. But there are definitely the crowd funded smartwatch projects which caught my attention. Maybe it is about the ‘do-anything’ with connectivity? One of these gadgets is Hexiwear: a hackable open source device
While it *could* be a kind of smartwatch, the value of this thing is more that it includes a plethora of sensors with two microcontroller, and I can use Eclipse with GNU tools to build my firmware :-).
Alert: Hackster.io is giving away 100 Hexiwears, but you need to hurry up (submission until July 15th 2016)!
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):
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:
3.5″ Diskette Drives are not widely used any more: CDs, DVDs, memory/thumb drives and downloads from the web are the usual distribution method these days for software. Back a few years ago, software was distributed on one or many 3.5″ diskettes, and even before that time on 5 1/4″ floppy disk drives. So what to do with all these not-used-anymore hardware? Play music with it 🙂
“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:
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 :-).
Dynamic and Static Memory Allocation in FreeRTOS V9.0.0
Time is passing fast, and many components have been updated to make the compatible with the NXP Kinetis SDK V2.0. As a highlight, besides of FreeRTOS the following components are now usable with the NXP Kinetis SDK:
It has been already two months after the Feb 2016 release, and so much things are going on, so a new release was overdue. Today I have released a new version of the McuOnEclipse components on SourceForge with the following main changes and features:
Kinetis SDK v2 with Processor Expert: Now many components can be used even with the Kinetis SDK v2.0 even with the Kinetis SDK not having Processor Expert included.
Updated Segger SystemViewer to v2.32a with post-mortem and static buffer support
Updated Segger RTT to v5.10u and fixed an issue with interrupts on Cortex-M4