Открыть сервис

68HC11

68HC11 — это 8-битный микроконтроллер семейства M68HC, разработанный компанией Motorola (впоследствии Freescale Semiconductor, ныне NXP Semiconductors). Представленный в 1985 году, он стал одним из первых микроконтроллеров с встроенной памятью EEPROM и усовершенствованной системой команд, что сделало его популярным в образовательных и промышленных приложениях, а также в системах управления автомобилями и бытовой техникой.

История

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

Микроконтроллер быстро завоевал популярность благодаря своей надёжности и простоте использования. В 1990-е годы он активно применялся в учебных курсах по микропроцессорной технике, особенно в университетах США и Европы. В России 68HC11 также использовался в образовательных целях, а также в промышленных контроллерах и системах управления автомобилями (например, в некоторых моделях Ford и General Motors). После поглощения Freescale компанией NXP в 2015 году производство 68HC11 было прекращено, однако он остаётся востребованным в ретро-вычислительной технике и любительских проектах.

Архитектура

68HC11 построен на 8-битной архитектуре с гарвардским принципом разделения памяти команд и данных (хотя в некоторых модификациях используется фон-неймановская архитектура). Он включает в себя центральный процессор (CPU), оперативную память (RAM), постоянную память (ROM или EPROM), а также набор периферийных модулей.

Центральный процессор

CPU 68HC11 имеет 8-битное арифметико-логическое устройство (АЛУ), 16-битный индексный регистр (X), 16-битный указатель стека (SP) и 16-битный счётчик команд (PC). Регистры общего назначения включают два аккумулятора (A и B), которые могут объединяться в 16-битный регистр D. Система команд включает 91 базовую инструкцию, поддерживающую операции с байтами, словами и битами.

Память

Объём встроенной памяти варьируется в зависимости от модели:

  • RAM: от 256 байт до 1 КБ.
  • ROM/EPROM: от 4 КБ до 32 КБ.
  • EEPROM: до 512 байт (в моделях с индексом «E», например, 68HC11E9).

Внешняя память адресуется через 16-битную шину, что позволяет подключать до 64 КБ памяти (включая встроенную). Для расширения адресного пространства используется банковская переключение (bank switching) в некоторых модификациях.

Периферийные модули

68HC11 включает следующие встроенные периферийные устройства:

  • Таймеры: 16-битный таймер с тремя каналами захвата/сравнения и одним каналом импульсного накопления.
  • Последовательные интерфейсы: асинхронный (SCI) и синхронный (SPI).
  • Аналого-цифровой преобразователь (АЦП): 8-канальный, 8-битный, с частотой преобразования до 20 кГц.
  • Порты ввода/вывода: до 38 линий общего назначения, организованных в 5 портов (A, B, C, D, E).
  • Система прерываний: 16 уровней приоритетов, включая внешние и внутренние источники.

Классификация

68HC11 выпускался в нескольких вариантах, различающихся типом памяти и корпусом:

  • 68HC11A8: 8 КБ ROM, 256 байт RAM, 512 байт EEPROM.
  • 68HC11E9: 12 КБ EPROM, 512 байт RAM, 512 байт EEPROM.
  • 68HC11F1: без встроенной ROM, 1 КБ RAM, 512 байт EEPROM (предназначен для внешней памяти).
  • 68HC11K4: 24 КБ ROM, 768 байт RAM, 640 байт EEPROM.

Корпуса включали DIP-40, PLCC-44 и QFP-64. Для промышленных применений выпускались версии с расширенным температурным диапазоном (-40°C до +85°C).

Применение

Благодаря низкому энергопотреблению (типично 15 мА при 5 В) и встроенному АЦП, 68HC11 нашёл применение в различных областях:

  • Автомобильная электроника: системы управления двигателем (ECU), антиблокировочные тормозные системы (ABS), подушки безопасности.
  • Бытовая техника: микроволновые печи, стиральные машины, кондиционеры.
  • Промышленные контроллеры: программируемые логические контроллеры (ПЛК) малой мощности, системы управления станками.
  • Образование: популярные учебные платы (например, Motorola HC11 Evaluation Board) для изучения микроконтроллеров и ассемблера.
  • Хобби и ретро-вычислительная техника: любительские проекты, эмуляторы и реставрация старого оборудования.

Разработка и программирование

Программирование 68HC11 осуществляется на ассемблере или языках высокого уровня (C, Forth). Для разработки использовались следующие инструменты:

  • Ассемблеры: Motorola AS11 (в составе пакета M68HC11 Development Kit), GNU AS (с поддержкой архитектуры HC11).
  • Компиляторы C: IAR Embedded Workbench, Cosmic C, GCC (через порт для HC11).
  • Отладчики: аппаратные эмуляторы (например, Motorola M68HC11EVB), симуляторы (например, VICE).
  • Программаторы: параллельные (для EPROM) и последовательные (для EEPROM) устройства, такие как Motorola M68HC11PGM.

Для загрузки программ в EEPROM использовался специальный загрузчик (bootloader), который мог быть активирован через последовательный порт.

Критика и ограничения

Несмотря на популярность, 68HC11 имел ряд недостатков:

  • Низкая производительность: тактовая частота не превышала 4 МГц, что ограничивало применение в задачах реального времени.
  • Ограниченная память: максимальный объём встроенной ROM (32 КБ) был недостаточным для сложных проектов.
  • Сложность расширения: внешняя память требовала дополнительных микросхем и увеличивала стоимость.
  • Отсутствие встроенного USB: для связи с компьютером требовался преобразователь интерфейсов.
  • Устаревшая архитектура: к 2000-м годам 68HC11 был вытеснен более современными микроконтроллерами (например, AVR, PIC, ARM Cortex-M).

Интересные факты

  • 68HC11 стал основой для первого в мире коммерческого микроконтроллера с встроенной EEPROM — модели 68HC11A8.
  • В 1990-е годы на базе 68HC11 был создан бортовой компьютер для космических аппаратов NASA (например, в программе «Mars Pathfinder»).
  • Микроконтроллер использовался в некоторых моделях игровых автоматов (например, в аркадных системах Sega).
  • В России 68HC11 применялся в учебных лабораториях МГТУ им. Н. Э. Баумана и МИФИ для курсов по микропроцессорной технике.

Источники

  • Motorola. M68HC11 Reference Manual (1991). Motorola Inc.
  • Freescale Semiconductor. HC11 Microcontrollers Data Sheet (2004). Freescale Semiconductor, Inc.
  • Peatman, J. B. Design with Microcontrollers (1997). McGraw-Hill.
  • Valvano, J. W. Embedded Microcomputer Systems: Real Time Interfacing (1999). Brooks/Cole.
  • Техническая документация Motorola (архив NXP Semiconductors).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →