Interested Article - Intel 8051

Intel 8051 — это однокристальный микроконтроллер гарвардской архитектуры , который был впервые произведен Intel в 1980 году для использования во встраиваемых системах . В течение 1980-х и начале 1990-х годов был чрезвычайно популярен, однако позже устарел и был вытеснен более современными устройствами, также с 8051-совместимыми ядрами, производившимися более чем 20 независимыми производителями, такими, как Atmel , Maxim / Dallas , NXP , , Silicon Labs , Texas Instruments , и Nuvoton .

Официальное название 8051-семейства микроконтроллеров Intel — MCS 51 . Существует также советский клон данной микросхемы — КР1816ВЕ51 и российские аналоги разработки НИИЭТ — 1830ВЕ, 1882ВЕ, 1882ВМ, К1830ВЕ.

Первые из 8051-семейства Intel производились с использованием n-МОП технологии, но следующие версии, содержащие символ «C» в названии, такие, как 80C51, использовали КМОП -технологию и потребляли меньшую мощность, чем n-МОП предшественники, что облегчало их применение для устройств с батарейным питанием.

Особенности

Архитектура Intel 8051

Общей особенностью в современных 8051-совместимых микроконтроллерах стало встраивание улучшенных и дополнительных схем, таких, как: автоматический сброс по падению питающего напряжения; встроенные тактовые генераторы ; внутрисхемное программирование памяти программ; автозагрузчики долговременной памяти данных на основе EEPROM ; I²C ; SPI (стандарт 3-проводной последовательной шины); USB хост-интерфейс; ШИМ -генераторы; аналоговых компараторов ; АЦП и ЦАП преобразователей; часов реального времени; дополнительных таймеров и счётчиков; внутрисхемных отладчиков, дополнительных источников прерываний; расширенных энергосберегающих режимов.

8051-совместимые микроконтроллеры обычно имеют один или два УАПП ( UART ), два или три таймера, 128 или 256 байт встроенной ОЗУ (16 байт которой имеют побитовую адресацию), от 512 байт до 128 Кбайт встроенной памяти программ, и иногда встречается использование EEPROM , адресуемой через «регистры специального назначения» (SFR = special function register). УАПП / UART может быть настроен для использования в режиме 9-бит данных, что делает возможным адресную приёмопередачу в многоточечном подключении на основе RS-485 аппаратного протокола.

Один машинный цикл оригинального 8051-ядра занимает 12 временных тактов, а большинство инструкций выполняется за один или два машинных цикла. При частоте тактового генератора, равной 12 МГц, 8051-ядро может выполнять 1 миллион операций в секунду , выполняемых за один цикл, или 500 тысяч операций в секунду, выполняемых за два цикла. Улучшенное 8051-совместимое ядро, которое в настоящее время распространено, выполняет машинный цикл за шесть, четыре, два или даже за один временной такт, и позволяет использовать тактовые генераторы с частотой до 100 МГц, что позволило увеличить количество выполняемых операций в секунду.

Ещё более быстрые 8051-ядра, с 1 тактом на машинный цикл, организуются с использованием ПЛИС , таких, как FPGA (скорость в диапазоне 130—150 МГц) или ASIC (скорость в диапазоне нескольких сотен МГц), при помощи специальной прошивки . Все 8051-совместимые устройства, производимые Silicon Labs , некоторые из производимых Dallas , Atmel , Nuvoton , имеют ядро с 1 тактом на машинный цикл.

Чрезвычайно полезной особенностью 8051-ядра является обработка булевых данных, что позволило ввести бинарную логику, оперирующую напрямую с битами внутренней ОЗУ (области из 128 прямоадресуемых битов) и регистров. Данная особенность была востребована в приложениях промышленной автоматики . Еще одна ценная особенность состояла в 4 независимых наборах регистров , которые значительно уменьшали задержки при обработке прерываний в сравнении с классическим использованием стека , применявшимся ранее.

Родственные контроллеры

Предшественником контроллера 8051 был Intel 8048 , который был применён в клавиатуре оригинального IBM PC — он конвертировал сигналы о нажатиях клавиш в поток данных, передававшийся по последовательной линии в системный блок компьютера. Контроллер 8048, а также контроллеры, спроектированные на его базе, всё ещё применяются в клавиатурах.

Контроллер 8031 является урезанной версией Intel 8051: у него отсутствует встроенная память для хранения программы.

Контроллер 8052 является расширенной версией оригинального Intel 8051: он оснащён 256 байтами внутреннего ОЗУ (вместо 128 байт 8051), 8 КБ ПЗУ (вместо 4 КБ), также ему добавлен третий 16-разрядный таймер.

Контроллер 8058 отличается от 8052 увеличенным до 32 КБ ПЗУ.

Контроллер 8032 аналогичен 8052, но не имеет встроенной памяти для хранения программы. Контроллеры 8052 и 8032 считаются устаревшими, так как почти все современные варианты 8051 оснащены теми расширениями, которыми обладает 8052.

Программирование

Для 8051 доступно несколько компиляторов для языка программирования Си , в частности, Keil, большинство из которых поддерживают расширения языка для более эффективного использования особенностей 8051. Например, программист может указать, в каком из шести типов памяти 8051 необходимо хранить переменную; компилятору можно указать, каким образом использовать переключаемые регистровые блоки и инструкции для манипулирования отдельными разрядами регистров.

Для программирования 8051 используются и другие языки высокого уровня: Форт , Бейсик , Паскаль , PL/M и Modula-2 , однако они не получили такого широкого распространения, как Си и ассемблер .

Применение

Вычислительное ядро до сих пор широко применяется в различных микроконтроллерах общего и специального назначения с различным набором периферии.

Литература

  • Боборыкин А. В.; Липовецкий Г. П. и др. Однокристальные микроЭВМ. Справочник. — М. : Бином, 1994. — 400 с. — ISBN 5-85959-030-X .
  • Сташин В. В.; Урусов А. В.; Мологонцева О.Ф. Проектирование цифровых устройств на однокристальных микроконтроллерах. — М. : Энергоатомиздат, 1990. — 224 с. — 70 000 экз. ISBN 5-283-01543-2 .

Ссылки

  • (англ.)
  • (англ.)
  • (англ.)
  • (англ.)
  • (англ.)
  • (англ.)
  • (англ.)
  • (англ.)

Примечания

  1. Bob Koehler. . — Santa Clara: Intel Corporation, 1980. 13 октября 2011 года.
  2. Примеры можно увидеть на
Источник —

Same as Intel 8051