Рубликатор

 



























Все о псориазе



Микроконтроллеры компании STMicroelectronics с ядром ARM

В статье производится сравнительный анализ основных характеристик 32-разрядных микроконтроллеров компании STMicroelectronics, разработанных на основе ядра ARM7 с аналогичными микросхемами других фирм.

Компания STMicroelectronics (STM) — один из мировых лидеров по производству 8- и 16-разрядных микроконтроллеров. Начиная с 2004 года, она стремительно расширяет свое семейство 16/32-разрядных микроконтроллеров с архитектурой на основе ядра ARM7™. Наш прогноз о том, что микроконтроллерные ядра английской компании ARM (Advanced RISC Machines) быстро выйдут на уровень глобального индустриального стандарта для приложений, требующих оптимального соотношения между ценой, производительностью и энергопотреблением, оправдывается. Это объясняется тем, что вся линейка ядер ARM обладает программной совместимостью, имеется большое число продуктов для выбора и множество предложений от различных продавцов, накоплены большие проектные ресурсы для поддержки приложений. Уже есть много инженеров, обученных для работы с ARM, на рынке появилось много программного обеспечения не только от ARM, но и других фирм, обеспечена доступность инструментальных средств и предложений для различных операционных систем.

Основными достоинствами ядра ARM являются:

  • наименьшее энергопотребление для обеспечения одинакового значения производительности по сравнению с другими ядрами при более низкой тактовой частоте;
  • возможность программирования с оптимизацией либо скорости 32-разрядного ядра ARM, либо с оптимизацией размера программного кода при использовании 16-разрядных Thumb-команд, что обеспечивает большую гибкость при проектировании. Применение Thumb-команд обеспечивает сокращение размера программного кода до 30% при уменьшении производительности до 20%
  • Не следует также забывать, что 16-разрядные и 32-разрядные системы команд можно использовать одновременно.

Компания STM приобрела лицензию на всю номенклатуру ядер ARM и последовательно внедряет их в своем производстве ARM микроконтроллеров. В семействе микроконтроллеров STR7xxx в качестве базового ядра используется ARM7TDMI®, производительность (до 100MIPS) и экономичность которого зависят от рабочей частоты (до 90 МГц) и используемого напряжения питания (1,8 В или 3,3 В).

Ядро ARM7 используют и другие производители микроконтроллеров, из которых на российском рынке кроме STM можно выделить компании Freescale (ранее Motorola), Atmel, Philips и др. Однотипность ядра многих семейств микроконтроллеров различных производителей предопределяет их совместимость по аппаратно-программным средствам разработки, которые предоставляют большинство фирм поставляющих продукцию этого вида. Среди фирм специализирующихся на разработке компиляторов C/C++ для платформы ARM, отметим ARM, IAR Systems, KEIL Software и Green Hills. Программные средства на основе компиляторов с лицензией GNU производят Hitex, Nohau, Ashling и др.

Среды разработки производят PLS, SEGGER и др. Как видно, выбор достаточно большой, и вопрос возникает чаще всего в цене для определенного ряда возможностей предоставляемых аппаратно-программными средствами. Наличие большого предложения с одной стороны облегчает, а с другой стороны и затрудняет задачу выбора оптимального микроконтроллера для решения конкретной прикладной задачи. Поэтому при выборе чаще всего решающую роль приобретают интеграционные характеристики микроконтроллеров, и в первую очередь, наличие и возможности встроенных периферийных устройств ARM микроконтроллеров, наличие и доступность библиотек программ для встроенной периферии, экономичность.

Компания STMicroelectronics в настоящее время производит две серии ARM-микроконтроллеров: STR71xFxx и STR73xFxx. Обобщенные технические характеристики микроконтроллеров данных серий приведены в таблице 1.

Таблица 1. STR7 (ARM) — 32-разрядные микроконтроллеры [19]

  Корпус Flash, кбайт Размер внутр. Ram, байт АЦП Таймеры Последовательные интерфейсы Число I/O Питание, B Другие функции Рабочая температура, °C
