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.
But there are ways to get it to the Expert level :-).
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.
But there are ways to get it to the Expert level :-).
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.
And here it is again: a Hard Fault exception raised by the ARM Cortex-M0+ on my Freedom board:
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)!
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:
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.
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:
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.
Question: What makes 8 times ‘beep’, but I cannot hear it?
Answer: My ultrasonic range finder 🙂
What I have added to my FRDM-KL25Z board is an ultrasonic distance sensor, measuring distances up to 4 meters.
Christmas and New Year time is great: Gifts and time to work on my home projects. But this post is not about one gift I have organized for myself: a Raspberry Pi ;-)). No, this post is about a gift I have received from Freescale: a *new* Freedom board, the FRDM-KL05Z :-).
With Processor Expert projects, I have a nice overview of pins used in my application:
While that Processor View is nice, I want a list of pins and signals too:
I have successfully used CodeWarrior for MCU10.3 beta version for many projects. With the advent of the final CodeWarrior for MCU10.3, I want to migrate my existing projects to the new and final version. First: my existing projects work as well in the final version, which is good news. But there are two things to change to take advantage of the final 10.3: