Tutorial: IAR + FreeRTOS + Freedom Board

Maybe Eclipse is ‘too much’, and you are looking for something different? The cool thing with Processor Expert is that while this is Eclipse based, you can use it easily with other tool chains like IAR Embedded Workbench. So you have the choice, and I have explored things a little with porting FreeRTOS for Cortex-M0+ to IAR :-).

IAR Embedded Workbench with FreeRTOS

IAR Embedded Workbench with FreeRTOS

In this tutorial I’m showing how use IAR with FreeRTOS and the Freedom FRDM-KL25Z Board, using Processor Expert components.

Continue reading

Advertisements

The Freedom Zumo Robot

The cool thing with the Freedom board is: there are many exciting Arduino boards out there which want to be used with the FRDM-KL25Z. I have spent most of my last week-end with creating a little black beauty:

FRDM Zumo Robot

FRDM Zumo Robot

Continue reading

Eclipse Spell Checker

One of the nice things of modern IDE’s are: they offer many extras for free. Many times it is related to programming and coding. But I love as well the ones which makes things easier and better which is not directly related to the executed code. One thing Eclipse offers is an on-the-fly spell-checking, similar to Microsoft Word:

Spellchecked Sources

Spellchecked Sources

Hovering over the text offers me to correct the flagged error:

Initialization vs. Initialisation

Initialization vs. Initialisation

But wait: is that example not spelled correctly?

Continue reading

Enabling the Expert Level in Processor Expert

Processor Expert in Eclipse and CodeWarrior is cool thing, and acts as the ‘expert’ for anything around the microcontroller used. But by default, it is acting in the ‘Basic’ level only.

Component Inspector Levels

Component Inspector Levels

But there are ways to get it to the Expert level :-).

Continue reading

Live View for Variables and Memory

Debugging is usually a ‘stop-inspect-continue’ process. That does not work very well for watching a system which continuously changes its state. For this usually I toggle an LED, or write things to the console to watch with a human eye what is going on. But there is something very powerful in the CodeWarrior debugger too: to display variables and memory content while the target is running.

Variable Live View

Variable Live View

Continue reading

Back to Basic(s) with the Freedom Board

If you think that my LED tutorial is too complicated to program a simple LED, then this article might be of interest for you. Because there is an easy and basic way: And I mean it: really basic. And the name is the program(ming language) ;-).

One of my very first contact with computers was the Commodore C64: this was a very successful home computer system back in the 1980’s: a 8bit machine with 64 KByte of RAM and a built-in Basic Interpreter in ROM:

Commodore C64 Startup Screen

Continue reading

First Steps with Avnet’s Wi-Go Board

It is already two weeks into 2013, and not to late to mention Christmas: I have received another gift :-). It did not make it for Christmas itself: Because of the overloaded postal service and because the Swiss customs wanted to deeply inspect the board (they probably wanted to try the board too 😉 ). So it had it finally in my hands last week: The Avnet Wi-Go Board:

Avnet Wi-Go Board

Avnet Wi-Go Board

Continue reading

Debugging ARM Cortex-M0+ Hard Fault with MTB Trace

And here it is again: a Hard Fault exception raised by the ARM Cortex-M0+ on my Freedom board:

Hard Fault in Debug View

Hard Fault in Debug View

A reason for hard faults are for example dereferencing a NULL pointer. The issue with the ARM Cortex hard fault exception stack is: it is not easy to find out where in the code the problem is.I have created a Processor Expert component to help me to find the location of such an exception. With the Eclipse based CodeWarrior for MCU10.3 there is another way: Trace with the MTB (Micro Trace Buffer)!

Continue reading

Reducing the build time with gcc for ARM and CodeWarrior

Eclipse based CodeWarrior for MCU10.3 comes with gcc build tools for Kinetis/ARM cores. While it features the parallel build make, I noticed that especially for larger projects build times are not as fast as it should be. The good news is: I was able to cut down my build time to less than half with a simple change :-).

When I looked at the output folder where all the object and make files are stored by Eclipse, I noticed that it has as well the listing files generated:

Listing Files in output folder

Listing Files in output folder

Continue reading

Resolving Processor Expert Bogus Errors

Some times, especially after making some clock/timing changes in Processor Expert, I have an error showing up in the Processor Expert components:

Processor Expert Components with Errors

Processor Expert Components with Errors

Many times Processor Expert is right. But not always: It is possible that Processor Expert is stuck on the error, and there seems no way out. But there is a trick to resolve it….

Continue reading

McuOnEclipse goes Git

When I have asked by a student last year if I’m uing Git, I said “Git what?”. Yep, a shame I did not know what Git was a this time. But it is never to late to learn new things.

I was coming from CVS, moved to the successor of it (SVN) and was happy with it. Especially with having a local SVN server and repository, that was (and still is) a great thing. But to truely collaborate with a worldwide community, it is time to use something different: Git.

GitHub Bootcamp: 4 simple steps to git

GitHub Bootcamp: 4 simple steps to git

Continue reading

Free Static Code Analysis with Eclipse

I know for myself: the earlier I’m able to fix a bug, the better. So I’m always grateful for things which help me to find issues in my sources as early in the development process as possible. Eclipse and CodeWarrior already help me to find syntax errors in my code while I’m typing:

Eclipse highlighting syntax error

Eclipse highlighting syntax error

With the built-in syntax checker of Eclipse, this helps me many times to get things right without the need to build my code with the compiler. But when I’m able to compile successfully my code, this does not mean it is without bugs. It would be good to catch as many errors *before* downloading and running it on the target.

Continue reading

The Freedom Robot

I have the Arduino Motor Shield working, the Ultrasonic module is pinging around, Christmas brought some small DC toy motors, and a bag of plastic gears is on my desk. All the good ingredients for a small robot: the Freedom Robot!

❗ Warning: Multiple Coke bottles have  been destroyed, and a FRDM box got hurt during his experiment! 😯 Do not try yourself if you cannot handle it.:-)

Smile

Smile

Continue reading

Tutorial: Ultrasonic Ranging with the Freedom Board

Question: What makes 8 times ‘beep’, but I cannot hear it?

Answer: My ultrasonic range finder 🙂

FRDM-KL25Z with HC-SR04

FRDM-KL25Z with HC-SR04

What I have added to my FRDM-KL25Z board is an ultrasonic distance sensor, measuring distances up to 4 meters.

Continue reading