STR710FZ1 BGA144; TQFP144 128 32768 4x12-bit 4x16-bit, WDG 2xSPI/ 2xI2C/ 4xUART/ HDLC/ SC/ CAN/ USB 48 3.3 EMI, 16K Data Flash -40...+85
STR710FZ2 BGA144; TQFP144 256 65536 4x12-bit 4x16-bit, WDG 2xSPI/ 2xI2C/ 4xUART/ HDLC/ SC/ CAN/ USB 48 3.3 EMI, 16K Data Flash -40...+85
STR711FR0 BGA64; TQFP64 64 16384 4x12-bit 4x16-bit, WDG 2xSPI/ 2xI2C/ 4xUART/ HDLC/ SC/ USB 30 3.3 16K Data Flash -40...+85
STR711FR1 BGA64; TQFP64 128 32768 4x12-bit 4x16-bit, WDG 2xSPI/ 2xI2C/ 4xUART/ HDLC/ SC/ USB 30 3.3 16K Data Flash -40...+85
STR711FR2 BGA64; TQFP64 256 65536 4x12-bit 4x16-bit, WDG 2xSPI/ 2xI2C/ 4xUART/ HDLC/ SC/ USB 30 3.3 16K Data Flash -40...+85
STR712FR0 BGA64; TQFP64 64 16384 4x12-bit 4x16-bit, WDG 2xSPI/ 2xI2C/ 4xUART/ HDLC/ SC/ CAN 32 3.3 16K Data Flash -40...+85
STR712FR1 BGA64; TQFP64 128 32768 4x12-bit 4x16-bit, WDG 2xSPI/ 2xI2C/ 4xUART/ HDLC/ SC/ CAN 32 3.3 16K Data Flash -40...+85
STR712FR2 BGA64; TQFP64 256 65536 4x12-bit 4x16-bit, WDG 2xSPI/ 2xI2C/ 4xUART/ HDLC/ SC/ CAN 32 3.3 16K Data Flash -40...+85
STR715FR0 BGA64; TQFP64 64 16384 4x12-bit 4x16-bit, WDG 2xSPI/ 2xI2C/ 4xUART/ HDLC/ SC 32 3.3 16K Data Flash -40...+85
STR730FZ1 TQFP 144 128 16384 16x10-bit 10x16-bit, 3x16-bit TBU, 6x16-bit ШИМ, WDG, RTC 3xSPI/ 2xI2C/ 4xUART/ 3xCAN 112 5 16xDMA, внутр. RC-генератор -40...+105
STR730FZ2 BGA144; TQFP144 256 16384 16x10-bit 10x16-bit, 3x16-bit TBU, 6x16-bit ШИМ, WDG, RTC 3xSPI/ 2xI2C/ 4xUART/ 3xCAN 112 5 16xDMA, внутр. RC-генератор -40...+105
STR731FV0 TQFP100 64 16384 12x10-bit 6x16-bit, 3x16-bit TBU, 6x16-bit ШИМ, WDG, RTC 3xSPI/ 2xI2C/ 4xUART/ 3xCAN 72 5 16xDMA, внутр. RC-генератор -40...+105
STR731FV1 TQFP100 128 16384 12x10-bit 6x16-bit, 3x16-bit TBU, 6x16-bit ШИМ, WDG, RTC 3xSPI/ 2xI2C/ 4xUART/ 3xCAN 72 5 16xDMA, внутр. RC-генератор -40...+105
STR731FV2 TQFP100 256 16384 12x10-bit 6x16-bit, 3x16-bit TBU, 6x16-bit ШИМ, WDG, RTC 3xSPI/ 2xI2C/ 4xUART/ 3xCAN 72 5 16xDMA, внутр. RC-генератор -40...+105
STR735FZ1 TQFP144 128 16384 16x10-bit 10x16-bit, 3x16-bit TBU, 6x16-bit ШИМ, WDG, RTC 3xSPI/ 2xI2C/ 4xUART 112 5 16xDMA, внутр. RC-генератор -40...+105
STR735FZ2 BGA144; TQFP144 256 16384 16x10-bit 10x16-bit, 3x16-bit TBU, 6x16-bit ШИМ, WDG, RTC 3xSPI/ 2xI2C/ 4xUART 112 5 16xDMA, внутр. RC-генератор -40...+105
STR736FV0 TQFP100 64 16384 12x10-bit 6x16-bit, 3x16-bit TBU, 6x16-bit ШИМ, WDG, RTC 3xSPI/ 2xI2C/ 4xUART 72 5 16xDMA, внутр. RC-генератор -40...+105
STR736FV1 TQFP100 128 16384 12x10-bit 6x16-bit, 3x16-bit TBU, 6x16-bit ШИМ, WDG, RTC 3xSPI/ 2xI2C/ 4xUART 72 5 16xDMA, внутр. RC-генератор -40...+105
STR736FV2 TQFP100 256 16384 12x10-bit 6x16-bit, 3x16-bit TBU, 6x16-bit ШИМ, WDG, RTC 3xSPI/ 2xI2C/ 4xUART 72 5 16xDMA, внутр. RC-генератор -40...+105

Основными параметрами серии STR71xF являются:

  • ядро ARM7TDMI с 32-бит и Thumb16-бит набором команд, трехступенчатый конвейер, 32-бит АЛУ и мощные средства отладки;
  • от 16 кбайт до 64 кбайт ОЗУ (SRAM);
  • от 128 кбайт до 256 кбайт флэш-памяти с малым временем случайного доступа;
  • рабочая частота CPU до 48 МГц с внешней синхронизацией 16 МГц, внутренней ФАПЧ (PLL) и нулевой режимы ожидания с ускорением;
  • до 30МГц и нулевой режимы ожидания без ускорения, без проблем при контекстном переключении и ветвлении, что необходимо в приложениях реального времени;
  • до 10 соединительных интерфейсов, включая I2C, SPI, UART, CAN, а также интерфейсы USB, HDLC, MMC и Smart Card;
  • 4 таймера, отдельный сторожевой таймер и часы реального времени со встроенным генератором 32 кГц для перехода в рабочий режим после дежурного режима (STANDBY);
  • 5 режимов пониженного энергопотребления: WAIT, SLOW, LPWAIT, STOP и STANDBY;
  • встроенный стабилизатор напряжения 1,8 В для ядра, позволяющий работать от одноканального источника питания 3,3 В;
  • контроллер вложенных прерываний с быстрой обработкой нескольких векторов (32 вектора с 16 уровнями приоритетов IRQ, 2 источника маскируемых FIQ);
  • до 48 портов входа/выхода (I/O) с 30/32/48 многофункциональными двунаправленными линиями I/O, из них 14 с возможностью прерываний по изменению уровня;
  • интерфейс JTAG для отладки;
  • индустриальный температурный диапазон от –40 °C до +85 °C.

Микросхемы изготавливаются в миниатюрных низкопрофильных корпусах TQFP64 или TQFP144. Серия в 144-штырьковом корпусе TQFP144 имеет интерфейсы CAN, USB и интерфейс с внешней памятью. Версии в 64-штырьковом корпусе TQFP64 имеют только CAN или USB интерфейс.

Блок-схема серии микроконтроллеров STR71xFxx показана на рис. 1.

Блок-схема серии микроконтроллеров STR71xFxx
Рис. 1. Блок-схема серии микроконтроллеров STR71xFxx

Широкие интеграционные возможности ARM-микроконтроллеров компании STM позволяют использовать их во множестве приложений, требующих высокой производительности ЦП, обеспечения разнообразных функций с возможностью их наращивания и высокой экономичности при низких системных издержках. И для такого вывода есть несколько веских обоснований. Рассмотрим несколько из них.

Все основные компоненты встроены в чип, упакованный в очень маленькие корпуса типа BGA размером от 8x8 мм или TQFP, что обеспечивает простоту разводки. Например, набор внешних компонентов для STR730 в корпусе TQFP144 обеспечивает экономию средств за счет сокращения спецификации на 19 внешних компонентов.

У ARM-микроконтроллеров STM имеется разнообразная встроенная периферия.

Три интерфейса UART позволяют обеспечить полнодуплексные асинхронные соединения с внешними устройствами и независимо программируемой скоростью передачи (TX) и приема (RX) информации до 250 кбод. Они имеют два внутренних буфера FIFO (16 слов) для передачи и приема данных, 16-разрядный контроллер скорости передачи (макс. скорость до 2 Мбод/с), бит запуска для мультипроцессорных связей, программируемый контрольный бит и стоповый бит, режим проверки абонентской линии по шлейфу, обнаруживают ошибки четности, превышения границы и кадра, 9 источников прерываний (флагов).

Четвертый UART интерфейс используется для реализации асинхронного интерфейса смарт-карт по стандарту ISO 7816-3. Этот стандарт становится очень популярным во многих приложениях, особенно на транспорте, системах безопасности и в торговле.

Интерфейс имеет отдельные 16-разрядный счетчик и генератор синхронизации, а также предварительный делитель частоты тактового генератора.

Каждый из двух буферированных последовательных интерфейсов периферии (BSPI) обеспечивают полнодуплексные синхронные соединения с внешними устройствами в режиме ведущий (master) или ведомый (slave). Один из них может использоваться как интерфейс с мультимедиа-картами. Интерфейсы имеют по 2 программируемых FIFO (до 10 слов) для передачи и приема данных, внутренний 8-разрядный предварительный делитель частоты генератора с максимальной скоростью двоичной передачи 5,5 Мбит/с в режиме «ведущий» и 4 Мбит/c в режиме «ведомый», работают с 8- или 16-бит длиной слова и генерируют прерывания для событий приема и передачи.

Два I2C интерфейса с функциями мультимастер и ведомый поддерживают нормальный и быстрый режимы работы I2C (400 кГц), 7 или 10-разрядный режимы адресации. Один из интерфейсов I2C совмещен с SPI, так что можно использовать одновременно 2xSPI+1xI2C или 1xSPI+2xI2C. Кроме того, они обеспечивают 2 канала прерывания (IRQ) сигнализации ошибки обнаружения и конца передачи/приема.

К прогрессирующим интерфейсам можно отнести интерфейс высокоуровневого протокола управления каналом (HDLC), который поддерживает полнодуплексную работу и несколько протоколов, включая кодирование методами NRZ, NRZI, FM0 или манчестерское кодирование. Модуль использует внутренний 8-разрядный генератор скорости двоичной передачи. Он обеспечивает автоматическое обнаружение флага и вставку, автоматическое определение нулевого бита и вставку, 2x128 байт буфера RAM для передачи и приема, 4 режима работы (локальное закольцовывание, автоэхо, полный дуплекс, прерывание).

Интерфейс CAN соответствует стандарту V2.0, часть B (активный) и может обеспечить скорость передачи информации до 1 Mбод. Он обеспечивает до 32 конфигурируемых объектных сообщений, доступный фильтрованный прием для каждого объектного сообщения, маскируемые прерывания, программируемые буферы FIFO любой глубины (до 32 сообщений), 5 режимов работы, включая тестовый.

Интерфейс полноскоростного (full speed) стандарта USB v2.0 обеспечивает до 8 двунаправленных или 16 однонаправленных конечных точек и скорость передачи данных до 12 Мбит/с с поддержкой групповой пересылки и операций приостановки/продолжения работы USB.

Отвечая требованиям рынка ARM-микроконтроллеров, приборы STM имеют множество встроенных таймеров-счетчиков. Каждый из стандартных таймеров включает независимый 16-разрядный счетчик с 7-разрядным предварительным делителем частоты, два входа схемы выборки и два выхода компаратора, счетчик импульсов и канал ШИМ с выбираемой частотой. 16-разрядный сторожевой таймер (Watchdog) защищает приложение от аппаратных или программных ошибок и гарантирует восстановление путем генерирования сигнала сброса. Часы реального времени (RTC) имеют интегрированный генератор 32 кГц, специальный источник опорного напряжения для батарейного питания, 32-разрядный счетчик для долгосрочного измерения и обеспечивают периодическое прерывание и сигнальное прерывание.

К системным особенностям рассматриваемой серии микроконтроллеров можно отнести наличие интерфейса с внешней памятью (EMI), контроллера внешних прерываний и множество портов входа/выхода (I/O)

.

Интерфейс внешней памятью c не мультиплексированной шиной 16-бит данных/ 24-бит адресов обеспечивает до 4 внешних выбираемых банков памяти с размером адресного пространства до 16 Мбайт/банк, программируемым размером шины данных и режимом ожидания. Индивидуально программируемые для каждого банка режимы ожидания позволяют использовать для хранения программ или данных различные типы памяти (Flash, EPROM, ROM, SRAM и т. д.).

Контроллер вложенных прерываний обеспечивает быструю обработку прерываний с 32 векторами и 16 уровнями приоритетов, 2 маскируемых FIQ источников, кроме того, доступно до 14 внешних прерываний для прикладного использования или внешнего запуска приложения после состояния ожидания в режиме STOP.

Имеются стандартные порты I/O (с открытым стоком до 4 мА) и порты с высоко токовыми выводами (с открытым стоком до 8 мА).

Обеспечивается двухтактная конфигурация выхода или с открытым стоком, по уровням обеспечивается TTL/CMOS совместимость.Встроенный сигма-дельта АЦП можно использовать для работы от одного до четырех мультиплексированных каналов входа с частотой выборки до 950 Гц в однократном или непрерывном режимах преобразования. Его разрешающая способность составляет 12 разрядов при типовой частоте дискретизации 0,5 кГц или 2мс (1 кГц или 1мс при одноканальном режиме работы). Амплитуда входного напряжения составляет от нуля до 2,5 В.

Входная полоса частот до 1 кГц. Обеспечивается маскируемое прерывание. Имеется программируемый предварительный делитель.

Разрешение АЦП составляет 11,5 бит ENOB.

Существенным достоинством ARM-микроконтроллеров STM по сравнению с их аналогами является экономичность, для достижения которой использовано несколько нововведений. Во-первых, это увеличенное число режимов пониженного энергопотребления. Кроме рабочего режима работы (RUN), на котором потребление тока составляет примерно 50 мА их пять:

  • Режим ожидания (WAIT), при котором приостанавливается работа ядра, но продолжается функционирование периферии с сохранением содержимого регистров. Потребление уменьшается до 12 мА;
  • Замедленный режим (SLOW), при котором тактовая частота замедляется до CLK/16 или 32кГц. В этом режиме потребление составляет порядка 3 мА;
  • Режим глубокого понижения с ожиданием (LPWAIT). В этом режиме вводятся ограничения режимов WAIT и SLOW, в результате чего потребление снижается до 35 мкА;
  • Режим останова (STOP). Вся синхронизация останавливается, но состояние микроконтроллера, RAM и регистров сохраняется (поддерживается питание, нет сброса). Потребление в этом режиме составляет 14 мкА;
  • Дежурный режим (STANDBY). Выключаются стабилизатор напряжения, питание ядра. Работает только RTC. Потребление составляет всего 10 мкА. Выход из этого режима осуществляется по прерыванию с RTC или по сигналам перезапуска (WAKEUP IT, Reset).

Гибкость управления электропитанием во многом определяется гибкостью управления синхронизацией, поэтому в рассматриваемых устройствах применено несколько решений для управления синхронизацией от нескольких источников. Каналами управления тактовой частотой могут служить внешний кварцевый резонатор или генератор, внутренний RC-генератор, обеспечивающий работу до 28 PLL, часы реального времени с собственным генератором 32 кГц, способные обеспечить синхронизацию всего устройства. Кроме того, обеспечивается предварительное деление тактовой частоты до 256 раз.

Разные внутренние устройства микроконтроллеров имеют разные уровни потребления. В частности, для уменьшения потребления встроенной флэш-памяти в ARM-микроконтроллерах STM предусмотрено три режима ее работы а, следовательно, и потребления тока: пакетный, экономичный и режим выключенного питания Flash.

Еще одной особенностью ARM-микроконтроллеров STM, способствующей их эффективности, является двойственная архитектура, основанная на использовании двойственных шин периферийных устройств (APB).

Наличие таких шин позволяет лучше наладить синхронизацию работы периферии. Последовательная периферия совместно использует шину APB1. Периферия реального времени и таймеры совместно используют шину APB2. При таком построении для оптимизации потребления и производительности одна шина APB может быть замедлена, в то время как вторая будет работать быстро.

Двойственность архитектуры проявляется и в наличии двух независимых внутренних стабилизаторов напряжения. Имеется основной стабилизатор напряжения (выключаемый в режиме STANDBY) и экономичный дополнительный стаблизатор напряжения (маломощный).

Не будем забывать, что компания STM является признанным лидером в области разработки и производства микросхем памяти, в том числе и для встраиваемых устройств.

Поэтому все микроконтроллеры STM оснащены Flash-памятью высочайшего класса.

В ARM-микроконтроллерах имеется встраиваемая Flash-память, изготавливаемая литографией с разрешением 0,18 мкм, рассчитанная на 100 к циклов перезаписи, в составе двух банков памяти: основного размером до 256 кбайт для программного кода и вспомогательного с низкой латентностью размером 16 кбайт для данных. Наличие двух банков позволяет обеспечить функцию чтения во время записи, т. е. считывание одного банка во время записи другого.

К основным параметрам Flash-памяти ARM-микроконтроллеров STM относятся:

  • лучшее в своем классе Flash-памяти время произвольного доступа в 30 нс;
  • обеспечение прямого доступа на частоте до 36 Гц для чисто детерминированного поведения;
  • наличие опции аппаратной акселерации на частоте до 50 МГц (ширина Flash 64 бит);
  • универсальность программирования: прикладное программирование IAP (Чтение во время Записи) и внутрисхемное программирование (ISP) посредством интерфейса JTAG.
  • возможность секторной защиты записи для предотвращения нежелательной записи;
  • наличие модульной защиты доступа для предотвращения компьютерного пиратства.

Второй серией ARM-микроконтроллеров STM, доступных в настоящее время потребителю, является серия STR73xFxxx. Эта серия, в отличие от первой, в большей степени нацелена на применение в промышленных приложениях. В качестве основных платформ для применения для нее предполагаются: промышленная электроника (электрокоммутационное оборудование, системы автоматизации, бытовая автоматизация, логические контроллеры и т. д.), электроприборы и высоковольтное оборудование переменного тока, управление электродвигателями, торговое оборудование и т. д. Поэтому в этой серии увеличено до трех число интерфейсов CAN, увеличено число последовательных интерфейсов до 12, возросли возможности по ШИМ модулям, таймерам/счетчикам и расширен рабочий температурный диапазон вверх до +105 °С.

Вместо 12-разрядного 4-канального АЦП встроен 10-разрядный 12- или 16-канальный АЦП и есть ряд других особенностей. Блок-схема микроконтроллеров данной серии приведена на рис. 2.

Блок-схема серии микроконтроллеров STR73xFxx
Рис. 2. Блок-схема серии микроконтроллеров STR73xFxx

Серия STR73xFxxx — это новый этап в развитии ARM-микроконтроллеров STM.

Основными отличительными характеристиками данной серии являются:

  • рабочая частота ядра ARM7 36 МГц— нет режима ожидания, а, следовательно, чисто детерминированная работа;
  • одноканальное питание 5 В, которое является «родным» для индустриальных приложений;
  • до 20 таймеров, до 16 каналов ШИМ, до 3 интерфейсов CAN — самый большой набор периферии, что способствует снижению системной стоимости;
  • внутренний RC-генератор (32 кГц или 2 МГц);
  • до 112 портов входа/выхода общего пользования (GPIO);
  • до 16 каналов прямого доступа к памяти (DMA), что снижает нагрузку центрального процессора и обеспечивает оптимизацию доступа к памяти;
  • расширенный рабочий температурный диапазон: от –40 до 105 °С;
  • 10-разрядный 12-ти или 16-ти канальный АЦП со временем преобразования в 3 мкс;
  • встроенный загрузчик, который дает гибкость для программирования;
  • корпус TQFP 100.

Сравнивая технические характеристики ARM-микроконтроллеров STM с аналогичными устройствами компаний Freescale (табл. 2), Atmel (табл. 3), Philips (табл. 4) и др., можно сделать определенные выводы.

Таблица 2. 32-Bit микроконтроллеры FREESCALE с ядром ARM: семейство MAC7100 для автоэлектроники

Таблица 3. ARM микроконтроллеры компании ATMEL

Тип Частота
МГц
ОЗУ
кБайт
ПЗУ
кБайт
Внешняя
шина
Порты 16-bit
таймер
I/O Особенности Корпус
AT91M40800 40 8 - Y 2xUART 3 32   QFP100
AT91R40008 70 256 - Y 2xUART 3 32   QFP100
AT91FR4042 70 256 512 Y 2xUART 3 32   BGA121
AT91FR40162 70 256 2048 Y 2xUART 3 32   BGA121
AT91M42800A 33 8 - Y 2xUART
2xSPI
6 54 PIT, RTT QFP144
BGA144
AT91M55800A 33 8 - Y 3xUART
SPI
6 58 RTC, 8ch 10bit ADC, 2ch 10bit DAC QFP176
BGA176
AT91RM3400 66 96 256* N 4xEUART, SPI
TWI, SSC
USB Device
6 63 PIT, RTC, RTT QFP100
AT91C140 36 16 1* Y 2xUSART, SPI
2xEthernet
3 48 SDRAM инткрфейс BGA256
AT91SAM7A1 40 4 - Y 3xUART, SPI
CAN
9 49 4 PWM, 8ch 10bit ADC QFP144
AT91SAM7A2 30 16 - Y 2xUART, SPI
4xCAN
10 57 16ch 10bit ADC QFP176
AT91SAM7A3 60 32 256 N 4xEUART, 2xSPI
TWI, SSC, MCI
CAN, USB Device
9 62 8 PWM, 16ch 10bit ADC, RTT, PIT, Power-On Reset, On-Chip RC Osc. QFP100
AT91SAM7S32 55 8 32 N EUART, SPI
TWI, SSC
3 21 4 PWM, 8ch 10bit ADC, RTT, PIT, Power-On Reset, On-Chip RC Osc. QFP48
AT91SAM7S321 55 8 32 N EUART, SPI
TWI, SSC
USB
3 32 4 PWM, 8ch 10bit ADC, RTT, PIT, Power-On Reset, On-Chip RC Osc. LQFP 64
AT91SAM7S64 55 16 64 N 2xEUART, SPI
TWI, SSC
USB Device
3 32 4 PWM, 8ch 10bit ADC, RTT, PIT, Power-On Reset, On-Chip RC Osc. QFP64
AT91SAM7S128 55 32 128 N 2xEUART, SPI
TWI, SSC
USB Device
3 32 4 PWM, 8ch 10bit ADC, RTT, PIT, Power-On Reset, On-Chip RC Osc. QFP64
AT91SAM7S256 55 64 256 N 2xEUART, SPI
TWI, SSC
USB Device
3 32 4 PWM, 8ch 10bit ADC, RTT, PIT, Power-On Reset, On-Chip RC Osc. QFP64
AT91S7X128 55 32 128 N 2xEUSART, SPI
TWI, SSC
CAN, Ethernet
USB Device
3 60 4 PWM, 8ch 10bit ADC, RTT, PIT, Power-On Reset, On-Chip RC Osc. QFP100
AT91S7X256 55 64 256 N 2xEUSART, SPI
TWI, SSC
CAN, Ethernet
USB Device
3 60 4 PWM, 8ch 10bit ADC, RTT, PIT, Power-On Reset, On-Chip RC Osc. QFP100
AT91SAM7SE32 48 8 32 EBI 3xУСАПП, USB, TWI, I2S (SSC), SPI 3-16-bit 32 4 PWM, 8ch 10bit ADC, 11-ch PDC, RTT LBGA144 LQFP128
AT91SAM7SE256 48 32 256 EBI 3xУСАПП, USB, TWI, I2S (SSC), SPI 3-16-bit 88 4 PWM, 8ch 10bit ADC, 11-ch PDC, RTT LBGA144 LQFP128
AT91SAM7SE512 48 32 512 EBI 3xУСАПП, USB, TWI, I2S (SSC), SPI 3-16-bit 88 4 PWM, 8ch 10bit ADC, 11-ch PDC, RTT LBGA144 LQFP128
AT91RM9200 180 16 128* Y 4xEUART, SPI
TWI, 3xSSC
MCI, USB Device
2xUSB Host
Ethernet
6 94 RTC, RTT, PIT, SDRAM интерфейс QFP208
BGA256
AT91SAM9260 200 2x4 32 Y USB 2.0 13 96 SSC, TWI, 4xУСАПП, PDC, 1 4x10 ADC PQFP208, LFBGA217
AT91SAM9261 180 160 32* Y 3xEUART, 3xSPI
TWI, 3xSSC
MCI, USB Device
2xUSB Host
3 96 RTT, PIT, SDRAM интерфейс BGA217
AT91SAM9263 200 80 2x16 Y 1xCAN, 1xEthernet MAC, 4xUART, USB Device
2xUSB Host, 4xPWM, 2xSPI, 22xPDC
3 160 2xRTT, PIT, 2xSSC, TWI, 2xMCI, Image Sensor Interface, LCD Controller, 2xExternal Bus Interface, 2xSDRAM Interface, Crystal Oscillator TFBGA 324

