Show me your files, lib!

Getting to the details is my natural engineering passion, see memory is everything. The same applies for building my embedded application: you should know what you pack into your binary file.

One aspect of this are the libraries. The linker does the heavy lifting, but still I want to know the details, right? In CodeWarrior for MCU, things are a little bit different for the 8/16bit tools (HCS08 and RS08) compared to Kinetis, ColdFire, DSC and Qorivva: the format for the libraries is not the archive (*.a) format. Therefore, I cannot use the usual command line tools like readelf, objdump or elfdump available in the GNU Binutils to inspect the libraries. The good news is: there are other good ways to get the information I need :-).
Continue reading

Go, assembly, go!

As mentioned in my post about the memory view:  I want to go down to the bits and bytes. Same applies to programming: I want to get down to the assembly instruction level, the heavy metal world :-).

Although it sounds a little bit weird in the age of object-oriented programming and C++, but sometimes I need to do ‘assembly level only’ programming on a 32bit controller too. CodeWarrior for MCU offers assembly only project creation for all the 8bit microprocessors, but for the 32bit including the ColdFire it assumes that the usual way is to use C and C++? Yes, it offers C and C++ and you can add assembly files. But how to do assembly only?
Continue reading

Memory is everything

Question: How can you distinguish an embedded programmer from a non-embedded programmer just by looking at his debugger?

Answer: The embedded programmer has at least one Memory View open, while the non-embedded programmer probably does not care.

Memory View in CodeWarrior for MCU

Memory View in CodeWarrior for MCU

Well, this is maybe a too simplistic answer, but I think it has some truth. An embedded system programmer cares a lot about the memory of his system, and so do I. My post on flash programming was the aspect of permanently programming the memory. This one is is about RAM and Flash.
Continue reading

Color makes the difference!

Demonstrating software and tools for a smaller or larger audience is always a challenge. What looks good directly in front of your screen might not get the same attention if projected on a wall. Especially if you are browsing through the source code and you need the audience to follow this. What I have found very useful in CodeWarrior is the ability to configure it using colors. One thing I have configured is to show the current line in a different color:

Highlighted source line in CodeWarrior

Continue reading

Hello World!

Welcome to the “MCU on Eclipse” blog!

Hello World‘ seems indeed a good headline for this first entry. Even if I consider a printf(“Hello World!”) not as something you should use as a first baby step in an embedded project: printf() has many better alternatives. But this is the ‘hello’ to the big world outside.
Continue reading