LPC43xx Standard Driver Library

In the previous article I have shown you how to set up the IAR Embedded Workbench project. At the end we got the project that can be compiled for LPC43xx Cortex-M4 core and loaded into the LPC43xx internal RAM.

Now we need to initialize the LPC43xx clocks and peripheral. We don’t want to bother with all the initialization from scratch when NXP provides us with handy high-level functions to do this. These functions are parts of the “LPC43xx CMSIS-Compliant Standard Peripheral Firmware Driver Library”.

For a moment I wrote this article I have found no official way to download the “LPC43xx CMSIS-Compliant Standard Peripheral Firmware Driver Library” from the NXP web site (while you can easily find the similar library for LPC17xx). Probably the library for LCP43xx is not finally released yet. I have found the most recent version of the library at the LPCware web site. It appears under the list of files for LPC43xx microcontrollers - http://www.lpcware.com/file_filter/nxpf/lpc43xx.

The direct link to the LPC43xx CMSIS-Compliant is http://www.lpcware.com/sites/default/files/lpc43xx.zip.

For current tutorial I use the standard peripheral library package that I have downloaded the the Diolan web site - http://www.diolan.com/downloads/lpc4300-demos.zip. This is the same library, but it also has linker scripts and definition headers for LPC4350-DB1 and LPC4357-DB1 development boards. The Diolan package contains a lot of demo applications that we will use in current tutorial.

The library structure is perfectly explained at the www.lpc4350.com web site (in the Software Examples section), so I will not cover it here. I had only added the Tutorials folder and created our first project there:


LPC43xx project In the next article we will use the “LPC43xx CMSIS-Compliant Standard Peripheral Firmware Driver Library” to initialize LPC43xx clocks and interrupt vector table.