LPC1100
LPC1100 — это семейство 32-битных микроконтроллеров на ядре ARM Cortex-M0, разработанное компанией NXP Semiconductors (ранее подразделение Philips). Предназначено для встраиваемых систем с низким энергопотреблением и ограниченным бюджетом, где не требуется высокая производительность, но важна стоимость и компактность. Семейство LPC1100 стало одним из первых массовых микроконтроллеров на архитектуре ARM Cortex-M0, ориентированных на замену 8- и 16-битных решений (например, на базе 8051 или PIC) в простых устройствах управления, датчиках, бытовой технике и промышленной автоматике.
История
Семейство LPC1100 было анонсировано компанией NXP в марте 2010 года как первая серия микроконтроллеров на новом ядре ARM Cortex-M0, представленном ARM Holdings в 2009 году. Разработка велась в рамках стратегии NXP по созданию недорогих 32-битных решений, способных конкурировать с устаревшими 8-битными архитектурами. Первые образцы поступили в продажу в середине 2010 года, а массовое производство началось в 2011 году.
Ключевым преимуществом LPC1100 стала совместимость по выводам и периферии с более старшим семейством LPC1300 (на Cortex-M3), что позволяло разработчикам легко мигрировать между проектами. В последующие годы NXP выпустила несколько подсерий (LPC111x, LPC112x, LPC11xx), отличающихся объёмом памяти, набором периферии и корпусами. Семейство оставалось в производстве до середины 2010-х годов, после чего было частично вытеснено более современными сериями LPC800 и LPC54000, но продолжало использоваться в legacy-проектах.
Архитектура и ядро
Микроконтроллеры LPC1100 построены на 32-битном процессорном ядре ARM Cortex-M0, работающем на частоте до 50 МГц. Ядро поддерживает набор инструкций Thumb-2, обеспечивающий высокую плотность кода, и имеет трёхступенчатый конвейер. Отличительные особенности:
- Низкое энергопотребление: типичное потребление в активном режиме составляет около 1 мА на 1 МГц, в режиме сна — единицы микроампер.
- Встроенный контроллер прерываний (NVIC): до 32 векторов прерываний с приоритетами.
- Отсутствие блока FPU (число с плавающей запятой) и MMU (управление памятью) — все вычисления целочисленные.
- Поддержка отладки: через интерфейс SWD (Serial Wire Debug) с двумя контактами.
Периферия и функциональные возможности
Семейство LPC1100 включает стандартный набор периферийных модулей, типичный для недорогих микроконтроллеров:
- Память: Flash-память от 8 до 64 КБ, SRAM от 2 до 8 КБ. В некоторых моделях (LPC11Uxx) добавлен контроллер USB.
- Таймеры: до 4 16-битных таймеров/счётчиков, сторожевой таймер (WDT), системный таймер SysTick.
- Аналоговые модули: 10-битный АЦП (до 8 каналов), в некоторых подсериях — компаратор напряжения.
- Цифровые интерфейсы: UART (до 2), I²C (до 2), SSP/SPI (до 2). В моделях LPC11Uxx — USB 2.0 Full Speed (Device/Host/OTG).
- GPIO: до 42 линий общего назначения, с возможностью настройки на прерывание по изменению уровня.
- Тактирование: встроенный RC-генератор (12 МГц), возможность подключения внешнего кварца (до 25 МГц) и PLL для умножения частоты.
Подсемейства и модификации
Серия LPC1100 включает несколько подсемейств, различающихся объёмом памяти, корпусами и дополнительными функциями:
| Подсемейство | Flash (КБ) | SRAM (КБ) | Корпуса | Особенности |
|---|---|---|---|---|
| LPC111x | 8–64 | 2–8 | TSSOP20, SOIC20, QFN33, LQFP48 | Базовая серия, без USB |
| LPC112x | 16–32 | 4–8 | QFN33, LQFP48 | Улучшенный АЦП, до 12 каналов |
| LPC11Uxx | 16–64 | 4–8 | LQFP48, QFN48 | Встроенный USB 2.0 Full Speed |
| LPC11xx | 8–32 | 2–4 | TSSOP20, QFN24 | Упрощённая серия для самых дешёвых устройств |
Все подсемейства совместимы по выводам в одинаковых корпусах, что упрощает разработку.
Применение
Благодаря низкой цене (от 0,5 до 2 долларов США в розницу) и малому энергопотреблению, LPC1100 нашли применение в широком спектре устройств:
- Бытовая техника: контроллеры стиральных машин, микроволновых печей, кофеварок, вентиляторов.
- Промышленная автоматика: простые датчики температуры, давления, уровня; исполнительные механизмы (реле, клапаны).
- Автомобильная электроника: блоки управления освещением, стеклоподъёмниками, климат-контролем (некритичные системы).
- Медицинские устройства: портативные тонометры, глюкометры, термометры (неинвазивные).
- Интернет вещей (IoT): простые узлы сбора данных, работающие от батарей (например, датчики открытия дверей, температуры в помещении).
- Разработка и обучение: отладочные платы (например, LPCXpresso LPC1114) для изучения ARM-архитектуры.
Инструменты разработки
Для программирования LPC1100 используются стандартные средства экосистемы ARM:
- Среды разработки (IDE): MCUXpresso IDE (от NXP, бесплатно), Keil MDK-ARM, IAR Embedded Workbench, GCC (ARM Embedded Toolchain).
- Библиотеки: LPCOpen (официальная библиотека NXP с драйверами периферии), CMSIS (Cortex Microcontroller Software Interface Standard).
- Отладчики: LPC-Link2, J-Link (SEGGER), ST-Link (через адаптер), CMSIS-DAP.
- Загрузчики: встроенный UART-загрузчик (в некоторых моделях) для программирования через последовательный порт.
Критика и ограничения
Несмотря на популярность, LPC1100 имели ряд недостатков:
- Малый объём SRAM (до 8 КБ) ограничивал возможности для сложных приложений (например, обработка аудио или работа с графикой).
- Отсутствие аппаратного умножения с плавающей запятой делало невозможным эффективное выполнение алгоритмов цифровой обработки сигналов.
- Устаревшая периферия: например, отсутствие CAN, Ethernet, I²S, что сужало область применения в промышленных и мультимедийных системах.
- Ограниченная документация на ранних этапах: некоторые регистры и режимы работы были описаны неполно, что вызывало трудности у разработчиков.
- Конкуренция: к середине 2010-х годов на рынке появились более дешёвые и производительные микроконтроллеры (STM32F0 от STMicroelectronics, LPC800 от NXP), что снизило актуальность LPC1100.
Интересные факты
- LPC1100 стали первыми микроконтроллерами, сертифицированными для работы в расширенном температурном диапазоне от –40 до +105 °C, что позволило использовать их в автомобильной электронике.
- На базе LPC1100 была построена популярная отладочная плата LPCXpresso LPC1114, которая продавалась по цене около 30 долларов и использовалась в университетских курсах по микроконтроллерам.
- В 2012 году NXP выпустила подсерию LPC11Uxx с поддержкой USB, что позволило создавать на их основе недорогие клавиатуры, мыши и игровые контроллеры.
Источники
- NXP Semiconductors. «LPC111x/LPC112x Product Data Sheet». Rev. 4. — 2012.
- ARM Holdings. «Cortex-M0 Technical Reference Manual». — 2009.
- Журнал «Компоненты и технологии». «Микроконтроллеры NXP LPC1100: первые шаги». — 2011.
- Joseph Yiu. «The Definitive Guide to ARM Cortex-M0 and Cortex-M0+ Processors». — Newnes, 2011.
- Документация NXP: «UM10375: LPC11Uxx User Manual». — 2013.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →