In my class at the university I’m using a microcontroller attached to a DC motor from Maxon. The job of the microcontroller is to implement (among other things) a PID controller for the motor speed (or position). In the lab we implement the PID and all the related parts of the control loop without Processor Expert. But it easily can be done as well with Processor Expert components, as described here.
CDE RTOS Hacking: Show it as an RTOS component
Technically, a normal user component can implement any RTOS. This is what I did with the Micrium MicroC/OS-II component. That way the component shows up in the ‘Embedded Components’ group. But how to make it showing up as RTOS component inside the ‘Operating System’ group as the FreeRTOS component? What I want is this: to show the RTOS component under the ‘Operating System’ group of my project:
CDE Hacking: Component Icon
Ah, a lot of work went into a new Processor Expert component, and finally it shows up in the component library:
Oh, wait: *that* icon does not look nice enough for that amount of work behind the component?
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.
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.
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 ;-).
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:
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.
Stop on startup
Occasionally I run into this kind of problem: I have downloaded my application, and it immediately crashes or looses the connection:
What is the problem? It is helpful to understand what happens if I press ‘debug’ in CodeWarrior or any other debugger:
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.



