Intel 8051
Intel 8051 — это однокристальный 8-битный микроконтроллер, выпущенный корпорацией Intel в 1980 году. Относится к семейству MCS-51 (Microcontroller System 51) и является одним из наиболее известных и широко используемых микроконтроллеров в истории вычислительной техники. Архитектура 8051, основанная на гарвардской модели с раздельной памятью программ и данных, стала де-факто стандартом для встраиваемых систем, породив множество совместимых по командам и выводам клонов от различных производителей (Atmel, Philips, Silicon Labs, Dallas Semiconductor и других).
История
Предпосылки и разработка
В конце 1970-х годов рынок микропроцессоров и микроконтроллеров бурно развивался. Intel уже имела успешные микропроцессоры 8080 и 8085, а также первый в мире однокристальный микроконтроллер — Intel 8048 (1976 год). Однако 8048 имел ограниченные возможности: небольшой объём памяти (1 КБ ПЗУ, 64 байта ОЗУ), ограниченное количество портов ввода-вывода и отсутствие встроенного последовательного интерфейса. Для более сложных задач требовалась более мощная и гибкая архитектура.
Разработка 8051 велась под руководством инженера Джона Уайта (John Wharton) и была завершена в 1980 году. Микроконтроллер был представлен как часть семейства MCS-51, которое включало несколько модификаций, различающихся типом и объёмом памяти.
Выпуск и распространение
Первоначально Intel выпускала 8051 в корпусе DIP-40 (Dual In-line Package, 40 выводов). Микроконтроллер имел встроенное ПЗУ (ROM) объёмом 4 КБ, маскированное на заводе, и 128 байт ОЗУ. Для разработки и отладки использовалась версия 8051 с кварцевым резонатором и внешней памятью. Благодаря удачному сочетанию производительности, периферии и простоты программирования, 8051 быстро завоевал популярность в промышленности, бытовой технике, автомобилестроении и телекоммуникациях.
В 1985 году Intel представила версию 8052 с увеличенным объёмом ОЗУ (256 байт) и дополнительным таймером. В 1987 году появилась версия 8051 с энергонезависимой памятью EPROM (8751), что позволило перепрограммировать микроконтроллер.
Лицензирование и клоны
В середине 1980-х годов Intel начала лицензировать архитектуру 8051 другим производителям. Это привело к появлению многочисленных клонов, которые часто превосходили оригинал по характеристикам: увеличению тактовой частоты, объёму памяти, набору периферии (АЦП, ШИМ, интерфейсы I²C, SPI). Наиболее известные производители клонов: Atmel (серия AT89), Philips (серия P89), Dallas Semiconductor (серия DS89), Silicon Labs (серия C8051). В России и странах СНГ также выпускались аналоги — например, микроконтроллеры КР1816ВЕ51 (советский аналог 8051).
Архитектура и устройство
Гарвардская архитектура
Intel 8051 построен по гарвардской архитектуре, то есть имеет раздельные адресные пространства для памяти программ (ПЗУ) и памяти данных (ОЗУ). Это позволяет одновременно обращаться к командам и данным, что повышает производительность. Адресация памяти программ — 16-битная (до 64 КБ), памяти данных — 8-битная (до 256 байт внутреннего ОЗУ и до 64 КБ внешнего ОЗУ).
Центральный процессор (CPU)
ЦПУ 8051 является 8-битным, с тактовой частотой до 12 МГц (в оригинале) и до 40 МГц в более поздних версиях. Архитектура включает:
- Аккумулятор (A) — основной 8-битный регистр для арифметических и логических операций.
- Регистр B — вспомогательный регистр для умножения и деления.
- Регистр состояния (PSW) — содержит флаги (перенос, нуль, переполнение, чётность).
- Указатель стека (SP) — 8-битный, адресует стек в ОЗУ.
- Два 16-битных регистра-указателя (DPTR) — для адресации внешней памяти.
- Счётчик команд (PC) — 16-битный, указывает на текущую команду.
Память
- Внутреннее ПЗУ (ROM/EPROM/Flash) — 4 КБ (в 8051), 8 КБ (в 8052). В современных клонах — до 64 КБ.
- Внутреннее ОЗУ (RAM) — 128 байт (8051), 256 байт (8052). Первые 32 байта организованы как 4 банка регистров (R0–R7), следующие 16 байт — бит-адресуемая область.
- Внешняя память — подключается через порты P0 и P2, адресуется до 64 КБ ПЗУ и 64 КБ ОЗУ.
Порты ввода-вывода
Микроконтроллер имеет 4 8-битных порта ввода-вывода (P0–P3), всего 32 линии. Каждый порт может быть настроен как вход или выход. Порт P0 используется для мультиплексирования адреса/данных при работе с внешней памятью, порт P2 — для старшего байта адреса, порт P3 — для альтернативных функций (последовательный интерфейс, внешние прерывания, таймеры).
Периферия
- Два 16-битных таймера/счётчика (T0 и T1) — используются для измерения времени, генерации задержек, счёта событий.
- Последовательный интерфейс (UART) — полнодуплексный, асинхронный, с программируемой скоростью передачи (до 115200 бит/с).
- Внешние прерывания (INT0 и INT1) — два входа для обработки внешних сигналов.
- Встроенный тактовый генератор — требует внешнего кварцевого резонатора (обычно 12 МГц) или RC-цепи.
Система команд
Система команд 8051 включает 111 инструкций, большинство из которых выполняются за 1–2 машинных цикла (12 тактов кварца). Команды делятся на группы:
- Пересылка данных — MOV, MOVX, MOVC, PUSH, POP.
- Арифметические — ADD, SUBB, INC, DEC, MUL, DIV.
- Логические — ANL, ORL, XRL, CLR, CPL.
- Передачи управления — JMP, CALL, RET, SJMP, AJMP, LJMP, условные переходы (JZ, JNZ, JC, JNC).
- Битовые операции — SETB, CLR, JB, JNB, JBC.
Классификация и модификации
Семейство MCS-51 включает несколько базовых моделей:
- 8051 — базовая модель с 4 КБ ПЗУ, 128 байт ОЗУ, 2 таймерами.
- 8052 — с 8 КБ ПЗУ, 256 байт ОЗУ, 3 таймерами.
- 8031 — версия без встроенного ПЗУ (требует внешнюю память программ).
- 8751 — с EPROM (стираемая ультрафиолетом) вместо ПЗУ.
- 89C51 — с Flash-памятью (Atmel, современный клон).
Применение
Intel 8051 и его клоны нашли широкое применение в различных областях:
- Промышленная автоматика — контроллеры для управления станками, конвейерами, роботами.
- Бытовая техника — стиральные машины, микроволновые печи, холодильники, телевизоры.
- Автомобильная электроника — блоки управления двигателем, системы зажигания, иммобилайзеры.
- Телекоммуникации — модемы, факсы, телефонные аппараты.
- Медицинская техника — тонометры, глюкометры, кардиомониторы.
- Образование — используется для обучения программированию микроконтроллеров в университетах и техникумах.
Значение и наследие
Intel 8051 стал одним из самых успешных микроконтроллеров в истории. Его архитектура оказала огромное влияние на развитие встраиваемых систем. Простота, низкая стоимость и широкая доступность сделали его стандартом де-факто для многих поколений инженеров. Даже спустя более 40 лет после выпуска, 8051 продолжает использоваться в промышленности, хотя и уступает по производительности более современным архитектурам (ARM, AVR, PIC). Многие современные микроконтроллеры, такие как STM32, используют концепции, заложенные в 8051: гарвардскую архитектуру, встроенную периферию, битовые операции.
Интересные факты
- Оригинальный Intel 8051 выпускался по КМОП-технологии (HMOS) и потреблял около 100 мА при частоте 12 МГц.
- В 1980-х годах 8051 использовался в компьютерах IBM PC для управления клавиатурой (в составе контроллера клавиатуры 8042).
- Существует множество бесплатных и коммерческих сред разработки для 8051, включая Keil C51, IAR Embedded Workbench, SDCC (Small Device C Compiler).
- Архитектура 8051 поддерживается симуляторами, такими как Proteus, что позволяет разрабатывать и отлаживать программы без физического микроконтроллера.
Источники
- Intel MCS-51 Microcontroller Family User’s Manual (1980)
- John Wharton. «The 8051 Microcontroller: A History» (1995)
- «Микроконтроллеры семейства MCS-51» — учебное пособие, МИЭТ, 2005
- «The 8051 Microcontroller: Architecture, Programming, and Applications» — Kenneth J. Ayala
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →