Stellaris √ семейство микроконтроллеров на ядре Cortex-M3
Линейка микроконтроллеров (МК) Stellaris изначально была создана компанией Luminary Micro, которая, несмотря на свое сравнительно непродолжительное пятилетнее существование в качестве самостоятельной компании, оставила заметный след в мировой электронике, став первым производителем общедоступных микроконтроллеров с интегрированным процессором ARM Cortex-M3. В этом, 2009, году Luminary Micro была поглощена гигантом полупроводниковой индустрии - компанией Texas Instruments, которая таким образом смогла в одночасье дополнить цепочку выпускаемых семейств микроконтроллеров недостающим и очень перспективным звеном. В конечном счете, компания Texas Instruments получила возможность предложить рынку самый обширный ассортимент микроконтроллеров Cortex-M3, который насчитывает 138 позиций и охватывает все наиболее массовые области применения МК. Среди областей применения - бытовая техника, автоматизированный электропривод, системы мониторинга, HVAC-системы, автоматизация зданий, преобразовательная техника, преобразователи интерфейсов, торговые терминалы, контрольно-измерительное оборудование, медицинская техника, игровые устройства и многое другое.
Несмотря на то, что процессор Cortex-M3 формально входит в семейство ARM Cortex и является одним из профилей архитектуры ARMv7 [1], с прикладной точки зрения его более правильно рассматривать как наследника процессора ARM7TDMI, который нашел широкое применение в качестве основы для построения многих других 32-битных МК. Для достижения преимущества Cortex-M3 по сравнению с ARM7TDMI проделано следующее:
- устранены все известные узкие места, присущие процессору ARM7TDMI, в том числе
-
применен новый набор инструкций Thumb-2, который обеспечивает большую плотность кода, чем 16-битный набор инструкций Thumb процессора ARM7TDMI;
-
улучшена эффективность исполнения инструкций (предсказание переходов, однотактное умножение, деление на аппаратном уровне), что позволило повысить производительность процессора до 1,25 DMIPS/МГц (против 0,95 DMIPS/МГц процессора ARM7TDMI в режиме ARM);
-
до 12 циклов (против 24...42 циклов процессора ARM7TDMI) снижена задержка реагирования на прерывания за счет выполнения операций над стеком на аппаратном уровне;
-
до 0,19 мВт/МГц (против 0,28 мВт/МГц процессора ARM7TDMI) снижено удельное электропотребление;
-
улучшена эффективность размещения данных в памяти и выполнения операций битовой обработки;
- повышена степень интеграции и стандартизации системных ресурсов:
-
интегрированы элементы, использующиеся операционными системами реального времени (ОСРВ), в том числе системный таймер и блок защиты памяти;
-
реализована поддержка экономичных режимов работы;
-
применено стандартизованное распределение адресного пространства памяти;
- реализована более простая модель программирования, избавляющая от необходимости написания какого-либо ассемблерного кода, глубокого изучения процессора и его набора регистров. Кроме того, предусмотрена стандартизация программирования всех МК Cortex-M3 (стандарт CMSIS, см. www.onarm.com). Если придерживаться данного стандарта, можно добиться простоты портирования проектов между МК разных производителей.
Кроме того, архитектура процессора Cortex-M3 оптимизирована по стоимости, благодаря чему созданные на его основе МК способны конкурировать по цене с 16-битными и даже некоторыми 8-битными МК.
Наследовав перечисленные преимущества процессора Cortex-M3, МК Stellaris были дополнены оригинальной рецептурой встроенных модулей ввода-вывода во множестве типоисполнений, благодаря чему они приобрели ряд уникальных и порой беспрецедентных среди всех выпускаемых МК Cortex-M3 черт. К числу таковых относятся:
- доступность 28-выводных МК, способных конкурировать с 8- и 16-битными контроллерами;
- интеграция во многие МК модуля Ethernet, причем не только со встроенным MAC-контроллером, но и со встроенным трансивером;
- интеграция в некоторые МК ПЗУ со встроенной прошивкой программной библиотеки StellarisWare, которая содержит драйверы встроенных модулей ввода-вывода, функции для программирования Flash-памяти, криптографические таблицы по стандарту AES, а также функции обнаружения ошибок CRC.
К числу других важных преимуществ МК Stellaris также можно отнести наличие исполнения с расширенным до 105°С температурным диапазоном; доступность бесплатной библиотеки с реализованными тестами по классу Б стандарта IEC 60730 (в РФ действует его аутентичная версия ГОСТ Р МЭК 60730-1-2002), которая существенно облегчает получение сертификата на соответствие уровня безопасности и надежности бытовой техники классу Б; наличие МК, модуль Ethernet которых поддерживает стандарт IEEE1588, позволяющий на наносекундном уровне синхронизировать удаленные контроллеры.
МК Stellaris организованы в виде серий и подсерий. Сведения по ним представлены в таблице 1.
Таблица 1. Обзор серий и подсерий МК Stellaris
Серия | Подсерии | FCPU, МГц | Flash-память, кбайт | SRAM, кбайт | Макс. кол-во линий в/в | Корпус* | Описание |
---|---|---|---|---|---|---|---|
LM3S9000 | LM3S9B00 | 80, 100 | 256 | 128 | 65 | LQFP100 | Коммуникационные интерфейсы 10/100 Ethernet, USB с функциональностью On-The-Go, Host и Device и CAN; интерфейс для расширения памяти (поддержка SDRAM, SRAM/Flash-памяти и др.), интерфейс I2S, АЦП с возможностями одновременного преобразования в двух каналах, второй сторожевой таймер с независимой синхронизацией для критичных к безопасности применений (IEC60730) и программно-подстраиваемый прецизионный 1%-ый генератор частоты 16 МГц. |
LM3S9700 | 80 | 128 | 64 | 60, 65 | LQFP100 | ||
LM3S8000 | LM3S8900 | 50 | 256 | 64 | 34...46 | LQFP100 | Первая серия МК ARM, в которых одновременно стали доступными интерфейсы CAN (до 3 каналов) и 10/100 Mbps Ethernet. |
LM3S8700 | 50 | 128 | 64 | 32...38 | LQFP100 | ||
LM3S8600 | 50 | 128 | 32 | 31 | LQFP100 | ||
LM3S8500 | 50 | 96 | 64 | 35, 36 | LQFP100 | ||
LM3S6000 | LM3S6900 | 50 | 256 | 64 | 38...46 | LQFP100 | Первая серия МК ARM со встроенным интерфейсом 10/100 Mbps Ethernet, в т.ч. MAC-контроллер и трансивер. |
LM3S6700 | 50 | 128 | 64 | 41,46 | LQFP100 | ||
LM3S6600 | 25, 50 | 128 | 32 | 38...46 | LQFP100 | ||
LM3S6500 | 50 | 96 | 64 | 41 | LQFP100 | ||
LM3S6400 | 25, 50 | 96 | 32 | 43, 46 | LQFP100 | ||
LM3S6100 | 25 | 64 | 16 | 30, 35 | LQFP100 | ||
LM3S5000 | LM3S5B00 | 80 | 256 | 96 | 71 | LQFP100 | Серия МК, предназначенных для работы с сетями CAN и дополненных полноскоростным интерфейсом USB 2.0 с функциональностью On-The-Go или Host/Device. |
LM3S5700 | 50, 80 | 128 | 128 | 33...71 | LQFP100 LQFP64 | ||
LM3S5600 | 50 | 64 | 32 | 33 | LQFP64 | ||
LM3S300 | LM3S3700 | 50 | 128 | 64 | 61 | LQFP100 | Серия МК со встроенным полноскоростным интерфейсом USB 2.0 с функциональностью On-The-Go или Host/Device. |
LM3S3600 | 50 | 128 | 32 | 33 | LQFP64 | ||
LM3S2000 | LM3S2B00 | 80 | 256 | 96 | 60 | LQFP100 | Серия МК, предназначенных для работы с сетями CAN. |
LM3S2900 | 50 | 256 | 64 | 52...60 | LQFP100 | ||
LM3S2700 | 50, 80 | 128 | 64 | 33...60 | LQFP100 LQFP64 | ||
LM3S2600 | 25, 50 | 128 | 32 | 33...60 | LQFP100 LQFP64 | ||
LM3S2500 | 50 | 96 | 64 | 48 | LQFP100 | ||
LM3S2400 | 25, 50 | 96 | 32 | 34...60 | LQFP100 | ||
LM3S2200 | 50 | 64 | 32 | 33 | LQFP64 | ||
LM3S2100 | 50 | 64 | 16 | 40,56 | LQFP100 | ||
LM3S1000 | LM3S1900 | 50 | 256 | 64 | 52...60 | LQFP100 | Серия МК для работы в системах с батарейным резервированием питания. Содержат специальный модуль HIBERNATION, питание которого организованно независимо от других каскадов МК. В состав данного модуля входят часы реального времени, 256 байт ОЗУ для энергонезависимого хранения данных (за счет резервного батарейного питания), схема контроля батарейного напряжения и сигнализации о его недопустимом снижении и вход внешнего прерывания. Модулем поддерживается специальный экономичный режим HIBERNATE, выход из которого возможен по условию совпадения в часах реального времени и внешнему прерыванию. Потребляемый модулем ток составляет порядка 16 мкА и, таким образом, при питании МК от стандартной литиевой батарейки CR2032 и его нахождении в режиме HIBERNATE он способен проработать более 3 лет. |
LM3S1800 | 50 | 256 | 32 | 56 | LQFP100 | ||
LM3S1700 | 50 | 128 | 64 | 33, 56 | LQFP100 LQFP64 | ||
LM3S1600 | 25, 50 | 128 | 32 | 33...60 | |||
LM3S1500 | 25, 50 | 96 | 64 | 43, 58 | LQFP100 | ||
LM3S1400 | 50 | 96 | 32 | 46, 52 | LQFP100 | ||
LM3S1300 | 50 | 96 | 16 | 57 | LQFP100 | ||
LM3S1100 | 25, 50 | 64 | 16 | 41...52 | LQFP100 | ||
LM3S800 | — | 50 | 64 | 8 | 28...36 | LQFP48 | Серии 48-выводных МК, различающихся по объему памяти и быстродействию ЦПУ. Внутри серий доступен выбор МК с различной степенью интеграции аналоговых и цифровых модулей, в т.ч. 10-битный АЦП (до 8 каналов, частота дискретизации 0,25/0,5/1 МГц); модули для решения задач управления движением: ШИМ-контроллер (до 6 каналов) и квадратурный энкодер; интерфейсные модули UART (до 2 каналов), SSI, I2C; аналоговые компараторы (до 3 каналов). МК идеальны для недорогих встраиваемых применений, где требуется реализация алгоритмов управления повышенной сложности. |
LM3S600 | — | 50 | 32 | 8 | 28...36 | LQFP48 | |
LM3S300 | — | 25 | 16 | 4, 2 | 28...36 | LQFP48 | |
LM3S100 | — | 20 | 8 | 2 | 18 | SOIC28 | Серия самых простых МК в 28-выводном корпусе; интегрируют модули UART, I2C, SSI, таймеры с каналами захвата, 1 или 2 аналоговых компаратора; предоставляют самый дешевый доступ к освоению возможностей процессора Cortex-M3; идеальны для замены 8/16-битных МК в простых встраиваемых применениях. |
Примечание: * МК, доступные в корпусе LQFP100, также доступны в корпусе BGA108. * МК, доступные в корпусе LQFP100, также доступны в корпусе BGA108. |
В колонке «Описание» даны лишь главные классификационные признаки серий. Общие отличия подсерий можно оценить по приведенным характеристикам максимального быстродействия ЦПУ (FCPU), объема встроенной памяти, а также типам корпусов и предельным возможностям дискретного ввода-вывода. Помимо этого, внутри подсерий МК отличаются по степени интеграции аналоговых и цифровых модулей ввода-вывода. Пользователь может рассчитывать на доступность следующих модулей ввода-вывода:
- 32-битные таймеры (до четырех каналов) с каналами захвата/сравнения (до восьми каналов);
- ШИМ-контроллер, в том числе для задач управления движением (до восьми каналов);
- интерфейс квадратурного энкодера, облегчающего введение обратных связей по положению, направлению, скорости (до двух каналов);
- 10-битный АЦП (до 16 мультиплексированных каналов, частота дискретизации 0,25, 0,5 или 1МГц);
- последовательные интерфейсы UART, I2C, SSI (SPI) и I2S;
- аналоговые компараторы (до трех каналов);
- датчик температуры.
Кроме того, МК Stellaris оснащены всеми необходимыми системными ресурсами, облегчающими их применение. В их число входят блок управления синхронизацией и сбросом (позволяет оптимизировать энергопотребление и исключить внешние компоненты для управления сбросом), стабилизатор напряжения LDO-типа (дает возможность питать МК одним напряжением 3,3 ±0,3 В), опциональный блок прямого доступа к памяти (DMA; минимизирует участие ЦПУ в процессах передачи данных между модулями ввода-вывода и памятью) и встроенный в новые МК RC-генератор с улучшенной до 1% точностью (исключает внешние компоненты для синхронизации МК). Рассмотренные особенности структуры МК Stellaris обобщены на рисунке 1.
Рис. 1. Обобщенная структура микроконтроллеров Stellaris
Еще одно немаловажное преимущество рассматриваемых МК - высокий уровень предлагаемой технической поддержки. Пользователю доступно множество программных и аппаратных инструментов, направленных на ускорение проектирования как устройств общего назначения, так и ориентированных на конкретные области применения. Например, использование бесплатного микропрограммного обеспечения (МПО) StellarisWare существенно упрощает программирование МК. Данное МПО состоит из нескольких библиотек и примеров их использования. Использование этих библиотек избавит пользователя от необходимости написания драйверов модулей ввода-вывода, упростит работу с интерфейсом USB, ускорит создание графических интерфейсов, добавит поддержку внутрисистемного программирования, а также обеспечит совместимость со стандартом IEC 60730. МПО совместимо со средами для проектирования компаний Keil (MDK-ARM), IAR (Embedded Workbench), Code Red Technologies (RedSuite), Code Sourcery (SourceryG++), а также GNU-инструментами для проектирования. Выпускаемые аппаратные средства поддержки проектирования разделяются на четыре группы: оценочные наборы, наборы для проектирования, наборы завершенных устройств и модули. Их обзор представлен в таблице 2.
Таблица 2. Обзор инструментальных средств для проектирования
Наименование | Описание |
---|---|
1. Оценочные наборы | |
EK-LM3S9B92 | Состоит из платы с МК LM3S9B92 (порты 10/100 Ethernet и USB-OTG, разъем подключения к портам ввода-вывода (ПВВ)) и дополнительной платы отладочного интерфейса BD-ICDI. |
EK-LM3S9B90 | то же, но для МК LM3S9B90. |
EK-LM3S8962 | Плата с МК LM3S8962 (порты 10/100 Ethernet и CAN, графический OLED-дисплей 128х96, динамик, коммутационные элементы, разъем подключения к ПВВ). |
EK-LM3S8965 | Плата с МК LM3S8965 (порт 10/100 Ethernet, графический OLED-дисплей 128х64, динамик, коммутационные элементы, разъем подключения к ПВВ, разъем карты памяти MicroSD) |
EK-LM3S3748 | Плата с МК LM3S3748 (прошит программой 2-канального осциллографа, порты USB host и device, цветной LCD-дисплей 128х128, динамик, коммутационные элементы, разъем MicroSD, разъем подключения к ПВВ) и отдельный модуль USB-stick |
EK-LM3S2965 | Плата с МК LM3S2965 (Host-порт CAN, графический OLED-дисплей 128х64, динамик, коммутационные элементы, разъем подключения к ПВВ, порт USB для питания и отладки) и плата с МК LM3S2110 (Device-порт CAN, питание через шину CAN, коммутационные элементы, разъем подключения к ПВВ). |
EK-LM3S1968 | Плата с МК LM3S1968 с 256 кбайт Flash-памяти, 64 кбайт SRAM, 8 каналами АЦП, 52 ПВВ и поддержкой режима hibernate (графический OLED-дисплей 128x96, коммутационные элементы, динамик, разъем подключения к ПВВ, разъем с установленной в него 3-вольтовой батарейкой). |
EK-LM3S811 | Плата с МК LM3S811 (OLED-дисплей 96х16, коммутационные элементы, потенциометр на входе АЦП, отладка через USB). |
2. Наборы для проектирования | |
DK-LM3S9B96 | Плата для проектирования устройств с интерфейсами Ethernet, CAN и USB OTG/Host/Device (МК LM3S9B96, 3.5” QVGA LCD-дисплей с сенсорной поверхностью, навигационный POT-переключатель, кнопки, интерфейс I2S, модуль SDR SDRAM объемом 8 Мбайт, разъем MicroSD, разъем для подключения к ПВВ, карта памяти MicroSD объемом 1 Гбайт, USB Flash-диск объемом 128 Мбайт). |
DK-LM3S8xx/6xx/3xx/1xx | Содержит все аппаратные и программные компоненты, необходимые для разработки и макетирования встраиваемых применений. Набор состоит из платы для проектирования, программного обеспечения, кабелей и перемычек, документации в электронном виде. Доступные для заказа наборы: DK-LM3S101, DK-LM3S102, DK-LM3S301, DK-LM3S801, DK-LM3S811, DK-LM3S815, DK-LM3S817, DK-LM3S818, DK-LM3S828. |
Дочерние платы | Дочерние платы предназначены для добавления поддержки требуемого МК в составе уже приобретенного набора для проектирования. Доступные для заказа дочерние платы: DB-LM3S101, DB-LM3S102, DB-LM3S301, DB-LM3S801, DB-LM3S811, DB-LM3S815, DB-LM3S817, DB-LM3S818, DB-LM3S828. |
3. Наборы завершенных устройств | |
RDK-Stepper | Аппаратные и программные компоненты для разработки, модернизации и интеграции устройств управления шаговым двигателем. Силовой каскад выполнен на основе драйверов и MOSFET-транзисторов Fairchild Semiconductor. Состоит из основной платы управления, шагового двигателя NEMA23, сетевого источника питания с выходом 24 В, USB-кабеля, Windows-программы графического интерфейса. |
RDK-ACIM | То же, но для управления асинхронным электродвигателем, находящий широкое применение в бытовой технике. Укомлектован 3-фазным двигателем Selni (0-20000 об./мин.). |
RDK-BLDC | То же, но для управления безщеточным двигателем постоянного тока (BLDC). |
RDK-BDC | Модуль управления щеточным двигателем постоянного тока (12 В, 40 А) и оценочный набор EK-LM3S2965 в качестве консоли управления через шину CAN. В комплект входит двигатель RS-555PH-3255 (Mabuchi; 5000 об./мин, 12В, 3A). |
RDK-S2E | Набор основан на миниатюрном модуле MDL-S2E, который предназначен для интеграции в систему в качестве преобразователя протоколов UART/RS-232-Ethernet. Дополнен кабелями Ethernet, DB9 и USB,а также документацией на CD. |
RDK-IDM | Набор для разработки интеллектуальных графических интерфейсов. Основан на модуле цветного ЖК-дисплея (2.8», QVGA, 240x320) с сенсорной поверхностью (модуль MDL-IDM), который поддерживает технологию электропитания Power-over-Ethernet (PoE). В наборе этот модуль дополнен источником питания с выходом 24В, кабелем Ethernet, адаптером отладочной системы и документацией на CD. |
RDK-IDM-L35 | Аналогичного назначения набор, но выполненный на основе другого модуля цветного ЖК-дисплея (3.5», QVGA, 320x240) с сенсорной поверхностью (MDL-IDM-L35). Питание организовано через входящий в комплект кабель USB-TTL, который также соединен с UART0, установленного на плате МК LM3S1958. |
RDK-IDM-SBC | Аналогичного назначения набор и тем же 3,5-дюймовым дисплеем, но уже в составе другого модуля MDL-IDM-SBC. Этот модуль выполнен на основе более высокоуровневого МК LM3S9B92. Модуль представляет собой готовый одноплатный компьютер с графическим интерфейсом. В комплект также входят модуль MDL-ADA2, USB flash-диск (128 Мбайт), источник питания с выходом 24 В, кабель Ethernet, динамик, документация на CD. |
4. Модули | |
MDL-STEPPER, MDL-ACIM, MDL-BLDC, MDL-BDC, MDL-S2E, MDL-IDM, MDL-IDM28, MDL-IDM-L35 | Отдельно взятые модули из соответствующих наборов завершенных устройств. |
MDL-ADA2 | Модуль адаптера 10-выводного (mini-JTAG) и 20-выводного портов JTAG, выполненный на основе гибкого шлейфа. |
Заключение
Семейство Stellaris составляет множество микроконтроллеров, выполненных на основе процессора ARM Cortex-M3 с передовыми для своего класса характеристиками. Семейство разделено на серии и подсерии, в которые входят МК различного класса и отличающиеся по степени интеграции.
Используемые в МК встроенные модули ввода-вывода делают возможным их применение в разнообразных по уровню сложности приложениях: от простых, которые обычно выполнялись на основе продвинутых 8-битных МК, до высококачественных встраиваемых систем с широкими коммуникационными возможностями (Ethernet, CAN, USB) и интеллектуальным пользовательским интерфейсом.
Все МК Stellaris, оснащенные интерфейсом Ethernet, интегрируют не только MAC-контроллер, но и трансивер. Данное предложение является беспрецедентным для всей группы МК Cortex-M3 (кроме Texas Instruments МК Cortex-M3 выпускает еще пять производителей) и достаточно редким среди всех других выпускаемых МК.
МК поддерживаются обширным набором аппаратных и программных инструментов, способствующих ускорению освоения как конкретной модели МК, так и определенного применения. В число таких применений входят управление электродвигателями, интеллектуальные графические интерфейсы и преобразователи UART-Ethernet.
Литература
1. Староверов К.С. Микроконтроллеры на основе ядра ARM Cortex M3//Новости электроники, ╧1, 2008. - С. 9-15.
Получение технической информации, заказ образцов, поставка - e-mail: mcu.vesti@compel.ru
Ваш комментарий к статье | ||||