Таблица 4. 16/32-разрядные микроконтроллеры PHILIPS с ядром ARM7TDMI-S (1.8V): семейство LPC2000

Тип VCC
CPU/I-O
Частота
МГц
RAM Flash I/O Последовательные
интерфейсы
Таймера ADC Корпус
LPC2101 3,3 70 8Kb 2Kb 32 2xI2C, 2xUARTs, SPI, 1 SPI/SSP 2x16bit 2x32bit RTC WDT 8ch 10bit PLCC44, LPFP48
LPC2102 3,3 70 16Kb 4Kb 32 2xI2C, 2xUARTs, SPI, 1 SPI/SSP 2x16bit 2x32bit RTC WDT 8ch 10bit PLCC44, LPFP48
LPC2103 3,3 70 32Kb 8Kb 32 2xI2C, 2xUARTs, SPI, 1 SPI/SSP 2x16bit 2x32bit RTC WDT 8ch 10bit PLCC44, LPFP48
LPC2104 1,8/3,3 60 16Kb 128Kb 32 2xUART I2C SPI 4x16bit
6ch PWM
  LQFP48
LPC2105 1,8/3,3 60 32Kb 128Kb 32 2xUART I2C SPI 4x16bit
6ch PWM
  LQFP48
LPC2106 1,8/3,3 60 64Kb 128Kb 32 2xUART I2C SPI 4x16bit
6ch PWM
  LQFP48
LPC2106FBD48 1,8/3,3 60 64Kb 128Kb 32 2xUART I2C SPI -
6ch PWM
  LQFP48
