Анализ применимости микроконтроллеров во встраиваемых системах контроля и управления

С.В. Каверин, Ю.Г. Тетенькин

АНАЛИЗ ПРИМЕНИМОСТИ МИКРОКОНТРОЛЛЕРОВ ВО ВСТРАИВАЕМЫХ СИСТЕМАХ КОНТРОЛЯ И УПРАВЛЕНИЯ

Ключевые слова: микроконтроллер, флэш-память, периферийное

оборудование, микросхема, полупроводниковые радиокомпоненты.

Аннотация

Авторы проводят анализ тенденций использования 8-32-разрядных МК в современных промышленных многоуровневых системах сбора и обмена данными.

Постоянное развитие рынка предъявляет растущие требования к встраиваемым системам управления и контроля. Например, обычная задача контроллера управления станком ЧПУ до недавнего времени сводилась к функциям конечного автомата, выполняющего небольшое количество команд, воспринимающего сигналы различных датчиков и индицирующего состояние устройства на нескольких светодиодах. Микроконтроллеры (МК) современных станков ЧПУ по весьма сложным алгоритмам управляют электроприводом для минимизации расхода электроэнергии, контролируют теплофизические параметры режущего инструмента с целью оптимизации процесса обработки детали, выводят информацию на графический дисплей и поддерживают сетевые коммуникации технологической линии. Для решения совокупности подобных задач производительности 8-разрядных МК часто уже бывает недостаточно.

После выхода на рынок первого промышленного микропроцессора 8080 компании Intel развитие последующих поколений пошло по двум главным направлениям. С одной стороны, находятся такие мощные вычислительные устройства, как Pentium компании Intel или процессоры 680x0 компании Motorola, которые используются в персональных компьютерах, рабочих станциях, а также реализуются в архитектуре компьютеров со сложным набором команд CISC (Complex Instruction Set Computer). С другой стороны, обозначилась большая потребность в простых МК, для которых компактность и возможность управления набором несложных периферийных устройств важнее их вычислительной мощности.

По цене также наметилась существенная разница. В то время как процессоры, наподобие Pentium, вследствие сложного устройства и дорогостоящего процесса изготовления предлагаются по цене в несколько сотен долларов, стоимость однокристалльного МК находится в пределах от 1 до 25 долларов.

С учетом обширной области применения и, соответственно, больших объемов продаж однокристалльных МК, нет ничего удивительного в том, что практически каждый изготовитель полупроводниковых радиокомпонентов предлагает на рынке свой собственный "чип" [1-5]. Тем не менее в восьмидесятые годы на рынок смог продвинуться главным образом восьмиразрядный процессор 8051 компании Intel со всеми его вариациями.

Несмотря на то, что со временем на рынке появился конкурирующий 16-разрядный МК, i8051 по-прежнему является весьма востребованным, хотя в последнее время его и потеснили восьмиразрядные RISC-контроллеры нового поколения. К таким МК, к примеру, относится семейство PIC компании-изготовителя Microchip, а также семейство AVR компании Atmel.

Революция в мире МК произошла в 1996 году, когда корпорация Atmel представила свое семейство чипов на новом прогрессивном ядре AVR. Более продуманная архитектура AVR, быстродействие, превосходящее контроллеры Microchip, привлекательная ценовая политика способствовали быстрому росту симпатий

разработчиков систем управления и контроля.

Микроконтроллеры AVR имеют развитую систему команд, насчитывающую до 133 инструкций, производительность, приближающуюся к 1 MIPS на каждый 1 МГц тактовой частоты, Flash ПЗУ программ с возможностью внутрисхемного перепрограммирования. Многие чипы имеют функцию самопрограммирования, все кристаллы семейства совместимы "снизу вверх".

Система команд и внутреннее устройство чипов AVR разрабатывались совместно с фирмой IAR Systems - производителем компиляторов языков программирования С/С++, что обеспечило уникальные характеристики этих МК. В результате для AVR стало возможным получать высокую плотность кода при использовании языков высокого уровня, практически не теряя в производительности по сравнению с программами, написанными на низкоуровневом языке Ассемблера.

Огромную роль в популярности микроконтроллеров AVR играет фактор бесплатности программного обеспечения и средств поддержки разработки. Хорошо известно, что развитые средства поддержки разработок при освоении и знакомстве с любым МК семейством играют не менее значимую роль, чем сами кристаллы. Немаловажным является и то, что для программирования AVR можно обойтись вовсе без аппаратного программатора, используя COM-порт персонального компьютера.

Как показал анализ информации, выложенной на сайтах основных дистрибьюторов радиоэлектронных компонентов в РФ, таких как "Телесистемы" (http:/www/telesys.ru), "Чип и Дип" (http:/www/chipdip.ru), в настоящее время микроконтроллеры AVR являются одними из самых популярных в России. Этот факт косвенно подтверждается структурой предложений торговой Интернет-сети e-Find.ru (более 230 on-line магазинов). Благодаря комбинации прогрессивной архитектуры RISC и программируемой флэш-памяти EPROM фирма Atmel установила новые масштабы в соотношении цены, функциональности и производительности.

В настоящее время в рамках единой базовой архитектуры микроконтроллеры AVR подразделяются на несколько семейств:

- Tiny AVR;

- Mega AVR;

- Mega AVR для специальных предложений.

