Ø 4 - битные
MARC4 - семейство 4-х разрядных однокристальных микроконтроллеров, в основу которого положено 4-х битное стек-ориентированное ядро Гарвардской архитектуры с физически разделенными памятью программ и памятью данных. Микроконтроллеры MARC4 содержат на кристалле до 8К памяти программ ROM, 256 бит статической памяти данных SRAM, параллельные порты ввода/вывода, 8-разрядный многофункциональный таймер/счетчик, супервизор напряжения, интервальный таймер с функциями сторожевого таймера и сложный тактовый генератор. M44Cx92 и T48C89x имеют третий 8-битный таймер/счетчик с функциями захвата/сравнения и модуляции/демодуляции. M44C89х и T48C89х содержат блок энергонезависимой памяти данных EEPROM. Все микроконтроллеры семейства MARC4 (кроме M44C510E и T48C510), имеют синхронный последовательный интерфейс SSI.
Три независимые шины (команд, памяти и ввода/вывода) используются для параллельной связи между ROM, SRAM и узлами периферии. Благодаря одновременной предварительной выборке команд и передаче данных на узлы периферии, архитектура MARC4 позволят увеличить скорость выполнения программы. Сложный контроллер прерываний имеет несколько уровней приоритета и позволяет быстро обслуживать многочисленные источники - запросы на прерывание (до 14). Низкое рабочее напряжение и малое энергопотребление кристаллов MARC4 идеально подходят для портативных и носимых применений, в том числе и с батарейным питанием. Эти микросхемы успешно применяются в различных областях: инфракрасный и радиочастотный обмен данными, удаленный контроль и управление, встраиваемые применения, и т. д. (например, в качестве контроллеров клавиатуры, драйвера жидкокристаллических и светодиодных индикаторов, считывателя Smart Cards и т.д.).
|
Кристаллы T48Cx9x / M44Cx9x семейства MARC4 выпускаются для работы в расширенных температурных диапазонах - автомобильном (-40С...+125С) и индустриальном (-40С... +85С). Это позволяет использовать MARC4 в электронных блоках управления работой двигателя автомобиля, в системах бортовой электроники (мониторинг давления в шинах, управление вентиляцией, отоплением или интегрированными антеннами), а также для применения в индустриальных датчиках. В подобных системах 4-х битные микроконтроллеры T48Cx9x/ M44Cx9x семейства MARC4 фирмы Atmel имеют ряд преимуществ по сравнению, например, с 8-битными микроконтроллерами: чрезвычайно низкий ток потребления и оптимальную комбинацию нескольких специализированных периферийных узлов на кристалле.
Микросхемы T48Cx9x (MTP /Flash версия) рекомендуется использовать для опытного и малосерийного производства, а микроконтроллеры M44Cx9x-H / M44Cx9x-V (ROM версия) предназначены для серийного производства. Образцы кристаллов доступны и могут быть заказаны через официальных дистрибьюторов Atmel Corp.
MARC4 также используются для построения считывателей Smart Cards (или чип-карт). Существуют два типа чип-карт: синхронные и асинхронные, различающиеся типом электронного интерфейса. Синхронные чип-карты могут хранить небольшую информацию, их также называют "карты памяти". Асинхронные карты уже включают в себя микроконтроллер с тактовой частотой от 1 МГц до 5 МГц и ориентированы на специальные применения. Микроконтроллер может, например, обеспечивать процесс кодирования для предотвращения несанкционированного доступа к данным, осуществлять идентификацию владельца карты и т.д. Поскольку в асинхронных картах для передачи данных через порт ввода/вывода необходим системный тактовый генератор, то это может обеспечиваться таймером 1 микроконтроллера семейства MARC4 (например, M44C510). Тактовая частота на входе чип-карты делится для последовательного интерфейса ввода/вывода на целое число F, обычно принимаемое равным 372 и 512. Скорость передачи при этом рассчитывается как fCLK/F, формат данных соответствует интерфейсу V.24.
|
Для программирования микроконтроллеров MARC4 разработано программное обеспечение для платформы PC с компилятором языка высокого уровня qFORTH. Существует также плата аппаратного внутрисхемного эмулятора. Архитектура MARC4 позволяет использовать для разработки проектов язык высокого уровня без потери эффективности и плотности программного кода.
Ø 8 – битные
Микроконтроллеры ST, выпускаемые франко-итальянским концерном ST-Microelectronics, противостоящего засилию американских компаний-производителей МК на европейском рынке, включают в себя три 8-разрядных семейства ST6, ST7 и ST9. Для всех микроконтроллеров ST, благодаря введению схем входной фильтрации и шумовой режекции, характерна высокая устойчивость к внешним электромагнитным помехам.
ST6
Статические микроконтроллеры ST6 предназначены для относительно простых применений, связанных с контролем и обработкой аналоговых сигналов.
Процессорное ядро, построенное на гарвардской архитектуре, содержит регистр аккумулятор, два 8-разрядных регистра косвенной адресации, два 8-разрядных регистра общего назначения и аппаратный 6-уровневый стек. Счётчик команд непосредственно адресует 2 Кбайт памяти программ и до 20 Кбайт в расширенном режиме.
|
Система команд содержит всего 40 инструкций, требующих для своего выполнения от 2 до 5 машинных циклов. Микроконтроллеры ST6 демонстрируют рекордно низкую производительность, стандартный машинный цикл занимает 1,625 мкс при тактовой частоте 8 МГц. Команды битовых операций включают инструкции установки и сброса бита в любой ячейке ОЗУ.
Почти все микроконтроллеры ST6 (23 модели из 25) имеют встроенный аналогово-цифровой преобразователь с разрядностью 8 бит и числом каналов от 4 до 16. Цикл преобразования АЦП длится 70 мкс и завершается запросом прерывания.
Таймерный блок содержит 1 или 2 8-разрядных таймера с программируемым делителем. МК ST6 используют 8-разрядный таймер, реализующий функции выходного сравнения, входного захвата, перезагрузки таймера при поступлении внешнего события, ШИМ с автоперезагрузкой. В простых версиях микроконтроллеров он заменяется несложным 8-разрядным таймером с возможностью внешнего тактирования и измерения периода внешнего сигнала.
Интересной особенностью параллельных портов ввода/вывода является то, что любая линия ввода/вывода может служить источником внешнего прерывания.
Большинство микроконтроллеров не требуют применения внешних супервизорных схем и даже вообще внешних компонентов. На кристалле реализованы схема сброса по включению и понижению напряжения питания, сторожевой таймер и внутренний тактовый генератор частотой 400 кГц, который также может исполнять роль вспомогательного генератора при пропадании внешней тактовой частоты.
Системы последовательных интерфейсов представлены у некоторых версий МК синхронным SPI и асинхронным UART.
Емкость памяти программ ST6 составляет от 1 до 8 Кбайт, ёмкость ОЗУ - от 64 до 128 байт у МК общего назначения и до 320 байт у микроконтроллеров со встроенными контроллерами LCD-модулей. Ряд МК имеет EEPROM данных объёмом 64 и 128 байт.
Микроконтроллеры ST6 выпускаются в дешёвых 16/20/28-корпусах, за исключением МК, предназначенных для работы с ЖК-дисплеями.
Стандартный диапазон питания от 3 до 6 В.
ST7
Микроконтроллеры семейства ST7 имеют некоторое сходство с MC68HC05/08 фирмы MOTOROLA и могут быть ориентированы на те же области применения. Недаром ST-Microelectronics сравнивает свои МК с продукцией MOTOROLA, подчеркивая, что ST7 успешно конкурируют с MC68HC08 и уж точно работают в 4 раза быстрее, чем HC05.
Процессор ST7 содержит регистр-аккумулятор, два индексных регистра X и Y, регистр состояния процессора, счётчик команд, адресующий 64 Кбайт памяти, 16-разрядный указатель стека, в котором доступен почему-то только младший байт (остальные 8 бит аппаратно установлены в "1", надо полагать, для будущего расширения). В зависимости от версии микроконтроллера, максимальный размер стека составляет 64 или 256 байт.
Система команд включает в себя 63 инструкции длиной от 1 до 4 байт. Специальный префиксный байт, употребляемый в некоторых командах, служит для расширения стандартной 256-байт сетки команд 8-разрядных МК. Минимальное время исполнения 1-байт команды составляет 250 нс при внутренней тактовой частоте 8 МГц. В систему команд входят битовые операции и операция беззнакового умножения 8*8.
ST7 является самым многочисленным семейством и насчитывает по меньшей мере 50 представителей, которых можно разделить на следующие группы:
· базовые микроконтроллеры общего применения с 1 или 2 таймерными модулями, SPI и SCI;
· микроконтроллеры, предназначенные для обработки аналоговых сигналов, которые добавляют ко всему вышеперечисленному 8-разрядный АЦП с количеством каналов от 6 до 8, со временем преобразования 64 машинных цикла. Ряд моделей содержит встроенное EEPROM данных;
· группы МК, имеющие в своем составе, кроме SPI и SCI, дополнительные последовательные интерфейсы: IIC (скорость передачи данных до 400 Кбит/c) и CAN (до 1 Мбит/c, USB со скоростью 1,5 Мбит/c);
· специализированные микроконтроллеры.
Емкость однократно программируемого или FLASH ПЗУ составляет от 4 до 60 Кбайт, ёмкость ОЗУ - от 256 байт до 2 Кбайт. Версии с FLASH ПЗУ имеют возможность внутрисхемного программирования. Большинство микроконтроллеров выпускается в пластиковых корпусах с количеством выводов 28/32/42. В зависимости от модели, часть или все линии параллельных портов ввода/вывода могут программироваться как источники внешних прерываний.
Таймерный модуль строится на основе 16-разрядного, так называемого "free-running" таймера (таймер без опции останова/запуска, включающийся после рестарта МК, в дальнейшем его состояние можно только считать, а содержимое - только сбросить) с программируемым предделителем. Таймерный модуль может работать в одном из трёх режимов: ШИМ, выходное сравнение (2 канала), входной захват (2 канала), формирование на внешнем выводе импульса заданной длины при наступлении внешнего события.
Как и младшее семейство ST6, большинство микроконтроллеров ST7 не требует применения внешних супервизорных схем, интегрируя на кристалле сторожевой таймер, схему сброса по включению и понижению питания, вспомогательный внутренний тактовый генератор.
Микроконтроллеры ST7 работают в диапазоне напряжений питания 3-5 В.
ST9
ST9 - самое высокопроизводительное семейство 8-разрядных микроконтроллеров ST-Microelectronics, насчитывающее сегодня 10 представителей. Гарвардское процессорное ядро имеет раздельные адресные шины для памяти программ, данных и регистрового файла. Регистровый файл, заменивший прежнюю аккумуляторную структуру, состоит из 256 регистров, разделённых на 16 банков, включая 202 рабочих и 16 системных регистров, в том числе и 16-разрядный указатель стека. Каждый рабочий регистр или регистровая пара может работать как аккумулятор, 8-16-разрядный регистр общего назначения или как косвенный указатель адреса. При адресации регистрового файла используются длинная (до 256 регистров) и короткая (до 16 регистров) адресации, позволяющие оптимизировать длину команды. Для каждого периферийного устройства отведены блоки из 16 регистров, располагающиеся в одном адресном пространстве и доступные в страничном режиме. Кроме основного системного стека реализован также дополнительный стек пользователя.
Модуль управления памятью адресует по 22-разрядной адресной шине до 4 Мбайт линейных памяти программ и данных.
Для работы с операндами используются 14 способов адресации, в том числе, индексная с предекрементом, индексная с постинкрементом, задание в адресном поле команды адреса источников операндов и адреса сохранения результата, а также битовая адресация для локализации бита в любом регистре или ячейке ОЗУ.
Система команд состоит из 94 инструкций, имеющих длину от 1 до 5 байт и выполняющихся за 4-16 машинных тактов. В зависимости от версии микроконтроллера, внутренняя тактовая частота может составлять 16 или 24 МГц, с машинным циклом процессора 62 и 41 нс, соответственно. Многие команды поддерживают 16-бит операции, такие как пересылка 16-разрядных слов, арифметические, логические и сдвиговые операции с 16-разрядными операндами, в том числе, операции деления 16/8 и 32/16. Заслуживают внимания специальные команды, заменяющие сразу несколько стековых операций, используемых Си-компилятором.
Периферийные устройства включают в себя:
· 8-разрядный АЦП с числом каналов от 8 до 16 и функцией выборки/хранения. Преобразование выполняется за 138 машинных циклов;
· 2 аналоговых сторожевых блока, которые отслеживают изменения напряжения на внешних выводах и формируют сигнал прерывания при выходе входного напряжения за предельные величины, запрограммированные заранее;
· многофункциональный таймерный блок, построенный на основе 16-разрядного таймера, имеет два 16-разрядных регистра сравнения, два 16-разрядных регистра захвата/перезагрузки и может работать в 12 различных режимах, включая широтно-импульсную модуляцию, измерение внешней частоты, входной захват и выходное сравнение, автодискриминатор (подсчёт фазового сдвига между двумя входными сигналами) и так далее. В некоторых моделях микроконтроллеров может быть до двух многофункциональных таймерных блоков и до двух более простых таймерных модулей на основе 16-разрядного таймера-счётчика с предделителем;
· сторожевой таймер, сформированный на основе дополнительного 16-разрядного таймера, который также может использоваться в обычном режиме;
· последовательные интерфейсы: SCI, IIC со скоро-стью передачи до 400 Кбод, синхронный SPI, а также, для некоторых версий, USB-интерфейс;
· контроллер прямого доступа к памяти ПДП включает по два канала обмена данными с системой последовательного интерфейса (приёмник, передатчик) и по два канала с каждым многофункциональным таймером (захват, сравнение). Контроллер ПДП обеспечивает пересылку данных между периферийными устройствами и памятью блоками до 64 Кбайт и регистровым файлом - блоками до 208 байт;
· блок аппаратных прерываний поддерживает до 8 внешних прерываний. Ряд моделей использует 14 дополнительных внешних источников прерываний с функцией wake-up.
Кроме стандартного "спящего" режима и останова, для уменьшения энергопотребления микроконтроллеры ST9 реализуют также режим программного снижения тактовой частоты. Используемый тактовый блок может не только программно делить внешнюю частоту, но также и умножать её для получения внутренней тактовой частоты 16-24 МГц от внешнего кварцевого резонатора, работающего на частоте 3?5 МГц.
Микроконтроллеры ST9 имеют объём внутреннего ПЗУ от 16 до 128 Кбайт и ОЗУ - от 512 до 2 Кбайт. МК ST92F120V1 имеет встроенный EEPROM данных ёмкостью 1 Кбайт. За исключением одной модели, все микроконтроллеры ST9 выпускаются в многовыводных корпусах типа QFP с числом выводов от 80 до 156.
Отладочные средства представлены стандартным набором ассемблеров, Си-компиляторов, а также рядом программаторов и эмуляторов, поддерживаемых третьими фирмами.
Ø 16 – битные
Компания Microchip Technology Inc. производит два семейства 16-разрядных микроконтроллеров (MCU) и два семейства 16-разрядных цифровых сигнальных контроллеров (DSC), которые дают разработчикам совместимые платформы с обширным выбором типов корпусов, периферийных модулей и быстродействия. Общие атрибуты всех 16-разрядных семейств — это совместимость по выводам, общая система команд и, соответственно, общие компиляторы Си и средства разработки. Широкая линейка 16-битных контроллеров включает контроллеры от 18 до 100 выводов с объёмом flash-памяти от 6 Кб до 536 Кб.