NXP LPC

LPC is a family of 32-bit microcontroller integrated circuits by NXP Semiconductors (formerly Philips Semiconductors).[1] The LPC chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals. The earliest LPC series were based on the Intel 8-bit 80C51 core.[2] As of February 2011, NXP had shipped over one billion ARM processor-based chips.[3]

NXP LPC1114 in 33-pin HVQFN package and LPC1343 in 48-pin LQFP package.

Overview

Main articles: ARM architecture and ARM Cortex-M

All recent LPC families are based on ARM cores, which NXP Semiconductors licenses from ARM Holdings, then adds their own peripherals before converting the design into a silicon die. NXP is the only vendor shipping an ARM Cortex-M core in a DIP package: LPC810 in DIP8 (0.3-inch width) and LPC1114 in DIP28 (0.6-inch width). The following tables summarize the NXP LPC microcontroller families.

ARM Cortex-M Families
NXP Series ARM CPU Core
LPC4300
Cortex-M4F
& Cortex-M0
LPC4000
Cortex-M4F [4]
LPC1800
LPC1700
LPC1300
Cortex-M3 [5]
LPC1200
LPC1100
Cortex-M0 [6]
LPC1100
LPC800
Cortex-M0+ [7]

ARM9 Families
NXP Series ARM CPU Core
LPC3200
LPC3100
ARM926EJ-S [8]
LPC2900
ARM968E-S [9]
ARM7 Families
NXP Series ARM CPU Core
LPC2400
LPC2300
LPC2200
LPC2100
ARM7TDMI-S [10]

Legacy Families
NXP Series CPU Core
LPC900
LPC700
80C51

History

LPC4000 series

LPC4000 Family[41]
Produced Current
Max. CPU clock rate 120  to 204 MHz
Instruction set Thumb, Thumb-2,
Sat Math, DSP, FPU
Microarchitecture ARM Cortex-M4F[4]
ARM Cortex-M0[6]
LPC 4330-based development board from German manufacturer Hitex

The LPC4xxx series are based on the ARM Cortex-M4F core.

LPC4300

The LPC4300 series have two or three ARM cores, one ARM Cortex-M4F and one or two ARM Cortex-M0. The LPC4350 chips are pin-compatible with the LPC1850 chips. The LPC4330-Xplorer development board is available from NXP. The summary for this series is:[26][42][43]

LPC4000

The LPC4000 series are based on the single ARM Cortex-M4F processor core. The LPC408x chips are pin-compatible with the LPC178x chips. The summary for this series is:[33][44]

LPC3000 series

LPC3000 Family[45]
Produced Current
Max. CPU clock rate to 266 MHz
Instruction set Thumb, ARM
Microarchitecture ARM9

The LPC3xxx series are based on the ARM926EJ-S core.

LPC3200

The LPC3200 series are based on the ARM926EJ-S processor core.[15][46]

LPC3100

The LPC3100 series are based on the ARM926EJ-S processor core.[47] The LPC3154 is used by NXP to implement the LPC-Link debugger on all LPCXpresso boards.[48][49] The LPC3180 core operates up to 208 MHz, and features interfaces for SDRAM, USB 2.0 full-speed, NAND flash, Secure Digital (SD) and I²C.

LPC2000 series

LPC2000 Family[45][50]
Produced Current
Max. CPU clock rate to 72 MHz
Instruction set Thumb, ARM
Microarchitecture ARM7, ARM9

LPC2000 is a series based on a 1.8-volt ARM7TDMI-S core operating at up to 80 MHz together with a variety of peripherals including serial interfaces, 10-bit ADC/DAC, timers, capture compare, PWM, USB interface, and external bus options. Flash memory ranges from 32 kB to 512 kB; RAM ranges from 4 kB to 96 kB.

NXP has two related series without the LPC name, the LH7 series are based on the ARM7TDMI-S and ARM720T cores,[51] and the LH7A series are based on the ARM9TDMI core.[52]

LPC2900

The LPC2900 series are based on the ARM968E-S processor core.[13][53]

LPC2400

The LPC2400 series are based on the ARM7TDMI-S processor core.[12][54]

LPC2300

The LPC2300 series are based on the ARM7TDMI-S processor core.[12][55] The LPC2364/66/68 and the LPC2378 are full-speed USB 2.0 devices with 2 CAN interfaces and 10/100 Ethernet MAC in LQFP100 and LQFP144 packages. Multiple peripherals are supported including a 10-bit 8-channel ADC and a 10-bit DAC.

LPC2200

The LPC2200 series are based on the ARM7TDMI-S processor core.[56]

LPC2100

The LPC2100 series are based on the ARM7TDMI-S processor core.[57] The LPC2141, LPC2142, LPC2144, LPC2146, and LPC2148 are full-speed USB 2.0 devices in LQFP64 packages. Multiple peripherals are supported including one or two 10-bit ADCs and an optional 10-bit DAC.

LPC1000 series

LPC1000 Family[58][59]
Produced Current
Max. CPU clock rate 30  to 180 MHz
Instruction set Thumb, Thumb-2
Microarchitecture ARM Cortex-M3[5]
ARM Cortex-M0[6]
mbed with NXP LPC1768

The NXP LPC1000 family consists of five series of microcontrollers: LPC1800, LPC1700, LPC1300, LPC1200, LPC1100. The LPC1800, LPC1700, LPC1300 series are based on the Cortex-M3 ARM processor core.[58] The LPC1200 and LPC1100 are based on the Cortex-M0 ARM processor core.[59]

LPC1800

The NXP LPC1800-series are based on the ARM Cortex-M3 core.[22][60] The LPC1850 is pin-compatible with the LPC4350 parts. The available packages are TBGA100, LQFP144, BGA180, LQFP208, BGA256. The LPC4330-Xplorer development board is available from NXP.

The Apple M7 and M8 motion co-processor chips are most likely based on the LPC1800 series, as LPC18A1 and LPC18B1.

LPC1700

The NXP LPC1700-series are based on the ARM Cortex-M3 core.[16][61] The LPC178x is pin-compatible with the LPC408x parts. The available packages are LQFP80, LQFP100, TFBGA100, LQFP144, TFBGA180, LQFP208, TFBGA208. The LPC1769-LPCXpresso development board is available from NXP. The mbed LPC1768 board is also available. With EmCrafts LPC-LNX-EVB a LPC1788 based board with μClinux is available.[62]

LPC1300

The NXP LPC1300-series are based on the ARM Cortex-M3 core.[18][63] The available packages are HVQFN33, LQFP48, LQFP64. The LPC1343-LPCXpresso and LPC1347-LPCXpresso development board are available from NXP.

LPC1200

The NXP LPC1200-family are based on the ARM Cortex-M0 core. It consists of 2 series: LPC1200, LPC12D00.[23][64][65] The available packages are LQFP48, LQFP64, LQFP100. The LPC1227-LPCXpresso development board is available from NXP.

LPC1100

The NXP LPC1100-family are based on the ARM Cortex-M0 core. It consists of 8 series: LPC1100 Miniature, LPC1100(X)L, LPC1100LV, LPC11A00, LPC11C00, LPC11D00, LPC11E00, LPC11U00.

LPC1100 Miniature

The LPC1100 series primarily targets an ultra tiny footprint. The available package is WLCSP16 (2.17 mm x 2.32 mm).[21][66] The LPC1104-LPCXpresso development board is available from NXP.

LPC1100(X)L

The LPC1100(X)L-series consists of three subseries: LPC111x, LPC111xL, and LPC111xXL. The LPC111xL and LPC111xXL include the power profiles, a windowed watchdog timer, and a configurable open-drain mode. The LPC1110XL adds a Non-Maskable Interrupt (NMI) and 256-byte page flash erase function. The LPC1114-LPCXpresso and LPC1115-LPCXpresso development board are available from NXP. The summary for these series are:[28][67]

LPC1100LV

The LPC1100LV series primarily targets a low operating voltage range of 1.65 to 1.95 volt power. Its I²C is limited to 400 kHz. It is available in two power supply options: A 1.8 volt single power supply (WLCSP25 and HVQFN24 packages), or 1.8 volt (core) / 3.3 volt (IO/analog) dual power supply with 5 volt tolerant I/O (HVQFN33 package). The available packages are WLCSP25 (2.17 mm × 2.32 mm), HVQFN24 and HVQFN33.[27][68]

LPC11A00

The LPC11A00 series primarily targets analog features, such as: 10-bit ADC, 10-bit DAC, analog comparators, analog voltage reference, temperature sensor, EEPROM memory. The available packages are WLCSP20 (2.5 mm x 2.5 mm), HVQFN33 (5 mm x 5 mm), HVQFN33 (7 mm x 7 mm), LQFP48.[31][69]

LPC11C00

The LPC11C00 series primarily targets CAN bus features, such as: one MCAN controller, and the LPC11C22 and LPC11C24 parts include an on-chip high-speed CAN transceiver. The available package is LQFP48.[32][70] The LPC11C24-LPCXpresso development board is available from NXP.

LPC11D00

The LPC11D00 series primarily targets LCD display features, such as: 4 x 40 segment LCD driver. The available package is LQFP100.[25][71]

LPC11E00

The LPC11E00 series primarily targets EEPROM memory and Smart Card features.[28][72]

LPC11U00

The LPC11U00 series primarily targets USB features, such as: USB 2.0 full-speed controller. It's the first Cortex-M0 with integrated drivers in ROM. This series is pin-compatible with the LPC134x series.[24][73] The LPC11U14-LPCXpresso development board is available from NXP. The mbed LPC11U24 board is also available.

LPC800 series

LPC800 Family [74]
Produced From 2012 to Current
Max. CPU clock rate 30 MHz
Instruction set Thumb subset,
Thumb-2 subset
Microarchitecture ARM Cortex-M0+ [7]

LPC800

The NXP LPC800 microcontroller family are based on the Cortex-M0+ ARM processor core. Unique features include a pin switch matrix, state configurable timer, clockless wake-up controller, single-cycle GPIO, DIP8 package. The LPC812-LPCXpresso development board is available from NXP. The summary for this series is:[34][75][76]

Legacy series

LPC900

The LPC900 series are legacy devices based on the 8-bit 80C51 processor core.[77]

LPC700

The LPC700 series are legacy devices based on the 8-bit 80C51 processor core.[78]

Development boards

LPCXpresso boards

LPC1343 LPCXpresso development board. LPC-LINK SWD debugger on left of J4 and target LPC1343 on right of J4

LPCXpresso boards are sold by NXP to provide a quick and easy way for engineers to evaluate their microcontroller chips.[79][80] The LPCXpresso boards are jointly developed by NXP, Code Red Technologies,[37] and Embedded Artists.[19]

Each LPCXpresso board has the following common features:

The following LPCXpresso boards exist:[48]

  • LPC1769 LPCXpresso, p/n OM13000.[81]
  • LPC1347 LPCXpresso, p/n OM13045.[82]
  • LPC1343 LPCXpresso, p/n OM11048.[83]
  • LPC1227 LPCXpresso, p/n OM13008.[84]
  • LPC11U68 LPCXpresso, p/n OM13065.[85]
  • LPC11U14 LPCXpresso, p/n OM13014.[86]
  • LPC11C24 LPCXpresso, p/n OM13012.[87]
  • LPC1115 LPCXpresso, p/n OM13035.
  • LPC1114 LPCXpresso, p/n OM11049.[88][89]
  • LPC1104 LPCXpresso, p/n OM13047.[90]
  • LPC812 LPCXpresso, p/n OM13053.[91]

The following mbed boards exist:[92]

  • mbed LPC1768
  • mbed LPC11U24

The following BaseBoards are compatible with LPCXpresso and mbed boards:

  • NGX LPCXpresso BaseBoard, p/n OM13016, created by NGX.[93]
  • EA LPCXpresso BaseBoard, p/n OM11083, created by Embedded Artists.[94]

MYIR MYD-LPC435X

Development tools

Cortex-M

LPC

Flash programming via UART