Микроконтроллеры первого семейства предназначены для так называемых бюджетных решений, принимаемых в условиях жестких финансовых ограничений. МК реализованы в корпусах с малым количеством выводов, имеют малые объемы flash-памяти программ (до 8 кбайт) и ОЗУ, довольно ограниченную периферию. Область применения этих МК - интеллектуальные датчики, различная бытовая техника, игрушки и другие подобные решения.

Микроконтроллеры семейства Mega имеют весьма развитую периферию, наибольшие среди всех AVR объемы памяти программ и данных. Они предназначены для использования в мобильных телефонах, контроллерах различного периферийного оборудования, в сложной измерительной и управляющей технике и т.д. МК поддерживают несколько режимов пониженного энергопотребления, имеют блок прерываний, сторожевой таймер и допускают программирование непосредственно в готовом устройстве.

Самые простые МК этого семейства типа даже с учетом современного мирового кризиса и падения курса рубля типа ATmega48 стоят в розницу 40-50 рублей, а самые сложные типа ATmega2561 - 350-450 рублей, в зависимости от типа корпуса, диапазона питающих напряжений и рабочих температур, максимальной тактовой частоты.

Всего несколько лет назад понятия "32-разрядный МК" и "низкая стоимость" были абсолютно несовместимыми. Цена на 32-разрядные устройства была на порядок больше по сравнению с ценой на 8-разрядные. Однако ситуация кардинально изменилась, когда в

2004 году компания Atmel выпустила на рынок семейство микроконтроллеров AT91SAM7S, цены на которые начинались от нескольких долларов, т.е. напрямую конкурировали с ценами на 8 разрядные микросхемы [6,7]. С 2005 года компания Philips начала выпуск МК LPC2101/02/03, нацеленных уже на рынок так называемых долларовых приложений - в оптовых количествах цена МК LPC2101 составляет немногим больше одного доллара. В 2006 году компания Luminary выпустила серию Stellaris LM3S1xx, которая также имеет цену уже в пределах одного доллара. С тех пор разница в стоимости уже не является определяющим фактором при выборе между 8- и 32-разрядным МК.

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

В качестве примера рассмотрим микроконтроллер LPC2148 компании NXP (Philips). Структура микроконтроллера представлена на рисунке. Микросхема имеет следующие основные характеристики и функциональные возможности:

- ядро ARM7TDMIS с поддержкой 16-разрядного набора инструкций Thumb;

- максимальная тактовая частота 60 МГц;

- энергонезависимая память FLASH объёмом 512 Кб со встроенной 128-битной шиной для ускорения доступа;

- внутрисистемное программирование FLASH (ISP/IAP), обеспечивающее полное стирание за 400 мс, запись 256 байт за 1 мс;

- ОЗУ объёмом 40 Кб;

- встроенные ресурсы JTAG эмулятора и трассировщика;

- интерфейс USB 2.0 Full Speed (12 МГц), 8 Кб ОЗУ для данных USB с доступом через канал прямого доступа к памяти (DMA);

- универсальные последовательные периферийные модули: два UART, два I2C, SPI и SSP с буферированием и настройкой длины формата данных;

- два десятиразрядных 14 входовых АЦП со временем преобразования 2,44 мкс на

канал;

- 10-разрядный ЦАП;

- два 32-разрядных таймера/счётчика (по четыре канала выборки и сравнения), модуль ШИМ (6 каналов), сторожевой таймер (WDT);

- часы реального времени с независимым питанием и тактовой частотой 32 кГц;

- интегрированный генератор для работы с кварцами 1-25 МГц;

- режимы энергосбережения Idle и Powerdown;

- индивидуальное управление питанием периферийных устройств для оптимизации потребляемой энергии;

- детектор пропадания напряжения питания (BOD);

- встроенная система сброса по включению питания;

- единственный источник питания 3,3 В ± 10%.

ЙЗЙиМбО

Рисунок - Структура микроконтроллера LPC2148 компании NXP

Микросхема LPC2148 даёт хорошее представление о функциональных возможностях современных 32-разрядных МК. Даже при беглом взгляде на структурную схему МК, приведённую на рисунке, виден привычный набор периферии, характерный для большинства

8-разрядных МК из популярных семейств 8051, AVR, РІС, НС08. Но ни в одном из них невозможно обнаружить все перечисленные выше возможности, реализованные в одной микросхеме.

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

Рассматривать другие варианты в качестве альтернативы имеет смысл только при чрезвычайно жёстких требованиях к энергопотреблению. Для таких случаев можно подобрать 8- или 16-разрядный МК, заметно превосходящий по показателю

энергопотребления любой из микроконтроллеров ARM.

Библиографический список

1 Семенов Б.Ю. Микроконтроллеры MSP430: первое знакомство. - М.: Солон-пресс, 2006. - 128 с.

2 Евстифеев А.В. Микроконтроллеры AVR семейства Mega. Руководство пользователя. - М.: Изд. дом Додэка- XXI, 2007 . - 592 с.

3 Трамперт В. AVR-RISC микроконтроллеры / Пер. с нем. - К.: МК-Пресс, 2006. -

464 с.

4 Тавернье К. PIC-микроконтроллеры. Практика применения / Пер. с фр. - М.: ДМК Пресс, 2004. - 272 с.

5 Предко М. Справочник по PIC-микроконтроллерам / Пер. с англ. - М.: ДМК Пресс, 2006. - 512 с.

6 Сравнительный анализ микроконтроллеров с ядром ARM// www.compel.ru.

7 Сравнительный анализ современных 8- и 32-разрядных микроконтроллеров//www.phuton.ru.