The LPC11uxx microcontrollers are entry-level 32 bit cortex-m0 microcontrollers with integrated support for USB. A 32-bit cortex-M0 clocked at up to 50MHz is a nice step up from the traditional 8-bit and 16-bit microcontrollers, but as an entry-level chip it is still very accessible for beginners: it is low cost and there are not too many peripherals to setup.
The purpose of this guide is to document the steps required to get started on this platform from scratch, using just a few open-source tools.
A PCB with an LPC11uxx microcontroller, an LED and a JTAG/SWD connector. You can build one yourself, but if you want to get started quickly, we recommend getting a development board such as the LPCXpresso board
Debugging hardware to get your code on the microcontroller. We advise the Black Magic Probe, as it is easy to work with and requires no software dependencies (just gdb). The Black Magic Probe itself is open source, sou you could build one yourself if you want to.
A computer with some free USB ports. This guide assumes you are running linux or MacOS.
Gnu Arm Embedded Toolchain: this is a set of open-source tools including the gcc compiler and gdb debugger, specialized for embedded Arm cortex processors.
Build your own blinky project from scratch and understand what is happening with the help of our tutorial.
Each part of the tutorials result in a working blinky project. All projects (and also this website itself) can be found in the blinky_lpc11uxx repository. If you see room for improvement on the code or tutorials, feel free to contribute on Github.