This blog has permanently moved to

Contact Form | Email Address

© 2018 All rights reserved by Boseji

Thank you for all your support.

Sunday, July 6, 2014

LPC810: The little wonder of the ARM world of Microcontrollers

UPDATE 31st July 2014: There has been an issue our only Windows XP laptop has now crashed! So we have no other choice but have this post re-documented for Linux only.

We came across the LPC800 series of microcontroller from NXP. Actually it was an unused board lying in our closet of dev-boards. This is the NGX LPC800 Mini Kit. This board was a limited edition low cost kit part of the marketing campaign of LPC800 microcontrollers. Although there are much better boards to work with LPC800 we chose what we already had to try out this tiny ARM Cortex M0+ chip.
Image Courtesy lpcware.com
This is a nice tiny board with basic features to get started on LPC800. One thing that attracts us is the small PDIP package of the LPC810 microcontorller, more technically called as LPC810M021FN8. That's the exact part name of this chip if you would ever like to sample some from NXP.
On this board we have two buttons - one for Reset and another for ISP entery. Even though this board can be loaded with the LPC-Link or LPC-Link2 etc debuggers we prefer to use the cheaper route using a friendly USB-2-Serial adapters that we buy off ebay and Flash Magic tool. Although this would be a windows centric tutorial we would also provide a Linux alternative for this later, since that's our base system. For us we have been using windows under Virtual Box for some of the windows centric tools. The main problem with this board is that the LED that the board has is connected to the SWDIO pin which is used for debugging. This was the point we decided to do away with the debugger. Another important thing to note is that this board does not have a crystal on-board so the on-chip crystal oscillator needs to be used, this has implication in code we would discuss later. Lets have a quick look whats inside LPC800:
Image Courtesy lpcware.com
Well lets get started in our usual step by step way of running our first code on this microcontroller.

[1] Getting the Setup on Windows

First we would need to following to be downloaded:
Looks to be a long list of things, well this is much simpler than reading the complete datasheet and co-relating the User manual.

[2] Setting up the Environment

We would keep adding more as we go ...