LPC2114 1,8/3,3 60 16Kb 128Kb 46 2xUART I2C 2xSPI 4x16bit
6ch PWM
4ch 10bit
2,4µs
LQFP64
LPC2119 1,8/3,3 60 16Kb 128Kb 46 2xUART I2C 2xSPI 4x16bit
6ch PWM
4ch 10bit
2,4µs
LQFP64
LPC2124 1,8/3,3 60 16Kb 256Kb 46 2xUART I2C 2xSPI 4x16bit
6ch PWM
4ch 10bit
2,4µs
LQFP64
LPC2129 1,8/3,3 60 16Kb 256Kb 46 2xUART I2C 2xSPI 4x16bit
6ch PWM
4ch 10bit
2,4µs
LQFP64
LPC2131FBD64 3,3 60 8Kb 32Kb 46 2xUART 2xI2C 2xSPI 4x16bit
6ch PWM
8ch 10bit LQFP64
LPC2132FBD64 3,3 60 16Kb 64Kb 46 2xUART 2xI2C 2xSPI 4x16bit
6ch PWM
8ch 10bit LQFP64
LPC2134FBD64 3,3 60 16Kb 128Kb 46 2xUART 2xI2C 2xSPI 4x16bit
6ch PWM
8ch 10bit LQFP64
LPC2136FBD64 3,3 60 32Kb 256Kb 46 2xUART 2xI2C 2xSPI 4x16bit
6ch PWM
8ch 10bit LQFP64
LPC2138FBD64 3,3 60 32Kb 512Kb 46 2xUART 2xI2C 2xSPI 4x16bit
6ch PWM
8ch 10bit LQFP64
LPC2141 3,0-3,3 60 8Kb 32Kb 45 2xI2C, 2xUARTs, SPI, 1 SPI/SSP 2x32bit, PWM WDT RTC 6ch 10bit LQFP-64, SOT314-2
LPC2142 3,0-3,3 60 16Kb 64Kb 45 2xI2C, 2xUARTs, SPI, 1 SPI/SSP 2x32bit, PWM WDT RTC 6ch 10bit (1x10 bit DAC) LQFP-64, SOT314-2
LPC2144 3,0-3,3 60 16Kb 128Kb 45 2xI2C, 2xUARTs, SPI, 1 SPI/SSP 2x32bit, PWM WDT RTC 14ch 10bit (1x10 bit DAC) LQFP-64, SOT314-2
LPC2146 3,0-3,3 60 32 kB + 8 kB shared with USB DMA 256Kb 45 2xI2C, 2xUARTs, SPI, 1 SPI/SSP 2x32bit, PWM WDT RTC 14ch 10bit (1x10 bit DAC) LQFP-64, SOT314-2
LPC2148 3,0-3,3 6 32 kB + 8 kB shared with USB DMA 512Kb 45 2xI2C, 2xUARTs, SPI, 1 SPI/SSP 2x32bit, PWM WDT RTC 14ch 10bit (1x10 bit DAC) LQFP-64, SOT314-2
LPC2194 1,8/3,3 60 16Kb 256Kb 46 2xCAN 2xUART
I2C 2xSPI
4x16bit
6ch PWM
4ch 10bit
2,4µs
LQFP64
LPC2210 1,8/3,3 60 16Kb - 112 2xUART I2C 2xSPI 4x16bit
6ch PWM
8ch 10bit
2,4µs
LQFP144
LPC2212 1,8/3,3 60 16Kb 128Kb 112 2xUART I2C 2xSPI 4x16bit
6ch PWM
8ch 10bit
2,4µs
LQFP144
LPC2214 1,8/3,3 60 16Kb 256Kb 112 2xUART I2C 2xSPI 4x16bit
6ch PWM
8ch 10bit
2,4µs
LQFP144
LPC2220 1,8/3,3 60 64Kb - 112 2xUART I2C 2xSPI 4x16bit
6ch PWM
8ch 10bit
2,4µs
LQFP144
TFBGA144
LPC2290 1,8/3,3 60 16Kb - 112 2xUART I2C 2xSPI 4x16bit
6ch PWM
8ch 10bit
2,4µs
LQFP144
LPC2292 1,8/3,3 60 16Kb 256Kb 112 2xCAN 2xUART I2C 2xSPI 4x16bit
6ch PWM
8ch 10bit
2,4µs
LQFP144
LPC2294 1,8/3,3 60 16Kb 256Kb 112 4xCAN 2xUART I2C 2xSPI 4x16bit
6ch PWM
8ch 10bit
2,4µs
LQFP144

Если для 8-разрядных приложений производители микроконтроллеров вплотную подошли к созданию универсального устройства на все случаи жизни, например, семейство микроконтроллеров мPSD STMicroelectronics, то для 32-разрядных приложений до этого еще далеко. У каждого производителя ARM-микроконтроллеров есть свои «изюминки» в области встраиваемой периферии, направленные на их использовании в тех или иных конкретных прикладных приложениях. В основном это можно объяснить нацеленностью компаний на те или иные сектора рынка приложений для разрабатываемых устройств.

Компания STMicroelectronics исторически ориентировалась на сектор изделий для массового потребления, поэтому, отвечая потребностям этой части рынка электронных компонентов, она внедрила в свои ARM-микроконтроллеры интерфейсы Smart-Card, BSPI, USB и HDLC, а для индустриальных приложений резко увеличила число ШИМ-модулей, таймеров и последовательных интерфейсов.

Компания Freescale всегда была сильна своими предложениями для автоэлектроники, и не случайно ее первое семейство микроконтроллеров ARM оборудовано четырьмя CAN интерфейсами. Это единственная компания, в которой на настоящий момент есть ARM-микроконтроллеры с рабочей температурой до +125 °С.

Микросхемы компании Atmel широко используются в телекоммуникационном оборудовании, и она одной из первых начала встраивать в свои ARM-микроконтроллеры модули Ethernet MAC 10/100. У нее же можно найти и микроконтроллер не только с АЦП, но и с ЦАП. Здесь надо сказать, что уже большинство производителей отказалось выпускать микроконтроллеры с ЦАП ради удешевления микросхем и в связи с тем, что большинство задач аналогового управления решается на основе использования модулей ШИМ вместо ЦАП.

Компания Philips одна из первых освоила производство ARM микроконтроллеров и последовательно расширяет их семейство.

По сравнению с STM, в устройствах Philips менее разнообразна периферия, которая «посажена» на общую шину, больше время доступа к Flash памяти (50 мс), менее гибкое энергопотребление, но есть версии с ЦАП, с 4 CAN и облегченные версии в корпусах с 48 и даже 28 выводами.

Несмотря на краткость проведенного сравнения технических характеристик ARM-микроконтроллеров различных фирм, можно сделать вывод о том, что ARM-микроконтроллеры компании STM ни в чем не уступают, а по некоторым позициям превосходят аналогичные устройства других производителей.

Возвращаясь к вопросу о выборе микроконтроллера, необходимо заметить, что кроме технических характеристик, надо иметь в виду и некоторые другие аспекты.

Во-первых, это сочетание технических возможностей микроконтроллера и его системной стоимости, с учетом спецификации всех компонентов и особенностей технологического процесса. Например, в 32-разрядных приложениях, чем больше технических возможностей микроконтроллера, тем большее число выводов у его корпуса и с учетом требований низкопрофильности и миниатюрности компонентов, производители упаковывают такие устройства в корпуса типа BGA сшариковыми выводами или просто с матрицей точечных контактов. В настоящее время еще не все российские предприятия готовы работать с такими корпусами. Применение для монтажа таких корпусов многослойных плат и особая тщательность разводки дополнительно увеличивают системную стоимость. Стоимость монтажа прибора в корпусе BGA намного выше, чем в корпусах QFP.

