My journey to the world of ARM processors with LPC1114FN28 – Part 3

In part 2 of this post, I managed to bring the new LPC1114FN28 ARM cortex M0 chip up and running on breadboard using the minimum configuration, I wrote a test program using mbed’s on-line IDE environment and download the compiled code to the chip using Flash Magic.

Now don’t get me wrong, breadboard is nice for trying things out without needing to touch the soldering iron and I use it a lot. But once the circuit is known to be working correctly, I prefer to have it stitched together permanently on a circuit board with solder and copper tracks. I spent too much time troubleshooting problem circuits wondering why it suddenly stopped working, all because some wires came loose or disconnected while I was working on another part of the board. Often, components were destroyed because of the bad connections.

My Dirty PCBs

So I fired up my Eagle PCB CAD, draw up the circuit and designed a small circuit board. Send it to the PCB house, and several weeks later I got this back from them.

I waste no time, I quickly have one made up to see if it works as expected.

The two buttons next to the LPC1114 chip are reset and bootload buttons. The bootload button place the device into bootloading mode. By holding the bootload button while you release the reset button, it will put the device into bootloading mode, then you can use programs like Flash Magic to download the code into the chip’s flash memory.

I also included the FTDI FT232RL USB-to-serial chip so that I can attach the board directly to the computer and have the program download to the chip without having to fiddle around and attach an external USB serial dongle.

The patch wires you see in the picture on the right are not mistakes, they are modifications I made so that when I initiate a download to the device from the computer using Flash Magic, the device will jump into bootloading mode automatically. New version of the board I make will no longer need to press both the bootload and reset buttons to put the device into bootloading mode. In fact, new version of the board will only have the reset button, the rest is done automatically just like it on the Arduino board.

In next part of the post, I’ll show you my latest version of the circuit board with the automatic bootloading feature.