Конструирование и производство Электронно-вычислительной техники

Обзор современных моделей микроконтроллеров MCS-51

Ранее уже упоминались некоторые базовые модели семейства MCS-51 разработки Intel. Напомним, что модели отличаются типом РПП (по послендним цифрам обозначения):

  • 31 – без резидентной памяти программ;
  • 51 – с РПП однократного электрического программирования;
  • 751 – с РПП на основе репрограммируемого ПЗУ с ультрафиолетовым стиранием.

Остальные характеристики в этих моделях совпадают с базовой моделью. В контроллерах с цифрами 52/752 реализован еще один таймер – Т2, который функционирует в 16-битовой конфигурации и обеспечивает такие режимы:

  • автоперезагрузка 16-битового стартового числа; – захват текущего содержимого счетных регистров по внешнему сигналу, т.е. копирование состояния таймера в специальную пару регистров;
  • генерация внешних импульсов;
  • тактирование порта UART.

Существенным недостатком всех контроллеров MCS-51 младших моделей является сложная технология перепрограммирования РПП – контроллер нужно извлекать из схемы, использовать специальные программаторы.

Данная проблема впервые была устранена в контроллерах семейства хх89xxxxx, в частности, в МК AT89xxxxx, разработанных фирмой Atmel, благодаря использованию Flash-памяти программ. Это позволяет выполнять перепрограммирование контроллеров непосредственно в целевой системе, в том числе в процессе работы. Такая возможность получила название ISP – in-system programmability.

Технология ISP может быть реализована в двух вариантах:

  1. через последовательный интерфейс SPI – serial peripheral interface, для которого использованы несколько линий порта P1; SPI реализован в моделях AT89Sxxxx; интерфейс SPI может также использоваться для обмена данными между двумя и более микроконтроллерами;
  2. через последовательный порт UART, который переводится в режим программирования; для поддержки процесса используется также специальная загрузочная программа, предварительно размещенная во Flash-памяти; эта технология реализована, в частности, в модели AT89C5115.

Микроконтроллеры с обозначением AT89Cxxxx программируются через параллельный интерфейс, для которого используются практически все линии портов. Процедура выполняется на внешних программаторах, т.е. возможность ISP не поддерживается. Flash-память микроконтроллеров AT89 может быть перепрограммирована до 1000 раз, что существенно удешевляет процесс отладки программного обеспечения на реальной системе. Особенность протокола программирования Flash – стирание и перезапись всего массива памяти.

Другие возможности, реализованные в различных моделях серии AT89:

  • расширенное внутренне ОЗУ – до 256 байт;
  • наличие памяти XRAM – дополнительное ОЗУ на кристалле, по способу доступа соответствующее внешней памяти – т.е. по командам MOVX;
  • энергонезависимая память данных типа EEPROM; в отличие от Flash, допускает перезапись каждой отдельной ячейки непосредственно из прикладной программы;
  • количество циклов перезаписи – до 100000 раз;
  • WD – сторожевой таймер (Watchdog Timer), сигнал переполнения с которого вызывает «сброс» процессора; таким образом предотвращается «зависание» программы;
  • PCA – programmable counter array – многорежимные программируемые таймеры, обычно используемые в системах управления как ШИМ-генераторы;
  • наличие двух регистров DPTR – во всех моделях AT89Sxxxx.

Микроконтроллеры AT89 имеют единственное ограничение их широкого использования в системах сбора аналоговых данных – отсутствие встроенного АЦП (кроме моделей AT89C5115 и AT89C51AC2 – в которых реализован АЦП, но определенной проблемой является загрузка программ через UART).

Поэтому достаточно большую популярность для создания систем сбора аналоговых данных приобрели микроконтроллеры ADuC8xx фирмы Analog Devices. Дополнительно к уже упомянутым возможностям в этих МК реализованы (в модели ADuC812): 8-канальный 12-разрядный АЦП с временем преобразования 5 мкс, два потенциальных 12-разрядных ЦАП, шинный последовательный интерфейс I2C.

Большое разнообразие Flash-микроконтроллеров создано фирмой Philips. В контроллерах семейства P89C51Rx+ реализованы объемы Flash от 8к до 64к, WDT, PCA, XRAM, 8- и 10-разрядные АЦП, 8-разрядные ЦАП, ШИМ, интерфейсы программирования – SPI, шинные – I2C и CAN.

Сравнительно недавно появилась на рынке очень разнообразная серия МК MCS-51 разработки фирмы Silicon Labs – обозначение C8051Fxxx. По ресурсам они даже превосходят упомянутые МК Philips (РПП до 128К, РПД до 4К, быстродействие до 100MIPS, два многоканальных (8..24)-разрядных АЦП со скоростью 100–500ksps, 12-разрядные ЦАП, интерфейсы JTAG и USB).

Из других производителей, выпускающих МК семейства MCS-51, можно упомянуть Winbond, ISSI, SST, Cygnal и др.