Обзор популярного семейства LPC210x недорогих микроконтроллеров от NXP
Алексей ПАНТЕЛЕИЧУК
Компания NXP Semiconductors (Philips) предлагает 32/16-разрядные микроконтроллеры семейства LPC2000 на основе процессорного ядра ARM7TDMI-S. Контроллеры этого семейства отличаются высокой производительностью, экономичностью и низкой стоимостью. Наличие контроллеров с различными объемами памяти и наборами периферии обеспечивает максимальную гибкость при их выборе для определенного применения.
В таблице приведены основные характеристики серии контроллеров LPC210x. Первые представители 32-разрядных процессоров компании NXP ARM7 LPC2104/ LPC2105 и LPC2106, произведенные по 0,18-микронным нормам, обладают малой потребляемой мощностью и высокой производительностью.
В конце 2005 года была представлена серия Mini, выполненная на базе ядра ARM (LPC2101/ LPC2102/LPC2103). Цена этих высокопроизводительных 32-разрядных приборов вплотную приблизилась к уровню недорогих 8-разрядных МК. Контроллеры серии Mini производятся с технологическими нормами 0,16 мкм. Частота работы ядра этих микроконтроллеров увеличена до 70 МГц (63 MIPS). В отличие от старших моделей LPC2104/05/06 реализована защита Flash, интегрирован 10-разрядный АЦП (8 каналов), а также супервизор, поддерживающий функции Brown-Out-Detect и Power-On-Reset. Также появилась поддержка SSP интерфейса, поддерживающего буфе-
ризацию и работу с данными переменной длины. Главная особенность — реализация функции «быстрых портов», позволяющей увеличить частоту переключения сигналов на выводах микросхемы до 17,5 МГц.
Гибкая система расхода энергоресурсов поддерживает 4 режима — Idle, Power Down, Hibernate, Deep Power Down (не более 5 мкА).
Характерные особенности МК семейства LPC210x:
• 16/32-разрядный микропроцессор ARM7TDMI-S.
• Встроенное статическое ОЗУ до 64 кбайт.
• Встроенная программная Flash-память до 128 кбайт. 128-разрядный интерфейс/акселератор, способные работать в высокоскоростном режиме с тактовой частотой до 70 МГц.
• Возможность программирования внутри системы (ISP) и внутри приложения (IAP) при помощи встроенной программы-загрузчика. Время программирования одной 256-байтной линии Flash-памяти — 1 мс.
Стирание одного сектора или всей памяти за 100 мс.
• Векторный контроллер прерываний с перестраиваемыми приоритетами и адресами векторов прерывания.
• Интерфейс EmbeddedICE-RT активизации точек останова и точек просмотра. Подпрограмма обработки прерывания может продолжать выполняться, в то время как основной программный модуль отлаживается встроенной программой RealMonitor.
• Последовательные интерфейсы:
• UART (16C550);
• I2C (400 кбит/с);
• SPI и SSP;
• 10-разрядный АЦП с 8 входными каналами и временем преобразования менее 2,44 мкс/канал (для серии Mini на основе ядра ARM).
• Два 32-разрядных таймера (7 каналов захвата и сравнения), два 16-разрядных таймера (7 каналов захвата и 3 канала сравнения), сторожевой таймер.
• Малопотребляющие часы реального времени с независимым питанием и отдельным входом тактирования 32 кГц.
• До 32 линий портов ввода/вывода общего применения, совместимых с З-вольтовой логикой.
• Встроенная система ФАПЧ позволяет обеспечить максимальную частоту тактовых импульсов ЦП до 70 МГц, входной частотой от 10 до 23 МГц и временем стабилизации от 100 мкс.
• Встроенный генератор, работающий с внешним кварцем, имеющий рабочий частотный диапазон от 1 до 2З МГц.
• Индивидуальное включение/отключение периферийных модулей для оптимизации потребления.
• Запуск из дежурного режима сигналом внешнего прерывания или часами реального времени.
Таблица. Параметры МК семейства LPC210x
LPC2101 LPC2102 LPC2103 LPC2104 LPC2105 LPC2106
Память ОЗУ, кбайт 16 16 32 64
Flash, кбайт 16 32 128 128 128
Защита Flash + + + - - -
Таймеры, количество/разрядность 2/32 2/16 2/32 2/16 2/32 2/16 2/32 2/32 2/32
Каналы CAP/COM 7
WDT + + + + + +
Интерфейсы UART 2
I2C
SPI
SSP + + + - - -
RTC + + + + + +
Каналы ШИМ - - - 6
Разряды/канал АЦП 10/8 10/8 10/8 - - -
Число выводов I/O 32 32 32 32 32 32
Максимальная тактовая частота ядра, МГц 70 70 70 60 60 60
Напряжение питания,В CPU 1,8 1,8 1,8 1,8 1,8 1,8
I/O 3,3 3,3 3,3 3,3 3,3 3,3
Диапазон рабочих температур, °С -40...+85 -40...+85 -40...+85 0...+70 0...+70 0...+70 -40...+85
Корпус LQFP48 LQFP48 LQFP48, PLCC44 LQFP48 LQFP48 LQFP48, HVQFN48
рубрика
компоненты
95
P0[31:Dh
TMS TDI TRST I TCK TDO
XTAL2 VDD 3V3) VDD n/9)
EINT0[1] '
3xCAP0[1] -4xCAP1[1] -3xCAP2[1] -3 x MAT0[1] -4x MAT1[1]
3 x MAT2[1] 4xMAT3[1] -
AD0[7:0] -
P0[31:0] -
LPC2101/2102/2103
Быстрые порты GPIO
8 кВ BOOT ROM
О
-и
іz.
: 1 ІІ
Внутренний контроллер SRAM Внутренний контроллер FLASH
2 кВ/4 кВ 8 кВ SRAM 8 кВ/16 кВ 32 кВ FLASH
прерывания \г
Захват/ Сравнение Таймер 0/1/2/3
АЦП
GPIO порты ввода/вывода общего назначения
Сторожевой таймер (WDT)
н-ж-
/Інтерфейс тестирования/ отладки
ARM 7 TDMI-S
АНВ Мост
Системная
тактовая
частота
Системные
функции
Контроллер
векторов
прерываний
ж
Ж
Мост АНВ-АРВ
АРВ периферийная шина
12С0,1
с
с
U ART0/UART1
С
Часы реального времени
с
Блок управления системой
. SCLO, SCL1 [1]
. SDAO, SDA1[1]
► SCKO, SCK1[1]
- MOSIO, MOSI1[1]
► MISOO, MIS01[1]
- SSELO, SSEL1[1]
► TX DO, TXD1[1]
- RXDO, RXD1[1]
. DSR1.CTS1
RTS1, DTR1 DCD1.RI1
RTXC1 * RTXC2
Рисунок. Структурная схема LPC2101/LPC2102/LPC2103
• Работает от двух источников питания:
- диапазон рабочего напряжения центрального процессора от 1,63 до 1,93 В (1,8 В ±8,3%);
- диапазон источника питания портов ввода/вывода от 3,0 до 3,6 В (3,3 В ±10 %) с возможностью работы с 3-вольтовой логикой.
Структурная схема семейства LPC210x рассмотрена на примере LPC2103/4/3 (рисунок). Все МК этого семейства имеют процессорное ядро ARM7TDMI-S с поддержкой эмуляции, шину ARM7 контроллера встроенной памяти, шину AMBA Advanced High-performance Bus (AHB) контроллера прерываний и шину VLSI Peripheral Bus (VPB) встроенных периферийных устройств.
Система встроенной Flash-памяти
Эта память может быть использована для хранения как кода, так и данных. Программирование Flash-памяти может быть выполнено различными способами: через встроенный последовательный интерфейс JTAG, путем внутрисистемного программирования (In System Programming— ISP) и UART0, либо путем программирования в условиях работы прикладной программы (In Application Programming — IAP). Прикладная программа, использующая функцию программирования в режиме IAP, может как стирать, так и программировать Flash-память, обеспечивая высокую степень гибкости при обновлении программы пользователя, области хранения данных и т. д.
Встроенная статическая RAM может использоваться для хранения как кодов, так и данных. SRAM микроконтроллеров поддерживает 8-, 16- и 32-разрядный доступ. Контроллер SRAM, чтобы предотвратить остановы CPU во время взаимообратных (back-to-back) записей, оснащен буфером обратной записи. Буфер обратной записи всегда сохраняет последние данные, посланные программой в SRAM. Эти данные записываются в SRAM только тогда, когда программой запрошена другая запись. Если происходит сброс прибора, то фактическое содержание SRAM не будет отражать самый последний запрос записи. Любая программа, проверяющая содержимое SRAM после сброса, должна учитывать этот момент. Поэтому, чтобы гарантировать запись данных в SRAM, после операции записи необходимо добавить «пустую» запись в неиспользуемую ячейку.
Функции блока управления системой
Блок управления системой определяет работу ряда системных устройств через соответствующие регистры управления, не относящиеся к специфическим периферийным устройствам. К этим устройствам относятся:
• кварцевый генератор;
• входы внешних прерываний;
• управление распределением памяти;
• схема PLL;
• средства управления потреблением;
• сброс;
• делитель VPB;
• таймер активации.
У некоторых системных устройств имеются собственные регистры. Неиспользуемые биты в этих регистрах зарезервированы для расширения количества функций в перспективе.
Система быстрых портов ввода/вывода
Система востребована в приложениях, требующих высокой скорости изменения сигналов на выводах микроконтроллера.
Контроллер быстрых портов ввода/вывода подключается непосредственно к быстрой шине Local Bus, в отличие от обычного подключения к более медленной шине периферийных устройств Advanced Peripheral Bus (APB). Таким образом достигается увеличение скорости переключения сигналов на выводах портов общего назначения до 17,5 МГц.
Управление новой системой быстрых портов несколько отличается от традиционной схемы. Однако для совместимости в новом семействе МК реализованы и порты традиционной схемы. А для большей универсально-
сти и быстрые и традиционные порты имеют общий буфер и соответствующие внешние выводы (всего их 32). Конфигурироваться они могут в произвольном сочетании. Для облегчения и ускорения работы с портами, а также более гибкой работы с прерываниями в новом семействе МК реализованы специализированный 32-разрядный регистр и система ускоренной записи данных. Достаточно записать требуемое значение в этот регистр с помощью стандартной ЛИМ-команды, и его содержимое будет передано на внешний вывод всего за один такт.
Наличие подобной системы призвано скомпенсировать отсутствие контроллера прямого доступа к памяти, который не был заложен в архитектуре ЛКМ7ТЭМ1. Производительности быстрых портов достаточно для реализации преобразования большинства последовательных и параллельных интерфейсов, что особенно актуально при построении различных систем управления.
Усовершенствованная система управления энергопотреблением позволяет отключать периферийные модули в различных сочетаниях. Ток потребления может быть уменьшен до значения менее 5 мкА. При этом пробуждение МК возможно по внешнему сигналу прерывания.
Небольшие размеры и низкое потребление делают приборы идеальными для применения в устройствах, в которых миниатюрность
является ключевым параметром, например системы управления доступом и удаленные платежные терминалы. Наличие нескольких последовательных коммуникационных интерфейсов и до 64 кбайт SRAM позволяют использовать эти приборы в сетевых шлюзах и преобразователях протоколов, программных модемах, устройствах распознавания речи и устройствах обработки графической информации. Благодаря различным 32-разрядным таймерам, ШИМ-каналам и 32 линиям GPIO эти микроконтроллеры подходят для применения в оборудовании управления производственными процессами и в медицинском оборудовании. ■
Литература
1. Редькин П. Микроконтроллеры семейства LPC2000 (ARM7TGMI-S) от Philips — еще один шаг к идеальной платформе для встраиваемых приложений // Современная электроника. 2006. № 7.
2. Тревор М. Микроконтроллеры ARM7. Семейство LPC2000 компании Philips. Вводный курс. М.: Додэка, 2006.
3. www.nxp.com