CDE Hacking: *.inc Files

In my previous post  I mentioned the Drivers\Common folder which has ‘include’ files. These files are maintained automatically by the Component Wizard. But what is the purpose of these files?

The Common Folder has *.inc files which are included in the driver as ‘function’ header. The .inc file contains documentation about the function and parameters for that function.

Continue reading

Advertisements

CDE Hacking: Where is my stuff? A dissection…

What I describe here is an overview about the different locations, folder and files you will see if you are importing or developing a Processor Expert User component. I’m showing below example screenshot for the FreeRTOS component, as this is probably the most complex one I ever have created.

Continue reading

The Making Of RTOS Processor Expert Components

OK, I think this topic is a very special one, and probably not of interest of many folks out there. Or how many want to create a Processor Expert Plugin for an RTOS? Well, I did this. And I think that topic might be very controversial too, especially for all the RTOS vendors out there :-). The thoughts expressed here about creating Processor Expert components do not only apply for an RTOS, but as well for any other ‘complex’ software or stack. So if you are interested about the ‘behind the scenes’ of creating Processor Expert components, especially in the context of an RTOS, then read on ;-).

Continue reading

Eclipse Folding

No, this is not about how to fold Eclipse: it is about the Folding feature of the Eclipse editor view. My source files tend to get much larger than a single screen page. The Eclipse framework comes with many great editor and navigation features, but it would be great to have the amount of information reduced. Well, it can look like this:

Source file with source folding

Source file with source folding

Continue reading

Tutorial: FreeRTOS on DEMOJM

If you are new to Processor Expert in MCU10, and new to FreeRTOS, then you need to learn two new things in parallel the same time. That might be overwhelming. But don’t worry: if you do things step by step and slowly the first time, this much easier than you might think. This tutorial shall help you with this.

This is a step-by-step tutorial about how to create a project with CodeWarrior for MCU10.2, Processor Expert and the DEMOJM board. The goal is to create a project from scratch with two tasks blinking an LED. This tutorial uses the DEMOJM board, but in practice any other ColdFire/Kinetis/S08 board can be used as well.

Continue reading

5 Best Eclipse Plugins: #1 (Eclox with Doxygen, Graphviz and Mscgen)

The #1 award in my list goes to Eclox+Doxygen+Graphviz+Mscgen. Yes, it is a single Eclipse plugin (Eclox) for Doxygen, and with two other powerful tools.  It solves a typical engineering problem: “How to document my project? And how to keep it up-to-date?”.

Like many other engineers, I do not like to write documentation. Because it is painful. I want to write code and program. Writing documentation for it should be fun too. And it should solve the problem that the documentation does not match what has been implemented. I’m a big fan of the ‘single source’ concept: information has to be in a single place, and not copied and distributed among different places. And here my #1 helps me doing this.

Continue reading

Eclipse Local History & Quick Diff

I worked long hours on my project, and it was working well. But after a series of edits, somehow the application was not working the way it should. What did I change to break my code? Usually I smile, because I have things in a version control system. But: not this time (I should know better!). Luckily there are some ways to find out what has been changed: with the Local History and Quick Diff.

Continue reading

Bracketeer: the ultimate bracket plugin

If you are like me, then it is easy to miss a bracket or two in my source code. Or I have tons of closing brackets at the end of a function, and it is hard to tell which one is which? Eclipse comes with basic bracket support: you select/click a bracket, and it helps you to find the closing one. I was pretty happy about that, unless I saw a list of most popular Eclipse plugin. One plugin stood out of the masses in the Top 10 Most Popular New Eclipse Plugins review: Bracketeer. That plugin exactly helps me to solve my problem: which bracket is which?

Brackets

Brackets

It would be really cool to know to which code block each ‘}’ belongs. And Bracketeer can do this for me!

Continue reading

Uninstalling Eclipse Plugins

Installation of Eclipse plugins is really ease: I use the menu Help > Install New Software, point to the update site and I have it installed. Uninstallation of a plugin is not that obvious. Not sure why it is so hidden, and yes, I rarely need to uninstall a plugin. But from time to time I try out a new plugin, and if it does not fit my needs, I want to get it removed. How to uninstall it?

Continue reading

Percepio FreeRTOS+Trace V2.2.2 released

Percepio has released a new V2.2.2 library of FreeRTOS+Trace (see Tracing with FreeRTOS+Trace from Percepio). The new release comes with many improvements. The trace recording is optimized for more efficient recording and longer trace with the same amount of memory.

Note: Because the trace data structure is changed and optimized, I need the latest tool on the PC/host from http://www.percepio.se/index.php?page=downloads.

I have updated the Percepio Processor Expert component to generate and use the new trace library V2.2.2. This includes the new settings in the component properties as shown below:
Continue reading

Killing Me Softly: Zombies and Debugger Engines

I’m stressing the CodeWarrior debugger a lot: having multiple boards attached, debugging things in parallel, switching and unplugging boards all the time. I have my eclipse IDE running for several days and nights (up to a week or more), with constantly suspending and resuming and switching networks. And sometimes it is my fault (see Device is Secure?). But well, sometimes the CodeWarrior debugger has a problem too. Luckily, a simple trick gets things back on track.

Continue reading