Tutorial: PWM with Processor Expert

For many of my applications I’m using a PWM (Pulse Width Modulated) signal. One example is the motor driver used in this project where I use one PWM signal for each motor. Another usage of PWM is to control the brightness of an LED. Processor Expert makes usage of the PWM hardware easier. Still, for some settings it is good to have the resulting signals in mind. So in this post I’m showing how the settings impact the PWM signal generated.

Continue reading

mbed for the Freedom Board

I knew about mbed already for some time: watching students using it for an NXP enabled board. Pretty cool stuff: mbed is an online IDE and compiler with tons of software libraries for the supported platform. So I was dreaming to have something like this for my own boards like the Freedom board. But because mbed only supported two dedicated NXP boards, that was a road block.

But then mbed announced recently that the mbed SDK is open source. Wow, that is interesting! And finally the announcement last week: mbed supports the KL25Z Freedom Board. Now they have my attention :-).

Continue reading

Pololu Line Following Robot with Freedom Board

Because my first line following robot was this week at the Embedded World conference in Nürnberg, I have constructed another one around the Freedom FRDM-KL25Z board. It is based on Pololu part items and the Arduino motor shield, plus using a Bluetooth module I have used in an ealier post.

Pololu Line Following Robot

Pololu Line Following Robot with FRDM-KL25Z

Continue reading

USB MSD Host for the Freedom Board

Sometimes things take longer than anticipated. And this is definitely the case for my USB MSD Host project where I wanted to use a USB memory stick with the Freedom FRDM-KL25Z board.

Memory Stick attached to the Freedom Board

Memory Stick attached to the Freedom Board

But finally, I have things working. At least most of the time ….

Continue reading

Switching Processor Package in Processor Expert

When I create a new project for the KL05Z with Processor Expert, then it shows up as 48 pin LQFP package in the project:

48pin LQFP Package in Components View

48pin LQFP Package in Components View

However, when I look at my board, it has a KL05Z32 in a LQFP package with 32 pins:

FRDM-KL05Z Board

FRDM-KL05Z Board

Continue reading

Freedom Logic Analyzer with Triggers

The first FRDM-KL25Z Freedom Logic Analyzer firmware was missing one important feature: Triggers! But this weekend the firmware has evolved a bit :-).

Triggers

Trigger Settings

Trigger Settings

Continue reading

DAC Example with the Freedom Board

After working on an ADC example, a DAC one was missing. Julio E. Fajardo is a reader of this blog, and he was so kind to send me an example project for the FRDM-KL25Z. The example is able to produce produce different waveforms with the DAC. The project has two examples which they are enabled/disabled in main(). One example waveform the sawtooth:

Sawtooth_FDRM_DAC

Sawtooth_FDRM_DAC

Continue reading

Skipping Breakpoints

The challenge with small microcontroller like the ARM-Cortex-M0+ is that they have very limited debugging resources. As such, the number of hardware break points is very limited (see this post). For example for the KL25Z on the Freedom board, I only have 2 break points available if I want to do stepping:

No more hardware breakpoints available

No more hardware break points available

Continue reading

Be Aware of the Baud Problem

I’m using serial communication in different flavors for my project: with the shell, with OpenSDA USB CDC, to use printf(), and with the Bluetooth module. Processor Expert is a big helper, but as for any software, it is not bug free. And there is a problem with Processor Expert in CodeWarrior for MCU10.3 in respect with Baud settings for a serial interface.

Probing the Bluetooth Module Serial Connection

Probing the Bluetooth Module Serial Connection

Continue reading