All LPC microcontrollers have a ROM'ed bootloader that supports loading a binary image into its flash memory using one or more peripherals (varies by family). Since all LPC bootloaders support loading from the UART peripheral and most boards connect a UART to RS-232 or a USB-to-UART adapter IC, thus it's a universal method to program the LPC microcontrollers. Some microcontrollers requires the target board to have a way to enable/disable booting from the ROM'ed bootloader (i.e. jumper / switch / button).

Debugging tools (JTAG / SWD)

Documentation

The amount of documentation for all ARM chips is daunting, especially for newcomers. The documentation for microcontrollers from past decades would easily be inclusive in a single document, but as chips have evolved so has the documentation grown. The total documentation is especially hard to grasp for all ARM chips since it consists of documents from the IC manufacturer (NXP Semiconductors) and documents from CPU core vendor (ARM Holdings).

A typical top-down documentation tree is: manufacturer website, manufacturer marketing slides, manufacturer datasheet for the exact physical chip, manufacturer detailed reference manual that describes common peripherals and aspects of a physical chip family, ARM core generic user guide, ARM core technical reference manual, ARM architecture reference manual that describes the instruction set(s).

NXP documentation tree (top to bottom)
  1. NXP website.
  2. NXP marketing slides.
  3. NXP datasheet.
  4. NXP reference manual.
  5. ARM core website.
  6. ARM core generic user guide.
  7. ARM core technical reference manual.
  8. ARM architecture reference manual.

NXP has additional documents, such as: evaluation board user manuals, application notes, getting started guides, software library documents, errata, and more. See External Links section for links to official NXP and ARM documents.

See also

References

  1. 1 2 Press Release; NXP; September 1, 2006.
  2. LPC900 series; NXP Semiconductors
  3. "NXP, ARM sign long term Cortex-M processor deal", New Electronics, February 28, 2011. Retrieved November 12, 2011.
  4. 1 2 Cortex-M4F Specification Summary; ARM Holdings.
  5. 1 2 Cortex-M3 Specification Summary; ARM Holdings.
  6. 1 2 3 Cortex-M0 Specification Summary; ARM Holdings.
  7. 1 2 Cortex-M0+ Specification Summary; ARM Holdings.
  8. ARM926EJ-S Specification Summary; ARM Holdings.
  9. ARM968E-S Specification Summary; ARM Holdings.
  10. ARM7TDMI-S Specification Summary; ARM Holdings.
  11. "NXP unveils UCODE I2C RFID chip", PC's Semiconductors Blog, April 5, 2011. Retrieved February 2, 2013.
  12. 1 2 3 Press Release; NXP; September 25, 2006.
  13. 1 2 Press Release; NXP; September 17, 2007.
  14. Press Release; NXP; February 5, 2008.
  15. 1 2 Press Release; NXP; March 26, 2008.
  16. 1 2 Press Release; NXP; October 6, 2008.
  17. Press Release; NXP; February 23, 2009.
  18. 1 2 Press Release; NXP; May 26, 2009.
  19. 1 2 Press Release; NXP; January 25, 2010.
  20. Press Release; NXP; February 22, 2010.
  21. 1 2 Press Release; NXP; April 20, 2010.
  22. 1 2 Press Release; NXP; September 20, 2010.
  23. 1 2 Press Release; NXP; February 22, 2011.
  24. 1 2 Press Release; NXP; April 11, 2011.
  25. 1 2 Press Release; NXP; September 26, 2011.
  26. 1 2 Press Release; NXP; December 5, 2011.
  27. 1 2 Press Release; NXP; February 14, 2012.
  28. 1 2 3 Press Release; NXP; March 1, 2012.
  29. Press Release; NXP; March 13, 2012.
  30. Press Release; NXP; March 27, 2012.
  31. 1 2 Press Release; NXP; March 27, 2012.
  32. 1 2 Press Release; NXP; April 26, 2012.
  33. 1 2 Press Release; NXP; September 19, 2012.
  34. 1 2 Press Release; NXP; November 13, 2012.
  35. 1 2 Press Release; NXP; April 24, 2013.
  36. 1 2 Press Release; NXP; May 1, 2013.
  37. Code Red Technologies.
  38. Press Release; NXP; October 21, 2013.
  39. Press Release; NXP; December 5, 2013.
  40. Cortex-M4F Microcontrollers; NXP Semiconductors.
  41. LPC4300 Series; NXP Semiconductors.
  42. LPC4300 Block Diagram; NXP Semiconductors.
  43. LPC4000 Series; NXP Semiconductors.
  44. 1 2 ARM9 Microcontrollers; NXP Semiconductors.
  45. LPC3200 Series; NXP Semiconductors.
  46. LPC3100 Series; NXP Semiconductors.
  47. 1 2 Getting started with NXP LPCXpresso; NXP.com
  48. LPC3152/LPC3154 Datasheet; NXP.com
  49. ARM7 Microcontrollers; NXP Semiconductors.
  50. LH7 Series; NXP Semiconductors.
  51. LH7A Series; NXP Semiconductors.
  52. LPC2900 Series; NXP Semiconductors.
  53. LPC2400 Series; NXP Semiconductors.
  54. LPC2300 Series; NXP Semiconductors.
  55. LPC2200 Series; NXP Semiconductors.
  56. LPC2100 Series; NXP Semiconductors.
  57. 1 2 Cortex-M3 Microcontrollers; NXP Semiconductors.
  58. 1 2 Cortex-M0 Microcontrollers; NXP Semiconductors.
  59. LPC1800 Series; NXP Semiconductors.
  60. LPC1700 Series; NXP Semiconductors.
  61. EmCraft: Linux LPC1788 Evaluation Kit.
  62. LPC1300 Series; NXP Semiconductors.
  63. LPC1200 Series; NXP Semiconductors.
  64. LPC12D00 Series; NXP Semiconductors.
  65. LPC1100 Miniature Series; NXP Semiconductors.
  66. LPC1100(X)L Series; NXP Semiconductors.
  67. LPC1100LV Series; NXP Semiconductors.
  68. LPC11A00 Series; NXP Semiconductors.
  69. LPC11C00 Series; NXP Semiconductors.
  70. LPC11D00 Series; NXP Semiconductors.
  71. LPC11E00 Series; NXP Semiconductors.
  72. LPC11U00 Series; NXP Semiconductors.
  73. Cortex-M0+ Microcontrollers; NXP Semiconductors.
  74. LPC800 Series; NXP Semiconductors.
  75. LPC800 Block Diagram; NXp Semiconductors.
  76. LPC900 Series; NXP Semiconductors.
  77. LPC700 Series; NXP Semiconductors.
  78. LPCXpresso Boards; NXP Semiconductors.
  79. LPCXpresso Board Support; NXP Semiconductors.
  80. LPC1769 LPCXpresso Board (part#OM13000); NXP Semiconductors.
  81. LPC1347 LPCXpresso Board (part#OM13045); NXP Semiconductors.
  82. LPC1343 LPCXpresso Board (part#OM11048); NXP Semiconductors.
  83. LPC1127 LPCXpresso Board (part#OM13008); NXP Semiconductors.
  84. OM13065 LPCXpresso Board (part#OM13065); NXP Semiconductors.
  85. LPC11U14 LPCXpresso Board (part#OM13014); NXP Semiconductors.
  86. LPC11C24 LPCXpresso Board (part#OM13012); NXP Semiconductors.
  87. LPC1114 LPCXpresso Board (part#OM11049); NXP Semiconductors.
  88. Microcontrollers: GPIO/Timers/Interrupts example and LPCXpresso LPC1114 review; June 20, 2012.
  89. LPC1104 LPCXpresso Board (part#OM13047); NXP Semiconductors.
  90. LPC812 LPCXpresso Board (part#OM13053); NXP Semiconductors.
  91. mbed Microcontroller Variants; mbed.
  92. NGX LPCXpresso BaseBoard (part#OM13016); NXP Semiconductors.
  93. EA LPCXpresso BaseBoard (part#OM11083); NXP Semiconductors.

Further reading

Wikimedia Commons has media related to NXP LPC.
NXP LPC Official Documents
ARM Official Documents
LPC2000
LPC1000
LPC800
This article is issued from Wikipedia - version of the 11/30/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.