Однокристальный микроконтроллер
- 1 year ago
- 0
- 0
Микроконтро́ллер ( англ. Micro Controller Unit, MCU ) — микросхема , предназначенная для управления электронными устройствами .
Типичный микроконтроллер сочетает на одном кристалле функции процессора и периферийных устройств , содержит ОЗУ и/или ПЗУ . По сути, это однокристальный компьютер , способный выполнять относительно простые задачи.
Отличается от микропроцессора интегрированными в микросхему устройствами ввода-вывода, таймерами и другими периферийными устройствами.
С появлением однокристальных микроЭВМ связывают начало эры массового применения компьютерной автоматизации в области управления. По-видимому [ источник не указан 1453 дня ] , это обстоятельство и определило термин «контроллер» ( англ. controller — регулятор, управляющее устройство).
В связи со спадом отечественного производства и возросшим импортом техники, в том числе вычислительной, термин «микроконтроллер» (МК) вытеснил из употребления ранее использовавшийся термин «однокристальная микроЭВМ».
Первый патент на однокристальную микроЭВМ был выдан в 1971 году инженерам Майклу Кокрэну и Гэри Буну, сотрудникам американской Texas Instruments . Именно они предложили на одном кристалле разместить не только процессор, но и память с устройствами ввода-вывода.
В 1976 году американская фирма Intel выпускает микроконтроллер i8048 . В 1978 году фирма Motorola выпустила свой первый микроконтроллер MC6801, совместимый по системе команд с выпущенным ранее микропроцессором MC6800. В 1980 году Intel выпускает следующий микроконтроллер: i8051 . Удачный набор периферийных устройств, возможность гибкого выбора внешней или внутренней программной памяти и приемлемая цена обеспечили этому микроконтроллеру успех на рынке. С точки зрения технологии микроконтроллер i8051 являлся для своего времени очень сложным изделием — в кристалле было использовано 128 тыс. транзисторов , что в 4 раза превышало количество транзисторов в 16-разрядном микропроцессоре i8086 .
В СССР велись разработки оригинальных микроконтроллеров, также осваивался выпуск клонов наиболее удачных зарубежных образцов . В 1979 году в СССР НИИ ТТ разработали однокристальную 16-разрядную ЭВМ К1801ВЕ1 , микроархитектура которой получила название « Электроника НЦ ».
На 2013 год существовало более 200 модификаций микроконтроллеров, совместимых с i8051, выпускавшихся двумя десятками компаний, и большое количество микроконтроллеров других типов. Популярностью у разработчиков пользуются 8-битные, 16-битные и 32-битные микроконтроллеры PIC фирмы Microchip Technology , микроконтроллеры AVR фирмы Atmel (с 2016 года производятся фирмой Microchip ), 16-битные MSP430 фирмы TI , а также 32-битные микроконтроллеры архитектуры ARM , которую разрабатывает фирма ARM Limited и продаёт лицензии другим фирмам для их производства. Несмотря на популярность в России микроконтроллеров, упомянутых выше, на 2009 год мировой рейтинг по объёму продаж, по данным Gartner Group, выглядел иначе: первое место с большим отрывом занимала Renesas Electronics , на втором — Freescale , на третьем — Samsung , затем шли Microchip и TI, далее — все остальные .
При проектировании микроконтроллеров приходится соблюдать компромисс между размерами и стоимостью с одной стороны и гибкостью и производительностью с другой. Для разных приложений оптимальное соотношение этих и других параметров может различаться очень сильно. Поэтому существует огромное количество типов микроконтроллеров, различающихся архитектурой процессорного модуля, размером и типом встроенной памяти, набором периферийных устройств, типом корпуса и т. д.
В отличие от обычных компьютерных микропроцессоров, в микроконтроллерах часто используется гарвардская архитектура памяти, то есть раздельное хранение данных в ОЗУ , а команд — в ПЗУ .
Кроме ОЗУ, микроконтроллер может иметь встроенную энергонезависимую память для хранения программы и данных. Многие модели контроллеров вообще не имеют шин для подключения внешней памяти.
Наиболее дешёвые типы памяти допускают лишь однократную запись, либо хранимая программа записывается в кристалл на этапе изготовления (конфигурацией набора технологических масок). Такие устройства подходят для массового производства в тех случаях, когда программа контроллера не будет обновляться. Другие модификации контроллеров обладают возможностью многократной перезаписи программы в энергонезависимой памяти.
Неполный список периферийных устройств , которые могут использоваться в микроконтроллерах, включает в себя:
Ограничения по цене и энергопотреблению ограничивает тактовую частоту контроллеров. Хотя производители стремятся обеспечить работу своих изделий на высоких частотах, они, в то же время, предоставляют заказчикам выбор, выпуская модификации, рассчитанные на разные частоты и напряжения питания. Во многих моделях микроконтроллеров используется статическая память для ОЗУ и внутренних регистров . Это даёт контроллеру возможность работать на меньших частотах и даже не терять данные при полной остановке тактового генератора. Часто предусмотрены различные режимы энергосбережения , в которых отключается часть периферийных устройств и вычислительный модуль.
Использование в современном микроконтроллере достаточного мощного вычислительного устройства с широкими возможностями, построенного на одной микросхеме вместо целого набора, значительно снижает размеры, энергопотребление и стоимость построенных на его базе устройств.
Используются в управлении различными устройствами и их отдельными блоками:
В промышленности:
В то время как 8-разрядные микропроцессоры общего назначения полностью вытеснены более производительными моделями, 8-разрядные микроконтроллеры продолжают широко использоваться. Это объясняется тем, что существует большое количество применений, в которых не требуется высокая производительность, но важна низкая стоимость. В то же время, есть микроконтроллеры, обладающие больши́ми вычислительными возможностями, например, цифровые сигнальные процессоры , применяющиеся для обработки большого потока данных в реальном времени (например, аудио-, видеопотоков).
Программирование микроконтроллеров обычно осуществляется на языке ассемблера или Си , хотя существуют компиляторы для других языков, например, Форта и Бейсика . Используются также встроенные интерпретаторы Бейсика .
Известные компиляторы Си для МК:
Известные компиляторы бейсика для МК:
Для отладки программ используются программные симуляторы (специальные программы для персональных компьютеров, имитирующие работу микроконтроллера), внутрисхемные эмуляторы (электронные устройства, имитирующие микроконтроллер, которые можно подключить вместо него к разрабатываемому встроенному устройству) и отладочный интерфейс, например, JTAG .