Во-вторых, это поддержка микроконтроллера не только аппаратно-программными средствами разработки, но и доступными библиотеками программного обеспечения встроенной периферии. Как отмечалось выше, аппаратно-программные средства для всех рассмотренных микроконтроллеров разных фирм однотипные. Различие только в оценочных платах с установленными на них соответствующими микроконтроллерами.

Благодаря тесному партнерству компаний STM и ARM, микроконтроллеры STM обеспечены недорогим оценочным комплектом ARM RealView® специально предназначенным для серии STR7хх. В состав этого комплекта входит популярное программное обеспечение ARM RealView Developer Suite® и соответствующее техническое оборудование.

Перечень доступных отладочных средств, которые поставляются через дистрибьюторов ST представлен в таблице 5.

Таблица 5

Обозначение Описание
Стартовые комплекты (Starter kits)
STR711-SK/IAR
STR712-SK/IAR
STR730-SK/IAR
Комплект для быстрого старта от IAR, включающий IAR embedded workbench для ARM (EWARM – версия с ограничением размера кода в 32K), внутрисхемный эмулятор J-Link (USB/JTAG), а также демонстрационные платы IAR
STR71x-SK/RAIS Стартовый комплект REva от Raisonance, включающий RIDE (версия с ограничением размера кода в 16K) с компилятором GNU C/C++ , отладчик, внутрисхемный эмулятор RLink (USB/JTAG), демонстрационная материнская и дочерняя платы для STR711F и STR712
STR730-SK/RAIS Стартовый комплект REva от Raisonance, включающий RIDE (версия с ограничением размера кода в 16K) с компилятором GNU C/C++ , отладчик, внутрисхемный эмулятор RLink (USB/JTAG), демонстрационная материнская и дочерняя платы для STR730F
STR710-SK/HIT Стартовый комплект ARM от Hitex, включающий HiTOP5 (версия с ограничением размера кода в 16K) с компилятором GNU C/C++ , отладчик, внутрисхемный эмулятор Tantino (USB/JTAG), оценочная плата для STR710F
STR730-SK/HIT Стартовый комплект ARM от Hitex, включающий HiTOP5 (версия с ограничением размера кода в 16K) с компилятором GNU C/C++ , отладчик, внутрисхемный эмулятор Tantino (USB/JTAG), оценочная плата для STR730F
Оценочная плата развития
STR710-EVAL Оценочная плата развития для серии STR71xF
STR730-EVAL/WS Оценочная плата развития для серии STR73xF с сокетом для микроконтроллера
Программное обеспечение RVDK
STR7-RVDK Комплект разработчика ARM RealView для ST и ARM7TM, включающий технические средства RealView ICE Micro Edition. Без ограничений по времени
STR7-RVDK/BAS Комплект разработчика ARM RealView для ST. Базовая версия для ARM7 с техническими средствами RealView ICE Micro Edition. Лицензия на год и меньшая стоимость
STR-RVICE/ME Технические средства эмулятора RealView ICE Micro Edition с предварительной версией на CD (оценочная версия на 45 дней)
STR-RVDK/CPP Факультативная поддержка C++

Вопрос о доступности библиотек программного обеспечения периферии более сложен. Чаще всего, он связан с подписанием соответствующих соглашений и дополнительными затратами. И в этом отношении обеспеченность ARM микроконтроллеров STM вне конкуренции. На специализированном сайте компании STM, посвященном микроконтроллерам, их применению и поддержке разработчиков http://mcu.st.com, кроме описаний микроконтроллеров, примеров их применения и другой литературы, для разработчиков свободно доступна для копирования вся библиотека программ на языке Си для всех периферийных устройств. Для каждой серии имеется два пакета программ: стандартная библиотека и библиотека для USB.

Для каждого встроенного периферийного устройства имеется пример применения. Библиотеки абсолютно независимы от используемого программного обеспечения, работают с платами развития для микроконтроллеров STM, но могут быть легко приспособлены к другим аппаратным средствам.

Каковы перспективы развития 32-разрядных ARM микроконтроллеров? Высокая экономичность и хорошая рентабельность микроконтроллерных ядер ARM позволяют надеяться, что рыночный спрос на микросхемы на их основе будет постоянно возрастать в самых разнообразных областях применения.

Так, компания Freescale уже приступила к производству нового семейства ARM микроконтроллеров для применения в сотовых телефонах. Некоторые из производителей (например, ATMEL) начали производство микроконтроллеров на основе ядра ARM9, а другие, в том числе и STM, планируют их производство уже в текущем году. А это означает, что производительность микроконтроллеров вырастет до 80 MIPS на частоте до 100 МГц, встроенный модуль Ethernet МАС станет нормой, появятся новые встроенные интерфейсы и новые возможности.

Анатолий ЮДИН, к. т. н.


Статьи по: ARM PIC AVR MSP430, DSP, RF компоненты, Преобразование и коммутация речевых сигналов, Аналоговая техника, ADC, DAC, PLD, FPGA, MOSFET, IGBT, Дискретные полупрoводниковые приборы. Sensor, Проектирование и технология, LCD, LCM, LED. Оптоэлектроника и ВОЛС, Дистрибуция электронных компонентов, Оборудование и измерительная техника, Пассивные элементы и коммутационные устройства, Системы идентификации и защиты информации, Корпуса, Печатные платы

Design by GAW.RU