Why LPC Selection Deserves Care

An LPC microcontroller runs the control loop, the interfaces and the housekeeping of a product, so its core, memory, peripherals and package decide what the product can do and how it is built. Choosing too small a part limits the firmware, and choosing too large a part wastes cost. This guide walks through a repeatable method for selecting an NXP LPC microcontroller.

Step 1: Choose the Core

The core is chosen from the workload. The Cortex-M0 and M0+ cores are efficient and low-cost, which suits a simple control or a low-power sensor node. The Cortex-M3 is a mainstream core with a full peripheral set, which suits a general control and connectivity application. The Cortex-M4 adds a floating-point unit and a digital-signal-processing instruction set, which speeds up a motor control, a digital filter or a signal-processing task. All three use the same MCUXpresso toolchain, so the skills and much of the code carry across the family.

Clock and Headroom

The clock sets the headroom for the loop. Estimate the cycles the loop needs at the worst case, leave margin for a later feature and confirm the core can meet the deadline at the chosen clock. The LPC1768 runs at 100 MHz, the LPC54606 at 180 MHz and the LPC11U68 at 50 MHz, so the range covers a small control to a high-performance design.

Step 2: Size the Memory

Estimate the flash from the code and the constant tables and the SRAM from the stack, the heap and the buffers, then add headroom. The LPC1768 offers 512 KB of flash and 64 KB of SRAM, the LPC54606 offers 256 KB of flash and 136 KB of SRAM, and the LPC11U68 offers 256 KB of flash and 36 KB of SRAM, so a design can choose by the firmware size and the working space. Where the code grows beyond the on-chip flash, add an external memory or move to a larger part.

Data and Buffers

A communication stack, an audio path or a graphics buffer needs a large SRAM, so confirm the working space against the peak use. Where the buffer is large, the SRAM is often the deciding specification rather than the flash.

Step 3: Match the Peripherals and the Interfaces

Count the peripherals and the interfaces you need and confirm the part provides them. The LPC family includes timers and a PWM, a multi-channel ADC and a DAC, and interfaces such as SPI, I2C, I2S, UART, USB and CAN, and the larger parts add an Ethernet MAC. Choose the part from the interfaces the product must have, such as USB for a peripheral, Ethernet for a networking node and CAN for an industrial bus, and confirm the pin count for the board.

USB, Ethernet and CAN

A USB interface on the MCU removes a separate controller, an Ethernet MAC suits a networking node and a CAN interface suits an industrial bus. Confirm the reference clock and the external components, such as the magnetics for the Ethernet, with the interface.

Step 4: Choose the Package and the Grade

Choose the package from the I/O and the mechanical space, from a small QFN part to a 100-pin LQFP and beyond, and confirm the pin count against the peripheral list. The LPC parts operate over an industrial temperature range, so confirm the grade against the application and check the ESD requirement for the environment.

Step 5: Plan the Software and the Toolchain

Confirm the toolchain, the debug interface and the SDK examples before you commit, because a part without good support wastes engineering time. NXP provides the MCUXpresso environment, the configuration tools and a large library of examples, so a design is quick to start and the code is portable. Plan the structure and the peripherals early and choose the part that covers the whole plan.

Getting Help

If you send your interface list, your code estimate and the mechanical space to our FAE team, we will propose an LPC, help choose the core and the package and review the memory and the interface plan. BeiLuo holds mainstream LPC MCUs in regional stock and ships them with an import declaration, a certificate of origin and a RoHS compliance file, and our engineers will review the choice with you before you commit to production.