Что такое микроконтроллеры — назначение, устройство, софт


СОДЕРЖАНИЕ:

Области применения микроконтроллеров

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

По этой причине микроконтроллеры можно встретить всюду в электронных блоках совершенно разных устройств: на материнских платах компьютеров, в контроллерах DVD-приводов, жестких и твердотельных накопителей, в калькуляторах, на платах управления стиральных машин, микроволновок, телефонов, пылесосов, посудомоечных машин, внутри домашних роботов, программируемых реле и ПЛК, в модулях управления станками и т.д.

Так или иначе, практически ни одно современное электронное устройство не может обойтись сегодня без хотя бы одного микроконтроллера внутри себя.

Несмотря на то, что 8-разрядные микропроцессоры давно ушли в прошлое, 8-разрядные микроконтроллеры до сих пор весьма широко применяются. Есть множество применений, где высокая производительность вовсе не нужна, однако критическим фактором выступает низкая стоимость конечного продукта. Существуют, разумеется, и более мощные микроконтроллеры, способные обрабатывать в реальном времени большие потоки данных (видео и аудио, например).

Вот краткий список периферии микроконтроллеров, из которого вы можете сделать выводы о возможных сферах и доступных областях применимости этих крохотных микросхем:

универсальные цифровые порты, настраиваемые либо на ввод, либо на вывод;

разнообразные интерфейсы ввода-вывода: UART, SPI, I²C, CAN, IEEE 1394, USB, Ethernet;

цифро-аналоговые и аналого-цифровые преобразователи;

широтно-импульсные модуляторы (ШИМ-контроллер);

контроллеры бесколлекторных (и шаговых) двигателей;

контроллеры клавиатур и дисплеев;

радиочастотные передатчики и приемники;

массивы интегрированной флеш-памяти;

встроенные сторожевой таймер и тактовый генератор.

Как вы уже поняли, микроконтроллером называется небольшого размера микросхема, на кристалле которой смонтирован крохотный компьютер. Это значит, что внутри небольшого чипа есть и процессор, и ПЗУ, и ОЗУ, и периферийные устройства, которые способны взаимодействовать как между собой, так и со внешними компонентами, достаточно лишь загрузить в микросхему программу.

Программа обеспечит работу микроконтроллера по назначению — он сможет по правильному алгоритму управлять окружающей его электроникой (в частности: бытовой техникой, автомобилем, ядерной электростанцией, роботом, солнечным трекером и т. д.).

Тактовая частота микроконтроллера (или скорость шины) отражает то, сколько вычислений сможет выполнить микроконтроллер за единицу времени. Так, производительность микроконтроллера и потребляемая им мощность с повышением скорости шины увеличиваются.

Измеряется производительность микроконтроллера в миллионах инструкций в секунду — MIPS (Million Instruсtions per Second). Так, популярный контроллер Atmega8, выполняя одну полноценную инструкцию за один такт, достигает производительности 1 MIPS на МГц.

При этом современные микроконтроллеры разных семейств настолько универсальны, что один и тот же контроллер способен, будучи перепрограммирован, управлять совершенно разнородными устройствами. Невозможно ограничиться одной областью.

Пример такого универсального контроллера — тот же Atmega8, на котором собирают: таймеры, часы, мультиметры, индикаторы домашней автоматики, драйверы шагового двигателя и т.д.

Среди популярных производителей микроконтроллеров отметим: Atmel, Hitachi, Intel, Infineon Technologies, Microchip, Motorola, Philips, Texas Instruments.

Классифицируются микроконтроллеры в основном по разрядности данных, которые обрабатывает арифметико-логическое устройство контроллера: 4, 8, 16, 32, 64 — разрядные. И 8-разрядные, как отмечалось выше, занимают существенную долю рынка (порядка 50% по стоимости). Следом идут 16-разрядные микроконтроллеры, затем DSP-контроллеры, применяемые для обработки сигналов (на тот и на другой приходится по 20% рынка).

Что такое микроконтроллер

В этой статье второго выпуска журнала Электрон, я хочу затронуть очень интересную тему, касающуюся цифровой электроники. Сегодня я хочу ответить на вопрос что такое микроконтроллер.

Итак, микроконтроллер это небольшая микросхема, на кристалле которой собран настоящий микрокомпьютер! Это означает, что внутри одной микросхемы смонтировали процессор, память (ПЗУ и ОЗУ), периферийные устройства, заставили их работать и взаимодействовать между собой и внешним миром с помощью специальной микропрограммы, которая храниться внутри микроконтроллера.

Основное назначение микроконтроллеров – это управление различными электронными устройствами. Таким образом, они применяются не только в персональных компьютерах, но и почти во всей бытовой технике, автомобилях, телевизорах, промышленных роботах, даже в военных радиолокаторах.

Можно сказать, что микроконтроллер это универсальный инструмент управления электронными устройствами, причем алгоритм управления вы закладываете в него сами и можете в любое время его поменять в зависимости от задачи, возложенной на микроконтроллер.

Так выглядят современные микроконтроллеры.

В настоящее время существует множество различных платформ и семейств микроконтроллеров, однако назначение, применение и суть их функционирования почти одинакова.

Мы сказали, что микроконтроллер это своего рода микрокомпьютер (старое название однокристальные микроЭВМ). Представим его в виде черного ящика. Внутри этого ящика расположены основные структурные элементы микроконтроллера.

Арифметико-логическое устройство (АЛУ) – предназначено для выполнения арифметических и логических операций, на самом деле в совокупности с регистрами общего назначения АЛУ выполняет функции процессора.

Оперативно – запоминающее устройство (ОЗУ) – предназначено для временного хранения данных при работе микроконтроллера.

Память программ — выполнена в виде перепрограммируемого постоянного запоминающего устройства и предназначена для записи микропрограммы управления микроконтроллером, так называемая прошивка.

Память данных применяется в некоторых микроконтроллерах в качестве памяти для хранения все возможных констант, табличных значений функций и т.д.

Микроконтроллер в своем составе может иметь и другие вспомогательные элементы.

Аналоговый компаратор – предназначен для сравнения двух аналоговых сигналов на его входах

Таймеры в микроконтроллерах применяются для осуществления различных задержек и установки различных интервалов времени в работе микроконтроллера.

Аналогово-цифровой преобразователь (АЦП) необходим для ввода аналогового сигнала в микроконтроллер и его функция перевести аналоговый сигнал в цифровой.

Цифро-аналоговый преобразователь (ЦАП) выполняет обратную функция, то есть сигнал из цифрового вида преобразует в аналоговый вид.

Работа микроконтроллера синхронизируется тактовыми импульсами с генератора и управляется устройством управления микроконтроллера.

Таким образом, микроконтроллер это электронный конструктор, с помощью которого вы можете собрать свое устройство управления. Путем программирования микроконтроллера вы отключаете или подключаете составные устройства внутри микроконтроллера, задаете свои алгоритмы работы этих устройств.

Предлагаю вам посмотреть видео, в котором я рассказываю, что такое микроконтроллер и привожу пару примеров практического применения микроконтроллеров.

Кстати тем, кто заинтересовался темой и хочет создать самостоятельно устройство на основе микроконтроллеров фирмы Atmel, предлагаю посмотреть следующее видео.

Видео посвящено видеокурсу о программировании микроконтроллеров фирмы Atmel , пройдя который вы не только познакомитесь с замечательным миром микроконтроллеров, но и научитесь программировать микроконтроллеры, а следовательно самостоятельно создавать электронные устройства на микроконтроллерах.

Видеокурс «Программирование микроконтроллеров для начинающих» более 70 часов качественного видео.

В результате изучения вы получите те знания с помощью которых сможете самостоятельно разработать устройство любой сложности.

ПОНРАВИЛАСЬ СТАТЬЯ? ПОДЕЛИСЬ С ДРУЗЬЯМИ В СОЦИАЛЬНЫХ СЕТЯХ!

Что такое микроконтроллеры — назначение, устройство, софт

С появлением однокристальных микро-ЭВМ связывают начало эры массового применения компьютерной автоматизации в области управления. По-видимому, это обстоятельство и определило термин «контроллер» (англ. controller — регулятор, управляющее устройство).

В связи со спадом отечественного производства и возросшим импортом техники, в том числе вычислительной, термин «микроконтроллер» (МК) вытеснил из употребления ранее использовавшийся термин «однокристальная микро-ЭВМ».

Первый патент на однокристальную микро-ЭВМ был выдан в 1971 году инженерам М. Кочрену и Г. Буну, сотрудникам американской Texas Instruments. Именно они предложили на одном кристалле разместить не только процессор, но и память с устройствами ввода-вывода.

В 1976 году [1] американская фирма Intel выпускает микроконтроллер i8048. В 1978 году фирма Motorola выпустила свой первый микроконтроллер MC6801, совместимый по системе команд с выпущенным ранее микропроцессором MC6800. Через 4 года, в 1980 году, Intel выпускает следующий микроконтроллер: i8051. Удачный набор периферийных устройств, возможность гибкого выбора внешней или внутренней программной памяти и приемлемая цена обеспечили этому микроконтроллеру успех на рынке. С точки зрения технологии микроконтроллер i8051 являлся для своего времени очень сложным изделием — в кристалле было использовано 128 тыс. транзисторов, что в 4 раза превышало количество транзисторов в 16-разрядном микропроцессоре i8086.

На сегодняшний день существует более 200 модификаций микроконтроллеров, совместимых с i8051, выпускаемых двумя десятками компаний, и большое количество микроконтроллеров других типов. Популярностью у разработчиков пользуются 8-битные микроконтроллеры PIC фирмы Microchip Technology и AVR фирмы Atmel, 16-битные MSP430 фирмы TI, а также 32-битные микроконтроллеры, архитектуры ARM, которую разрабатывает фирма ARM Limited и продаёт лицензии другим фирмам для их производства. Несмотря на популярность в России микроконтроллеров упомянутых выше, по данным Gartner Grup от 2009 года мировой рейтинг по объёму продаж выглядит иначе: [2] первое место с большим отрывом занимает Renesas Electronics на втором Freescale, на третьем Samsung, затем идут Microchip и TI, далее все остальные.

В СССР велись разработки оригинальных микроконтроллеров, также осваивался выпуск клонов наиболее удачных зарубежных образцов [3] [4] [5] , [6] .
В 1979 году в СССР НИИ ТТ разработали однокристальную 16-разрядную ЭВМ К1801ВЕ1, микроархитектура которой называлась «Электроника НЦ».

Описание

При проектировании микроконтроллеров приходится соблюдать баланс между размерами и стоимостью с одной стороны и гибкостью и производительностью с другой. Для разных приложений оптимальное соотношение этих и других параметров может различаться очень сильно. Поэтому существует огромное количество типов микроконтроллеров, отличающихся архитектурой процессорного модуля, размером и типом встроенной памяти, набором периферийных устройств, типом корпуса и т. д. В отличие от обычных компьютерных микропроцессоров, в микроконтроллерах часто используется гарвардская архитектура памяти, то есть раздельное хранение данных и команд в ОЗУ и ПЗУ соответственно.

Кроме ОЗУ, микроконтроллер может иметь встроенную энергонезависимую память для хранения программы и данных. Во многих контроллерах вообще нет шин для подключения внешней памяти. Наиболее дешёвые типы памяти допускают лишь однократную запись. Такие устройства подходят для массового производства в тех случаях, когда программа контроллера не будет обновляться. Другие модификации контроллеров обладают возможностью многократной перезаписи энергонезависимой памяти.

Неполный список периферии, которая может присутствовать в микроконтроллерах, включает в себя:

  • универсальные цифровые порты, которые можно настраивать как на ввод, так и на вывод;
  • различные интерфейсы ввода-вывода, такие как UART, I²C, SPI, CAN, USB, IEEE 1394, Ethernet;
  • аналого-цифровые и цифро-аналоговые преобразователи;
  • компараторы;
  • широтно-импульсные модуляторы;
  • таймеры;
  • контроллеры бесколлекторных двигателей;
  • контроллеры дисплеев и клавиатур;
  • радиочастотные приемники и передатчики;
  • массивы встроенной флеш-памяти;
  • встроенный тактовый генератор и сторожевой таймер;

Ограничения по цене и энергопотреблению сдерживают также рост тактовой частоты контроллеров. Хотя производители стремятся обеспечить работу своих изделий на высоких частотах, они, в то же время, предоставляют заказчикам выбор, выпуская модификации, рассчитанные на разные частоты и напряжения питания. Во многих моделях микроконтроллеров используется статическая память для ОЗУ и внутренних регистров. Это даёт контроллеру возможность работать на меньших частотах и даже не терять данные при полной остановке тактового генератора. Часто предусмотрены различные режимы энергосбережения, в которых отключается часть периферийных устройств и вычислительный модуль.

Известные семейства

  • MCS 51 (Intel)
  • MSP430 (TI)
  • ARM (ARM Limited)
  • AVR (Atmel)
    • ATmega
    • ATtiny
    • XMega
  • PIC (Microchip)

Применение

Использование в современном микроконтроллере достаточного мощного вычислительного устройства с широкими возможностями, построенного на одной микросхеме вместо целого набора, значительно снижает размеры, энергопотребление и стоимость построенных на его базе устройств. Используются в управлении различными устройствами и их отдельными блоками:

  • в вычислительной технике: материнские платы, контроллеры дисководов жестких и гибких дисков, CD и DVD;
  • электронике и разнообразных устройствах бытовой техники, в которой используется электронные системы управления — стиральных машинах, микроволновых печах, посудомоечных машинах, телефонах и современных приборах;

В то время как 8-разрядные процессоры общего назначения полностью вытеснены более производительными моделями, 8-разрядные микроконтроллеры продолжают широко использоваться. Это объясняется тем, что существует большое количество применений, в которых не требуется высокая производительность, но важна низкая стоимость. В то же время, есть микроконтроллеры, обладающие больши́ми вычислительными возможностями, например цифровые сигнальные процессоры.

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

Программирование микроконтроллеров обычно осуществляется на языке ассемблера или Си, хотя существуют компиляторы для других языков, например, Форта. Используются также встроенные интерпретаторы Бейсика.
Известные компиляторы Си для МК:

  • GNU Compiler Collection — Поддерживает ARM, AVR, MSP430 и многие другие архитектуры
  • CodeVisionAVR (для AVR)
  • IAR [1] (для любых МК)
  • WinAVR (для AVR и AVR32)
  • Keil (для архитектуры 8051 и ARM)
  • HiTECH (для архитектуры 8051 и PIC от Microchip)

Для отладки программ используются программные симуляторы (специальные программы для персональных компьютеров, имитирующие работу микроконтроллера), внутрисхемные эмуляторы (электронные устройства, имитирующие микроконтроллер, которые можно подключить вместо него к разрабатываемому встроенному устройству) и интерфейс JTAG.

Микроконтроллеры РIC. Обзор, характеристики, достоинства

История создания PIC –контроллеров.

Прообразом контроллеров семейства PIC с RISC –архитектурой послужил периферийный контроллер ( Peripheral Interface Controller — PIC), разработанный в 1975 году отделением компании General Instrument Microelectronics Inc для поддержки ввода–вывода 16–разрядного про­цессора. Поскольку к контроллеру не предъявлялось высоких требований по об­работке данных, он имел ограниченный набор команд, при этом почти все команды в нем выполнялись за один машинный цикл. Другая особенность контроллера — использование Гарвардской архитектуры, основанной на разделении шин и обла­стей памяти для данных и команд.

Позже отделение компании General Instrument выделилось в самостоятельную фирму ( Microchip Technology Ltd .), которая в конце 1980–х годов разработала и изготовила первые модели микроконтроллеров семейства Р1С16С5х. Дальней­шее развитие и совершенствование контроллеров шло по пути расширения со­става периферийных устройств и набора команд, совершенствования технологии и улучшения характеристик. За прошедшие годы фирмой выпущено несколько семейств PIC, каждое из которых постоянно пополняется новыми моделями (вер­сиями).

Обзор PIC– контроллеров.

В настоящее время фирма Microchip выпускает пять семейств микроконтроллеров:

● PIC 16 C 5 X включает недорогие контроллеры с минимальным набором периферийных устройств:

● Р I С12Сххх содержит МК в миниатюрном 8–выводном корпусе со встроенным тактовым генератором и модулем 8–разрядного АЦП (для некоторых моделей);

● Р I С16х/7х/8х/9х объединяет МК с развитой периферией (таймеры–счетчики с опциями захвата/сравнения, широтно–импульсные модуляторы, аналоговые компараторы, АЦП, контроллеры последовательных интерфейсов);

● Р IC 17С4х/5хх включает высокопроизводительные МК с расширенной систе­мой команд и обширной периферией. Микроконтроллеры этого семейства имеют встроенный аппаратный умножитель 8 r 8, выполняющий операцию ум­ножения за один машинный цикл;

● Р I С18Сххх — новое семейство с оптимизированным под использование Си–компилятора RISC –ядром и частотой внутренней шины до 10 МГц.

Потребителям предоставляются три модели микроконтроллеров семейства PICMicro с различными сочетаниями характеристик и свойств.

Младшие модели.

К ним относятся МК серии 16С5х и 8–выводные МК серии 12С5хх, которые реализуют нижний уровень возможностей микроконтроллеров семейства PICMicro и используются для создания небольших и простых приложе­ний. Они выполняют подмножество команд старших моделей и программно со­вместимы с ними. Младшие модели сыграли большую роль в развитии семейства PICMicro . Однако ограниченные возможности обработки прерываний, малый объем доступной памяти программ и RAM , отсутствие внутрисистемного про­граммирования и портов ввода/вывода с расширенными функциями, снижение стоимости технологических затрат явились причинами перехода к моделям мик­роконтроллеров среднего уровня, которые продавались по такой же (и даже бо­лее низкой) цене, как и МК младших моделей.

Средние модели.

Модели среднего уровня образуют законченную линию микроконтроллеров (серия 16Схх) с множеством различных функций и получили наиболее широкое распространение. Они имеют такую же базовую архитектуру, как микроконтроллеры младших моделей, но существенно отличаются возможно­стями обработки прерываний.

Старшие модели.

Микроконтроллеры старших моделей (серии 17Схх) раз­рабатывались для взаимодействия с другими цифровыми устройствами. Поэтому в них отсутствуют имеющиеся в моделях среднего уровня АЦП и устройства для подключения датчиков. В контроллерах используются 16–битные команды, спо­собные адресовать по 128К байт памяти программ и памяти данных (64К слов по 16 бит). Для чтения/записи памяти программ в МК используется модифицированное ядро центрального процессора, позволяющее различным командам обращаться ко всем регистрам процессора. Это повышает гибкость микроконтроллеров и расширяет области их применения. Младшие и средние модели такой возможно­стью не обладают. Кроме того, в старших моделях PICMicro имеется несколько векторов прерываний, в то время как в микроконтроллерах среднего уровня ис­пользуется только один вектор прерывания.

Характеристики контроллеров.

Следует отметить, что различный аппарат­ный состав и характеристики имеют не только микроконтроллеры разных се­мейств, но и модели (версии) одного семейства. Однако общим для большинства моделей контроллеров является:

● RISC –архитектура (с двухступенчатым конвейером), обеспечивающая выпол­нение большинства команд процессора за один машинный цикл;

Гарвардская архитектура (с раздельными шинами данных и программ), обес­печивающая одновременный доступ к памяти данных и программ;

● КМОП технология, обеспечивающая:

• полностью статический режим работы, при котором остановка тактового генератора не приводит к потере логических состояний внутренних узлов;

• широкий диапазон напряжений питания (2…6 В) и температур (–40…+70 °С);

● наличие таймера–счетчика с программируемым предварительным делителем, сторожевого таймера с встроенным R С–генератором, таймера–счетчика реаль­ного времени — ТМ R 0, регистра состояния — STATUS ; регистра косвенной адресации — FSR и др.

● прямой и косвенный режимы адресации; режим пониженного энергопотреб­ления.

В качестве примера в табл. 6.1.1 приведены показатели МК средних моделей.

Достоинства контроллеров.

К достоинствам микроконтроллеров PIC следу­ет отнести:

● высокую производительность, которая позволяет реализовывать различные устройства, работающие в реальном времени с большими скоростями (си­стемы управления автомобильными и электрическими двигателями, видеоиг­ры и др.). В частности, производительность Р I С16С5х при частоте тактирова­ния в 20 МГц составляет 5 MIPS (Million Instruction Per Second — миллионов инструкций в секунду). Высокая производительность достигается благодаря использованию:

• RISC –процессора, большинство команд которого выполняется за один ма­шинный цикл (команды перехода и операции табличного чтения выполня­ются за два цикла);

• двухступенчатого конвейера, совмещающего выполнение текущей команды с выборкой из памяти следующей команды;

• Гарвардской архитектуры, обеспечивающей одновременное считывание команд (12, 14 или 16 бит) и данных (8 или 1 бит);

● малое энергопотребление, открывающее широкие возможности для создания устройств с батарейным питанием, питанием от телефонной линии, солнеч­ных батарей (мобильные телефоны, электронные сторожа и др.). Для микро­контроллеров PIC 17, имеющих широкий набор аппаратных средств, потреб­ление тока составляет:

• менее 5 мА при 5 В, 4 МГц;

• 100 мкА при 4,5 В, 32 кГц;

• менее 1 мкА при 5 В в режиме ожидания;

● мощную поддержку разработок, которую осуществляет фирма Microchip .

В качестве средств поддержки разработчику приложений предоставлены ассемблер MPASM и макроассемблер, симулятор MPSIM, интегрированная система отладки для Windows MPLAB, программный, внутрисхемный и отла­дочный эмуляторы, универсальный программатор и компилятор С. Кроме того, имеются библиотеки для работы с фиксированной и плавающей точкой, с последовательным интерфейсом и с аналого–цифровым преобразователем, а также большое количество документированных примеров применения мик­роконтроллеров PIC в различных областях с исходными текстами. Обилие средств поддержки разработчика способствует сокращению сроков создания приложений;

● совместимость, проявляющуюся в том, что программы для микроконтролле­ров более ранних семейств PIC16C5X и PIC16CXX могут быть легко перене­сены на семейство устройств PIC17CXX;

● разнообразие используемых способов программирования «внутри» каждого семейства PIC.

Фирма Microchip выпускает:

• микроконтроллеры с ультрафиолетовым стиранием, в которых память мо­жет быть очищена и контроллер перепрограммирован с помощью програм­матора PRO МАТЕ фирмы Microchip для функционирования в любом режи­ме, например, в режиме с использованием RC –генератора. Эти микроконт­роллеры предназначены для экспериментальных разработок и отладки программ;

• однократно программируемые контроллеры ( One – Time Programming PROM — OTP ), изготовленные в пластиковом корпусе, позволяют пользователю за­писать в память программу и биты конфигурации только один раз. Они применяются в тех случаях, когда нет необходимости часто менять со­держание программы или конфигурацию микроконтроллера в выпускаемом устройстве;

• контроллеры, программируемые изготовителем по заказу пользователя ( Quality TP — QTP ). Этот сервис, предлагаемый фирмой Microchip , пред­назначен для устоявшегося кода программы;

• контроллеры с серийными номерами ( SQTP ), программируемые изготови­телем по заказу пользователя. В этих МК несколько определенных пользо­вателем ячеек содержат номер, уникальный для отдельного устройства. Серийный номер может быть случайным, псевдослучайным и последова­тельным. Его можно использовать как код доступа, пароль или идентифи­катор;


• масочные контроллеры ( ROM ), в которых используются масочные ПЗУ. Та­кие контроллеры, имеющие низкую стоимость, изготавливаются для мас­сового потребителя или при больших объемах заказа;

● высокую надежность, низкую стоимость и др.

Благодаря указанным достоинствам микроконтроллеры находят широкое и разнообразное применение.

Области применения.

К основным областям применения Р I С следует отнести:

● компьютерные устройства (мыши, модемы, принтеры, плоттеры, сканеры, се­тевые карты и др.);

● устройства связи (микро–АТС, автоответчики, АОНы, мобильные телефоны, факс–аппараты, радиомодемы, пейджеры и др.);

● автомобильная электроника (автомобильная сигнализации, радарные детек­торы, системы управления зажиганием и впрыском топлива, приборные пане­ли и др.);

● промышленные устройства (устройства управления электродвигателями, про­мышленные роботы, интеллектуальные датчики, регуляторы температуры, влажности, давления и др.);

● бытовые устройства (аудио системы, С D –проигрыватели, системы сигнализа­ции, счетчики воды, газа и электроэнергии, устройства заряда батарей, иг­рушки и др.).

Мощная RISC –архитектура, однократно или многократно электрически пере­программируемые пользователем ПЗУ, минимальное энергопотребление, высо­кая производительность, минимальные размеры корпуса и низкая стоимость по­зволили микроконтроллерам Р I С16/17 занять достойное место во многих обла­стях инженерных применений.

В других статьях раздела рассматриваются микроконтроллеры серии Р I С16С5х, как наи­более доступные для понимания.

Классификация микроконтроллеров

Жаркие споры о том, какой М К лучше, давно перешли в разряд философских. Сторонники крайних точек зрения сходятся на том, что каждый М К предназначен для выполнения своего круга задач, причём очень часто эти «круги» взаимно пересекаются. Фирмы, иготавливающие МК, подсматривают друг у друга новинки и быстро внедряют их в производство. Таким образом появляются на свет функционально одинаковые МК-двойняшки, а вместе с ними и конструкции-двойники, отличающиеся между собой только микросхемой управляющего контроллера.

Устоявшейся классификации МК на сегодняшний день не существует. Это относительно новый и бурно развивающийся класс электронных приборов, поэтому должно пройти некоторое время, чтобы система структуризировалась.

Из основных «классообразующих» признаков можно выделить следующие.

1. Классификация МКпо разрядности шины данных ЦПУ:

  • 4-битные (Atmel MARC4, Winbond W742, NEC uPD75 и др.);
  • 8-битные (Intel MCS-48, Intel MCS-51, Atmel ATtiny/ATmega/ATXmega, Microchip PIC12/16/18, Zilog Z86 и др.);
  • 16-битные (Intel MCS-96, Texas Instruments MSP430, Motorola 68HC16, Fujitsu MB90, Infineon C16, Mitsubishi M16C, Microchip PIC24 и др.);
  • 32-битные (Atmel ARM, Fujitsu MB91, NEC V850, NXP LPC2xxx и др.).

В приведенную классификацию не вошли отдельные тупиковые ветви развития прогресса, что подчёркивает справедливость фразы: «Нет правил без исключения». Так, например, МС14500 фирмы Motorola имел разрядность 1 бит, набор команд из 16 инструкций, и был способен работать с неограниченным объёмом памяти. Но на рынке его давно уже не видно и в очередь за ним разработчики не становились.

Для любительской аппаратуры, естественно, отбирают что-то попроще, подешевле и с меньшей разрядностью (однако не настолько малой как морально устаревшие 4 бита). Самыми популярными на сегодняшний день считаются 8-битные МК. Профессионалы предпочитают разрядность повыше.

Каждый электрик должен знать:  Реверс двигателя постоянного и переменного тока схемы подключения

Родоначальником 8-битных МК является фирма Intel, освоившая линейку базовых семейств MCS-48, MCS-51, MCS-251. Они составили достойную конкуренцию господствовавшим в те годы микропроцессорам. В дальнейшем фирма Intel переключилась на производство исключительно 16-битных моделей, и, к её чести, не стала в судебном порядке запрещать клонирование MCS-совместимых контроллеров сторонними разработчиками.

Нынешними лидерами продаж среди 8-битных МК являются фирмы Atmel и Microchip. Они далеко опережают ближайших конкурентов.

2. Классификация МКпо архитектуре вычислительной системы:

  • CISC (Complex Instruction Set Computing);
  • RISC (Reduced Instruction Set Computing).

Первые МК имели стандартную CISC-архитектуру, которая применялась в настольных компьютерах того времени. Особенности CISC: команды выполняются поочерёдно друг за другом и имеют разную длину и структуру. Выборка команды из памяти осуществляется побайтно и выполняется за несколько тактов. CISC-архитектуру имеют: МК из семейства Motorola НС05/НС08, МК с ядром MCS-51, МК из семейства Infineon С500 и ряд других.

В начале 1980-х годов была разработана новая архитектура с многообещающим названием RISC (аббревиатуру предложил Д. Паттерсон из Калифорнийского университета в г. Беркли, США). Основная идея заключается в замене сложных команд однотипными простыми и выполнении их единым потоком на параллельном конвейере. Все команды имеют фиксированную длину и в идеале должны выполняться за один, а не за несколько, тактов, чем достигается повышенное быстродействие.

Одним из первых МК с архитектурой RISC стал PIC-контроллер 16С54 фирмы Microchip. Благодаря высокой производительности и трём десяткам легко запоминающихся команд, PIC-контроллеры быстро завоевали популярность во всём мире. Вскоре их примеру последовали разработчики из фирм Atmel, Scenix и др.

RISC-архитектура в МК сейчас вне конкуренции. Даже новейшие клоны контроллеров, имеющие совместимость с MCS-51, отличаются от прародителей в первую очередь сменой архитектуры. Это чётко прослеживается на примере продукции фирмы Atmel — «старая» микросхема АТ89С2051 (CISC) против улучшенных «новых» микросхем AT89S2051, AT89LP2052 (RISC).

С точки зрения принципов конструирования вычислительных систем выделяют принстонскую и гарвардскую архитектуры. Оба названия связаны с одноимёнными университетами в США.

Принстонская архитектура была разработана Джоном фон Нейманом и независимо от него академиком С.А.Лебедевым. В ней используется общая память для хранения программ и данных (Рис. 1.8). Основное преимущество заключается в упрощении схемотехники ЦПУ и в гибкости распределения ресурсов между областями памяти.

Особенностью гарвардской архитектуры является наличие раздельных адресных пространств для хранения команд и данных (Рис. 1.9). Эта архитектура почти не использовалась до конца 1970-х годов, пока разработчики МК наконец-то поняли, что именно она даёт им определённые преимущества. В частности, анализ реальных программ показывает, что объём памяти данных МК, используемый для хранения промежуточных результатов, примерно на порядок меньше требуемого объёма памяти программ. Значит, можно сократить разрядность шины данных, уменьшить число транзисторов в микросхеме, а заодно и ускорить доступ к информации сразу в обоих «полушариях» памяти. Как следствие, сейчас большинство современных МК используют RISC-архитектуру гарвардского типа.

3. Классификация МК по фирменным платформам.

Слово «платформа» вошло в обиход как средство обозначения комплекса, состоящего из внутрифирменных стандартов, технологий, конструктивных особенностей, запатентованных «ноу-хау». К примеру, фирмы Atmel и Silicon Laboratories исповедуют разную идеологию в архитектуре микропроцессорной системы, разную схемотехнику и технологию изготовления транзисторных ячеек памяти, разный подход к засекречиванию средств отладки и программирования. В результате их МК имеют отличия в электрических параметрах, сферах применения, рыночной популярности.

Для примера на Рис. 1.10 представлены основные зарубежные изготовители, характеризующиеся чётко обозначенными платформами.

4. Классификация МКпо выполняемым функциям:

Первыми появились М К общего назначения с универсальным набором функций. В «джентльменский набор» их аппаратных узлов входили: порты ввода/вывода, таймеры/счётчики, канал последовательного доступа UART, аналоговый компаратор. По мере встраивания МК в различные бытовые приборы, выяснилось, что большинство функций у них «простаивает», а на выполнение специфических задач тратится слишком много машинного времени. Для заполнения образовавшейся ниши были разработаны специализированные МК, «заточенные» под конкретные сферы применения, например, для драйвера шагового двигателя, для МРЗ-декодера, для подключения символьного ЖКИ, для адаптера Ethernet и т.д.

Современные универсальные МК позаимствовали от специализированных собратьев весьма полезные интерфейсы: Serial Bus, SPI, USB, CAN. Более того, модуль широтно-импульсного модулятора (ШИМ) и внутренний АЦП перешли из разряда диковинок в обязательную спецификацию параметров многих МК. На очереди — ЦАП, Ethernet, ячейки ПЛИС.

Диапазон радиолюбительских разработок настолько велик, что требуемый набор аппаратных узлов заранее не предугадаешь. Поэтому практичнее использовать универсальные МК. В дальнейшем переход на специализированные контроллеры будет происходить гораздо легче, поскольку методология у них общая.

5. Классификация по семействам 8-битных МК:

  • ядро MCS-51 — АТ89Сх051, АТ89С5х, AT89S (Atmel), DS89 (Maxim/Dallas);
  • ядро AVR — ATtiny, AT90S, ATmega, ATXmega (Atmel);
  • ядро PIC — PIC10, PIC12, PIC16, PIC18 (Microchip).
  • ядро SX — SXxxx (Ubicom, ранее Scenix);
  • ядро 68HC — 68HC08, 68HC12 (Freescale Semiconductor, ранее Motorola);
  • ядро ST — ST62, ST7 (STMicroelectronics, ранее SGS-THOMSON);
  • ядро CIP-51 — C8051 (Silicon Laboratories, ранее Cygnal Integrated);
  • ядро 8052 — W78E516 (Winbond);
  • ядро «ТЕСЕЙ» — KP1878BE1 («Ангстрем»).

Такие понятия как «семейство», «платформа», «ядро», «архитектура» в разных источниках трактуются по-разному. Иногда их просто считают синонимами, что в большинстве случаев не принципиально. Однако для определённости предлагается использовать следующие термины.

«Ядро» — базовое устройство внутренней вычислительной системы. Ядро определяет систему команд, шинный интерфейс, архитектуру памяти, т.е. коренные отличия «вычислителей» друг от друга. Различают МК с ядром MCS-51, AVR, ARM7, ARM9, PIC16, PIC18 и т.д. Процессорное ядро может быть одинаковым, а фирмы-изготовители — разными.

«Семейство» — группа микросхем, имеющих одно ядро, у которых примерно одинаковый набор программных и периферийных функций. Семейство может разбиваться на более мелкие подсемейства.

«Серия», «линейка» — это фирменный бренд или рекламный слоган, например, серия «Classic», серия «tinyAVR», линейка «MegaPIC». Встречаются и обо-щенные названия по типу «линейка 16-битных МК общего назначения».

«Модель» — несколько микросхем одного семейства, различающиеся между собой второстепенными цифрами (буквами) в названии, что определяет разный температурный диапазон, тактовую частоту, вариант корпуса, питание.

Пример 1. Микросхема AT89S51-33PI относится к платформе Atmel, архитектуре CISC гарвардского типа, ядру MCS-51, семейству AT89S, модели AT89S51. Надпись «ЗЗ-PI» означает максимальную тактовую частоту 33 МГц, DIP-корпус и индустриальный диапазон рабочих температур.

Пример 2. Микросхема ATmegal28L-8AU относится к платформе Atmel, архитектуре RISC гарвардского типа, ядру AVR, серии MegaAVR, семейству ATmega, модели ATmega 128. Надпись «L-8AU» определяет электрические, частотные, температурные и конструктивные параметры.

Пример 3. Микросхема PIC18LF2455-I/SP относится к платформе Microchip, архитектуре RISC гарвардского типа, ядру PIC18, семейству PIC18F, модели PIC18F2455. Буква «L» указывает на расширенный диапазон питания, а надпись «I/SP» определяет температурный диапазон и тип корпуса микросхемы.

Источник: Рюмик С.М. 1000 и одна микроконтроллерная схема. (Выпуск 1)

Микроконтроллеры в системах промышленной автоматизации

В статье рассматривается роль микроконтроллеров (МК) в системах промышленной автоматизации, в частности, речь пойдет о том, как на базе микроконтроллеров реализуется интерфейс реального мира для различного типа датчиков и исполнительных механизмов. Также мы обсудим необходимость интеграции в микроконтроллеры высокопроизводительных ядер, таких как ARM Cortex-M3, с прецизионной и специализированной периферией, которой снабжены микроконтроллеры серии ADuCM360 компании Analog Devices и семейства EFM32 компании Energy Micro (Silicon Labs). Также не останется без внимания относительно новый протокол обмена данными, который ориентирован на эту область приложений, с конкретной ссылкой на бюджетные микроконтроллеры семейства XC800/XC16x (Infineon) и MSP430F2274 (Texas Instruments), и на специализированные приемопередатчики, включая MAX14821 (Maxim).

Микроконтроллеры интегрируют в себе технические возможности для обработки смешанных сигналов и вычислительную мощность, при этом уровень производительности МК и их функционал постоянно растет. Однако существуют другие разработки, которые позволяют продлить жизненный цикл бюджетных и низкопроизводительных микроконтроллеров.

По определению, микроконтроллеры бесполезны без связи с «реальным миром». Они были разработаны, чтобы действовать в качестве концентраторов для входов и выходов, выполняя задачи условных переходов и управляя последовательными и параллельными процессами. Их роль определяется управлением, в то время как возможность программирования означает, что характер управления задается логикой. Тем не менее, они изначально разрабатывались с целью получить интерфейс для аналогового мира, и, следовательно, в своей работе микроконтроллеры существенно опираются на процесс аналого-цифрового преобразования. Часто это цифровое представление аналогового параметра, обычно получаемого от какого-то датчика, на основе которого строится процесс управления, и основное применение микроконтроллера в таком случае видится в системах автоматизации. Способность управлять большими и сложными механическими системами, используя миниатюрный и относительно дешевый «кусочек» кремния, способствовало тому, что микроконтроллеры стали самым важным элементом промышленных систем автоматизации, и не удивительно, что многие производители стали выпускать специализированные семейства микроконтроллеров.

Прецизионная работа

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

Низкая стоимость и гибкость функционала микроконтроллеров означает широкое применение микроконтроллеров в различных приложениях, но производители в настоящее время стремятся к объединению множества функций в одном микроконтроллере по соображениям экономической эффективности, сложности или безопасности. Где когда-то, возможно, использовались десятки микроконтроллеров, сейчас потребуется только один.

Поэтому неудивительно, что то, что начиналось с 4-разрядных устройств, теперь превратилось в очень сложные и мощные 32-разрядные процессорные ядра, а ядро ARM Cortex-M стало выбором многих производителей.

Совместить высокопроизводительное процессорное ядро с прецизионным и стабильным аналоговым функционалом – непростая задача. Технология КМОП идеальна для высокоскоростных цифровых схем, но с реализацией чувствительной аналоговой периферии могут быть проблемы. Одной из компаний, имеющей огромнейший опыт в этой области, является Analog Devices. Разработанное компанией семейство полностью интегрированных систем сбора данных ADuCM предназначено для непосредственного взаимодействия с прецизионными аналоговыми датчиками. При таком подходе не только уменьшается количество внешних компонентов, но и гарантируется точность преобразования и измерений.

Преобразователь, интегрированный, например, в систему ADuCM360 с ядром ARM Cortex-M3, представляет собой 24-разрядный сигма-дельта АЦП, являющийся частью аналоговой подсистемы. В указанную систему сбора данных интегрированы программируемые источники тока возбуждения и генератор напряжения смещения, но более важной частью являются встроенные фильтры (один из которых используется для прецизионных измерений, другой – для быстрых измерений), которые применяются для обнаружения больших изменений в исходном сигнале.

Работа с датчиками в режиме «глубокого сна»

Производители микроконтроллеров учитывают важную роль датчиков в системах автоматизации и начинают разрабатывать оптимизированные входные аналоговые схемы, которые обеспечивают специализированный интерфейс для индуктивных, емкостных и резистивных датчиков.

Разработаны даже такие входные аналоговые схемы, которые могут работать автономно, например, интерфейс LESENSE (Low Energy Sensor) в микроконтроллерах с ультранизким энергопотреблением компании Energy Micro (Рисунок 1). В состав интерфейса входят аналоговые компараторы, ЦАП и контроллер (секвенсер) с низким потреблением, который программируется ядром микроконтроллера, но затем работает автономно, в то время как основная часть устройства находится в режиме «глубокого сна».

Рисунок 1. Технология LESENSE, интегрированная в микроконтроллеры EFM32, подразумевает автономную работу интерфейса датчиков в системах промышленного контроля и автоматизации.

Контроллер интерфейса LESENSE работает от источника тактовой частоты 32 кГц и управляет его активностью, в то время как выходы компаратора могут быть сконфигурированы как источники прерываний для «пробуждения» процессора, а ЦАП может быть выбран в качестве источника опорного сигнала компаратора. Технология LESENSE также включает в себя программируемый декодер, который можно настроить на генерирование сигнала прерывания только при выполнении условий нескольких датчиков в одно время. Компания Digi-Key предлагает стартовый набор EFM32 Tiny Gecko Starter Kit, в состав которого входит демонстрационный проект LESENSE. Микроконтроллеры семейства Tiny Gecko выполнены на ядре ARM Cortex-M3 с рабочей частотой до 32 МГц и нацелены на применение в системах промышленной автоматизации, где требуется измерение температуры, вибрации, давления и регистрация движений.

Рисунок 2. Стартовый набор EFM32 Tiny Gecko Starter Kit позволит полностью оценить возможности микроконтроллеров семейства Tiny Gecko.

Протокол IO-Link

Внедрение нового мощного интерфейса датчиков и исполнительных механизмов помогает многим производителям продлить жизненный цикл своих 8- и 16-разрядных микроконтроллеров на арене промышленных систем автоматизации. Этот протокол интерфейса передачи данных получил название IO-Link и уже поддерживается лидерами в секторе промышленной автоматизации и, в частности, производителями микроконтроллеров.

Передача данных по протоколу IO-Link осуществляется по 3-проводному неэкранированному кабелю на расстояния до 20 метров, что позволяет внедрить интеллектуальные датчики и исполнительные механизмы в существующие системы. Протокол подразумевает, что каждый датчик или исполнительный механизм является «интеллектуальным», другими словами каждая точка выполнена на микроконтроллере, но сам протокол очень простой, поэтому для этих целей вполне будет достаточно 8-разрядного микроконтроллера, и это именно то, что используется в настоящее время многими производителями.

Протокол (также известный как SDCI — Single-drop Digital Communication Interface, регламентирован по спецификации IEC 61131-9) является сетевым коммуникационным протоколом связи типа «точка-точка», с помощью которого связываются датчики и исполнительные механизмы с контроллерами. IO-Link делает возможным интеллектуальным датчикам передавать в контроллеры свой статус, параметры всех настроек и внутренние события. Как таковой, он не предназначен для замены существующих коммуникационных уровней, таких как FieldBus, Profinet или HART, но может работать вместе с ними, упрощая обмен данными бюджетного микроконтроллера с прецизионными датчиками и исполнительными механизмами.

Консорциум производителей, использующих IO-Link, считает, что можно значительно снизить сложность систем, а также ввести дополнительные полезные функции, например, диагностику в реальном времени посредством параметрического мониторинга (Рисунок 3). При интеграции в топологию FieldBus через шлюз (опять же, реализуется на микроконтроллере или программируемом логическом контроллере), сложные системы могут контролироваться и управляться централизованно из диспетчерской. Датчики и исполнительные механизмы можно настроить удаленно, отчасти потому, что датчики по спецификации IO-Link знают о себе намного больше, чем «обычные» датчики.

В первую очередь заметим, что собственный идентификатор (и производителя) и различные настройки встроены в датчик в формате XML и доступны по запросу. Это позволяет системе мгновенно классифицировать датчик и понять его назначение. Но, что более важно, IO-Link позволяет датчикам (и исполнительным механизмам) предоставлять контроллеру данные непрерывно в реальном времени. Фактически, протокол подразумевает обмен тремя типами данных: данные о процессе, сервисные данные и данные о событиях. Данные о процессе передаются циклически, а сервисные данные передаются ациклично и по запросу ведущего контроллера. Сервисные данные могут использоваться при записи/чтении параметров устройства.

Рисунок 3. Интерфейс IO-Link предлагает для микроконтроллеров более простой способ обмена данными с интеллектуальными датчиками и исполнительными механизмами, а для разработчиков – возможность создавать интеллектуальные системы автоматизации.

Некоторые производители микроконтроллеров присоединились к консорциуму IO-Link, который недавно стал Техническим Комитетом (TC6) в составе международного сообщества PI (PROFIBUS & PROFINET International). По сути, IO-Link устанавливает стандартизированный метод для контроллеров (включая микроконтроллеры и программируемые логические контроллеры) для идентификации, контроля и обмена данными с датчиками и исполнительными механизмами, которые используют этот протокол. Список производителей IO-Link-совместимых устройств постоянно растет, как и всесторонняя аппаратно-программная поддержка производителей микроконтроллеров.

Часть этой поддержки исходит от компаний специализирующихся на этой области, например, Mesco Engineering – немецкая компания, которая сотрудничает с рядом производителей полупроводниковых приборов с целью разработки решений IO-Link. В списке ее партнеров достаточно крупные и известные компании: Infineon, STMicroelectronics, Atmel и Texas Instruments. Infineon, например, портировала программный стек от Mesco на свои 8-разрядные микроконтроллеры серии XC800, а также оказывает поддержку разработки ведущего устройства IO-Link на базе своих 16-разрядных микроконтроллеров.

Стек, разработанный Mesco, также был портирован на 16-разрядные микроконтроллеры Texas Instruments серии MSP430, в частности, для MSP430F2274.

Производители также уделяют свое внимание разработке дискретных приемопередатчиков интерфейса IO-Link. Например, компания Maxim выпускает микросхему MAX14821, которая реализует интерфейс физического уровня для микроконтроллера, поддержтвающего канальный уровень протокола (Рисунок 4). Два внутренних линейных регулятора вырабатывают общие для датчика и исполнительного механизма напряжения питания 3.3 В и 5 В, подключение к микроконтроллеру для конфигурирования и мониторинга осуществляется по последовательному интерфейсу SPI.

Рисунок 4. Микросхема приемопередатчика MAX14821 предоставляет физический уровень интерфейса IO-Link для микроконтроллера, реализующего канальный уровень интерфейса.

Вполне вероятно, что благодаря простоте реализации и внедрения интерфейса IO-Link, все больше производителей будут интегрировать этот физический уровень с другой специализированной периферией, присутствующей в микроконтроллерах, с целью применения в промышленных системах автоматизации. Компания Renesas уже представила ассортимент специализированных контроллеров IO-Link Master/Slave на основе своих 16-разрядных микроконтроллеров семейства 78К.

Системы промышленной автоматизации всегда зависели от сочетания измерений и управления. В течение последних нескольких лет заметен рост уровня промышленных сетевых коммуникаций и протоколов, однако, интерфейс между цифровой и аналоговой частью системы остался относительно неизменным. С введением интерфейса IO-Link датчики и исполнительные механизмы, разрабатываемые в настоящее время, способны все же взаимодействовать с микроконтроллером в более изощренной форме. Коммуникационный протокол связи типа «точка-точка» обеспечивает не только более простой способ обмена данными для управления элементами системы, но и расширение возможностей бюджетных микроконтроллеров.

Перевод: Vadim по заказу РадиоЛоцман

ЧТО ТАКОЕ МИКРОПРОЦЕССОР, МИКРОКОНТРОЛЛЕР И
ПРОГРАММИРУЕМЫЙ ЛОГИЧЕСКИЙ КОНТРОЛЛЕР

Стремительное развитие электроники быстро меняет нашу жизнь, и мы замечаем это, прежде всего, в социальной сфере, сферах коммуникации (общения) и связи. Первое, что приходит на ум в этой связи, – это компьютеры, Интернет и сотовые телефоны. Мы свободны в поисках необходимой информации, имеем возможность выйти на связь с желаемым абонентом, невзирая на наше местоположение. Мы можем получать дистанционное образование и объединяться в группы по профессиональным, социальным или культурным интересам. Все это стало возможным в значительной мере благодаря появлению микропроцессора и созданию микропроцессорных систем.

А существуют ли другие проявления прогресса микроэлектроники, не такие заметные на первый взгляд, но играющие значительную роль в нашей жизни?

Да! микропроцессоры и микроконтроллеры широко применяются в бытовой технике, автомобильной электронике, аэрокосмической и военной отраслях и, конечно же, в промышленном производстве.

Эта статья раскрывает некоторые аспекты применения микропроцессорных систем в технике и промышленности. Если дальнейший текст покажется вам слишком тяжелым и непонятным, рекомендуем предварительно ознакомиться со статьей «Основы информатики. Компоненты микропроцессорных систем».

  • Что такое микропроцессор?
  • Что такое микроконтроллер? Каковы его особенности?
  • Где используются микроконтроллеры?
  • Чем микроконтроллер отличается от микропроцессора?
  • Что такое сигнальный процессор?
  • Что такое программируемый логический контроллер (ПЛК)? Как он построен?
  • Как программируют ПЛК?

Вы уже наверняка знаете, что любой компьютер – это машина для обработки информации, не взирая на то, какую конкретно задачу он выполняет. Центральным элементом компьютера является микропроцессор. Если спросить у ученика средней школы: – Что такое микропроцессор?, – то, скорее всего, получите ответ «Микропроцессор – это сердце компьютера».

Микропроцессор – это микроэлектронное программируемое устройство, предназначенное для обработки информации и управления процессами обмена этой информацией в составе микропроцессорной системы (компьютера).

Почему «микроэлектронное»? Потому что микропроцессоры производятся с помощью технологий современной микроэлектроники на основе полупроводникового кристалла. Информация в микропроцессорной системе передается электрическими импульсами. Конструктивно микропроцессор исполняется в виде одной микросхемы (иногда – нескольких). Микросхема состоит из пластикового или керамического корпуса, внутри которого размещается миниатюрная полупроводниковая подкладка (рис. 1). На этой подкладке лазером «начерчены» все электронные схемы микропроцессора. Входы и выходы схемы на подкладке соединены с металлическими выводами, расположенными по бокам или снизу корпуса микросхемы.

Почему микропроцессор – это «программируемое устройство»? Потому что микропроцессорные системы в общем случае универсальны, т. е. способны выполнять широкий круг задач по обработке информации. А на выполнение конкретной задачи микропроцессор «настраивают» с помощью программы – последовательного перечня машинных команд.

Обязательными компонентами микропроцессора являются регистры, арифметико-логическое устройство (АЛУ) и блок управления. Регистры предназначены для временного хранения данных, арифметико-логическое устройство – для выполнения арифметических и логических операций (т. е. для обработки данных). Блок управления отвечает за последовательное выполнение команд программы и правильное перенаправление потоков данных.

Микропроцессор не может работать сам по себе. Он является центральным звеном микропроцессорной системы, в которую также входят устройства постоянной и оперативной памяти, устройства ввода и вывода информации, накопители на жестких магнитных дисках (так называемые «винчестеры»), и т. д. Такие микропроцессорные системы собственно и называют компьютерами.

Персональный компьютер может иметь множество применений, однако это достаточно дорогое и громоздкое устройство. А как же наделить элементами интеллекта бытовую технику, автомобили, медицинские приборы? Как сделать их «умными»? Понятно, что в бытовой кондиционер нельзя вмонтировать системный блок обычного компьютера. Это повысит его стоимость в два-три раза. И в составе так называемого смарт-телевизора мы не найдем отдельного персонального компьютера в его обычном виде. Для автоматизации такого рода техники разработаны и изготавливаются специальные процессорные устройства – однокристальные микроконтроллеры (англ.: «Microcontroller»). Английское слово «control» обозначает «контролировать», «управлять». Таким образом, микроконтроллер – это специальный микропроцессор, предназначенный для автоматизации разнообразных устройств и управления их работой.

Итак, микроконтроллер – это специализированное микроэлектронное программируемое устройство, предназначенное для использования в управляющих узлах всевозможных технических изделий, системах передачи данных и системах управления технологическими процессами.

Микроконтроллеры применяют в бытовой технике, медицинских приборах, системах управления лифтами, телефонах, рациях и прочих средствах связи, электронных музыкальных инструментах и автомагнитолах, компьютерной периферии (клавиатурах, джойстиках, принтерах и т. п.), светофорах, автоматических воротах и шлагбаумах, интерактивных детских игрушках, автомобилях, локомотивах и самолетах, роботах и промышленных станках.

Микроконтроллеры также широко используются в автомобильной электронике. Например, автомобиль «Peugeot 206» имеет на борту 27 микроконтроллеров, а в автомобилях высокого класса, таких как, например, «BMW» седьмой серии, используется более 60 микроконтроллеров. Они регулируют жесткость адаптивной подвески, управляют впрыском топлива, светотехникой, двигателями дворников, стеклоподъемников и зеркал заднего вида и т. п. (рис. 3).

Микроконтроллер, в отличие от микропроцессора, обычно имеет небольшую разрядность (8 – 16 бит) и богатый набор команд манипулирования отдельными битами. Битовые команды дают возможность управлять дискретным оборудованием (поднять/опустить шлагбаум, включить/выключить лампу, нагреватель, запустить/остановить двигатель, открыть/закрыть клапан, и проч.) Средства, обеспечивающие возможность оперировать отдельными битами, вводить и выводить дискретные сигналы называют «битовым процессором».

Еще одно из основных отличий микроконтроллера от микропроцессора заключается в том, что в составе микросхемы контроллера наличествуют все необходимые элементы для построения простой (а иногда – и достаточно сложной) системы управления. Так, внутри микроконтроллера есть память данных (оперативная память), память программ (постоянная память), генератор тактовых импульсов, таймеры, счетчики, параллельные и последовательные порты. Поэтому система минимальной конфигурации на основе микроконтроллера может состоять из блока питания, непосредственно микросхемы контроллера и нескольких пассивных элементов (резисторов, конденсаторов и кварцевого резонатора). И это фактически есть ничто иное, как одноплатный мини-компьютер на основе одной микросхемы, подходящий для встраивания в объект управления. Средняя стоимость системы минимальной конфигурации составляет несколько десятков долларов (сравните со средней стоимостью персонального компьютера).

Типовая архитектура микроконтроллера (рис. 4) содержит систем систему синхронизации и управления (1), арифметико-логическое устройство (2), регистры общего назначения (3), память данных (4) и память программ (5), порты (6), функциональные устройства (таймеры, счетчики, широтно-импульсные модуляторы, интерфейсы) и регистры для их настройки (7), рис. 4.

Программы для микроконтролеров создают в специальных интегрованных инструментальных средах (англ.: Integrated Development Environment, IDE) языками Асемблера (машинных команд) или C++.

Остается добавить, что ежегодно в мире продаются миллиарды микроконтроллеров, а обычный житель развитой страны в течение дня десятки раз соприкасается с микроконтроллерами, являющимися неотъемлемой частью современной технологичной окружающей среды.

Каждый электрик должен знать:  Пропал ноль в розетке что делать, как исправить

Кроме микропроцессоров общего назначения и микроконтроллеров на рынке предлагаются так называемые сигнальные процессоры, специально предназначенные для обработки сигналов в режиме реального времени. Они используются в измерительных приборах, средствах связи, передачи и воспроизведения аудио- и видеопотоков, системах локации, космической и военной технике.

Сигнальные процессоры (англ.: Digital Signal Processor, DSP) характеризуются высокой разрядностью и быстродействием, имеют в системе команд специальные инструкции для реализации типовых алгоритмов цифровой обработки сигналов (ЦОС). Также на одном кристалле, кроме собственно процессорной части, реализуются аналогово-цифровые и цифро-аналоговые преобразователи. Аналого-Цифровой Преобразователь (АЦП) заменяет непрерывный входной сигнал соответствующим потоком цифровых данных (отсчетов). Далее эти данные обрабатываются процессорной частью, после чего с помощью Цифро-Аналогового Преобразователя (ЦАП) обработанные цифровые данные снова воспроизводятся в аналоговый сигнал. Таким способом сигнальный процессор может углублять четкость изображения, или, наоборот, размывать его, шифровать и дешифровать аудио- и видеопотоки, воспроизводить на экране виртуальную или дополненную реальность, отслеживать движущиеся объекты даже в условиях значительных помех и неполной входной информации.

ТИПЫ МИКРОПРОЦЕССОРОВ

Микропроцессоры общего назначения Микроконтроллеры Сигнальные процессоры Другие
(нейрочипы, секционные и гибридные процессоры) Применяются:
для построения персональных компьютеров, серверов и многопроцессорных систем. Применяются:
для реализации несложных функций управления и автоматизации. Применяются:
для реализации сложных алгоритмов потоковой обработки данных в режиме реального времени. Применяются:
для построения уникальных экспериментальных или специфических систем. Особенности:
• высокая вычислительная производительность,
• высокая разрядность,
• универсальная архитектура. Особенности:
• встроенная память программ и память данных,
• битовый процессор,
• таймеры, счетчики, порты, интерфейсы. Особенности:
• высокая вычислительная производительность,
• команды для реализации типовых алгоритмов обработки сигналов,
• встроенные АЦП, ЦАП или медиа-интерфейсы. Особенности:
• построение одного процессора на нескольких микросхемах,
• комбинация нескольких видов процессоров в одном изделии,
• специфическая архитектура

Еще один тип микропроцессорных устройств, которые за последние 30 – 40 лет заняли свою рыночную нишу – так называемые программируемые логические контроллеры.

Программируемый Логический Контроллер (ПЛК; англ.: Programmable Logic Controller или PLC) – это специализированная микропроцессорная система, которая используется для автоматизации технологических процессов и общепромышленных установок и комплексов (конвейеров, рольгангов, подъемных кранов, дробилок, мельниц, классификаторов, смесителей, прессов, упаковочных машин, робототехнических и гибких производственных комплексов, и т. п.)

Т. е. основная сфера применения ПЛК – это сфера промышленного производства. Однако они также используются для автоматизации зданий (контроль доступа в помещение, управление освещением, обогревом, вентиляцией и кондиционированием воздуха, управление лифтами, эскалаторами и т. п.) Также ПЛК могут применяться для создания микроклимата в тепличном хозяйстве, на птицефабриках, животноводческих фермах.

В общем случае ПЛК – это одноплатный мини-компьютер, построенный на основе однокристального микроконтроллера и расположенный в типовом корпусе размерами с кирпич. Также существуют модульные контроллеры (рис. 5). Ко входам ПЛК можно подсоединить кнопки, контакты джойстика, переключатели (т. е. органы управления), датчики и исполнительные механизмы (двигатели, лампы, нагревательные элементы, клапаны, вентили, актуаторы и т. п.) ПЛК циклически опрашивает входные сигналы (органы управления и датчики), выполняет программу пользователя (пересчитывает значения переменных) и выдает полученные выходные значения на исполнительные механизмы. Т. е. ПЛК циклически, раз за разом выполняет одну и ту же программу (программу пользователя).

Кроме аппаратной унификации (использования стандартных размеров, уровней напряжений, видов сигналов), прорывному распространению ПЛК поспособстваволо то, что для них были разработаны интуитивные «общеинженерные» языки программирования. Теперь для разработки программы пользователя не обязательно приглашать программиста высокого класса. С этим может справиться (иногда – и лучше) и технолог, и электрик, и химик, и, конечно, специалист по автоматизации. А в случае сложных задач эти языки программирования стирают грань недопонимания между программистом и инженером. Они одинаково понятны и заказчику (инженеру) и исполнителю (программисту).

Таких языков программирования – 6 (5 стандартизированных), причем 4 из них – визуальные (т. е. программа вводится не в виде текста, а как набор соединенных друг с другом графических элементов (блоков), (рис. 6).

Обычно один и тот же контроллер можно программировать на нескольких языках на выбор пользователя. Для этого используют инструментальные программные комплексы, позволяющие не только разработать программу, но и отладить ее с помощью программной модели контроллера (на «симуляторе») или в режиме мониторинга (когда программу пользователя исполняет реальный контроллер, а на дисплее компьютера можно следить за его работой).

Аппаратная и программная унификация ПЛК дает возможность легко переходить на контроллеры другого производителя, переносить программы с одной платформы на другую. Это повышает гибкость систем автоматизации, способствует конкурентному инновационному развитию рынка.

Подробно изучить работу микропроцессорных систем, научиться разрабатывать и программировать прикладные мини-компьютеры и программируемые логические контроллеры для задач автоматизации можно на кафедре электропривода Национального горного университета.

Микроконтроллеры — это что такое?

В наши дни микроконтроллеры можно встретить практически в каждом экземпляре бытовой техники и электроники. Например, если в микроволновой печи есть светодиодный или ЖК-экран и клавиатура, то она обязательно оборудована специальной управляющей микросхемой.

Многообразие применений

Все современные автомобили содержат по крайней мере один микроконтроллер и могут быть оборудованными несколькими для двигателя, антиблокировочной системы, круиз-контроля и т. д. Любое устройство с ПДУ почти наверняка имеет управление микроконтроллером. В эту категорию попадают телевизоры, плееры и высококачественные стереосистемы. Цифровые компактные и зеркальные камеры, сотовые телефоны, видеокамеры, автоответчики, лазерные принтеры, стационарные телефоны с возможностью идентификации вызывающего абонента и памятью на 20 номеров, многофункциональные холодильники, посудомоечные и стиральные машины, сушилки. В принципе, любая бытовая техника или устройство, которое взаимодействует с пользователем, имеет встроенный микроконтроллер.

Что это такое?

Микроконтроллер – это компьютер. Все компьютеры, независимо от того, являются ли они персональными или большими мэйнфреймами, обладают некоторыми общими чертами. У них есть центральный процессор (ЦПУ), который выполняет программы, загружая команды из какого-либо хранилища данных. На ПК, например, это жесткий диск. Компьютер также оборудован оперативным запоминающим устройством (ОЗУ). Для коммуникации с внешним миром должны предусматриваться специальные средства. На ПК клавиатура и мышь являются устройствами ввода информации, а монитор и принтер используются для ее вывода. Жесткий диск объединяет в себе обе эти функциональные возможности, поскольку работает как с входными, так и выходными данными.

Тип используемого в микроконтроллере процессора зависит от конкретного приложения. Доступны варианты от простых 4-, 8- или 16-разрядных до более сложных 32- или 64-битных. Что касается памяти, то могут использоваться ОЗУ, флэш-память, EPROM или EEPROM. Как правило, микроконтроллеры рассчитаны на использование без дополнительных вычислительных компонентов, поскольку они спроектированы с достаточным объемом встроенной памяти, а также имеют контакты для общих операций ввода-вывода, чтобы напрямую взаимодействовать с датчиками и другими компонентами.

Архитектура ЦПУ может быть как гарвардской, так и фон-неймановской, предлагая различные методы обмена информацией между процессором и памятью. В первом случае шины данных и команд разделены, что позволяет осуществлять одновременную их передачу. В архитектуре фон Неймана для этого используется общая.

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

Процессоры микроконтроллеров могут базироваться на расширенном (CISC) или сокращенном наборе команд (RISC). CISC обычно включает около 80 инструкций (RISC – около 30), а также большее число режимов адресации – 12–24 по сравнению с 3–5 у RISC. Хотя расширенный набор команд проще реализовать и он эффективнее использует память, его производительность ниже из-за большего количества тактовых циклов, необходимых для их выполнения. RISC-процессоры уделяют больше внимания программному обеспечению и более производительны.

Первоначально языком микроконтроллеров был ассемблер. Сегодня популярным вариантом является язык C.

При наличии соответствующего кабеля, программного обеспечения и ПК запрограммировать микроконтроллер своими руками несложно. Необходимо подключить контроллер кабелем к параллельному порту компьютера, запустить приложение и загрузить набор команд.

Определяющие характеристики

Как отличить компьютер от микроконтроллера? Если первый представляет собой устройство общего назначения, которое может запускать тысячи различных программ, то второй является специализированным, ориентированным на одно приложение. Существует и ряд других характеристик, которые позволяют отличить микроконтроллеры. Для начинающих пользователей это проблемой не будет – достаточно установить наличие у чипа большинства нижеперечисленных качеств, чтобы можно было смело отнести его к данной категории.

  • Микроконтроллеры являются элементами какого-либо другого устройства (часто бытовой техники) для управления его функциями или работой. Еще их называют встроенными контроллерами.
  • Устройство предназначено для выполнения одной задачи и запуска одной конкретной программы, хранящейся в ПЗУ, которая обычно не изменяется.
  • Микроконтроллеры – это маломощные чипы. Их мощность при питании от батареи составляет около 50 мВт. Настольный компьютер почти всегда подключен к розетке и потребляет 50 Вт и больше.

  • Микроконтроллер отличается наличием специального блока ввода и часто (но не всегда) небольшого светодиода или ЖК-дисплея для вывода. Принимает входные данные от устройства, которым он управляет, посылая сигналы различным его компонентам. Например, микроконтроллер телевизора получает сигналы с ПДУ и отображает вывод на экране телевизора. Он управляет селектором каналов, динамиками и некоторыми настройками изображения, такими как контраст и яркость. Контроллер автомобильного двигателя принимает входные сигналы от датчиков кислорода и детонации, регулирует создание топливной смеси и синхронизирует работу свечей зажигания. В микроволновой печи он принимает ввод с клавиатуры, отображает вывод на ЖК-дисплее и управляет реле включения и отключения СВЧ-генератора.
  • Микроконтроллеры – это зачастую небольшие и недорогие устройства. Компоненты выбираются таким образом, чтобы минимизировать размеры и максимально удешевить производство.
  • Часто, но не всегда, работа микроконтроллера осуществляется в неблагоприятных условиях. Например, устройство управления двигателем автомобиля должно работать в экстремальных температурах, при которых обычный компьютер вообще не может функционировать. На севере микроконтроллер автомобиля должен функционировать при температуре -34 °C, а на юге — при 49 °C. В моторном отсеке температура может достигать 65–80 °C. С другой стороны, микроконтроллер, встроенный в проигрыватель Blu-ray, вообще не должен быть особо прочным.

Требования к ЦПУ

Процессоры, используемые в микроконтроллерах, могут сильно различаться. Например, в сотовых телефонах применялся 8-разрядный микропроцессор Z-80, разработанный в 1970-х годах и первоначально использовавшийся в домашних компьютерах. GPS-навигатор Garmin оборудовался маломощной версией Intel 80386, которую также первоначально устанавливали в настольных ПК.

Большая часть бытовой техники, такой как микроволновые печи, нетребовательна к процессорам, но их цена является важным фактором. В этих случаях производители обращаются к специализированным микроконтроллерам, разработанным из недорогих, небольших и маломощных ЦПУ. Motorola 6811 и Intel 8051 являются хорошими примерами таких чипов. Также выпускается серия популярных контроллеров PIC компании Microchip. По сегодняшним меркам эти процессоры невероятно минималистичны, но они чрезвычайно дешевы и часто могут полностью удовлетворить потребности конструктора.

Экономичность

Типичный микроконтроллер – это чип с 1000 байтов ПЗУ, 20-ю байтами ОЗУ и 8-ю контактами ввода-вывода. При выпуске большими партиями их стоимость невысока. Конечно, запустить Microsoft Word на таком чипе невозможно – для этого потребуется не менее 30 МБ ОЗУ и процессор, выполняющий миллионы операций в секунду. Но для управления микроволновой печью этого и не нужно. Микроконтроллер выполняет одну конкретную задачу, а низкая стоимость и энергопотребление являются его главными преимуществами.

Как работает?

Несмотря на большое разнообразие микроконтроллеров и еще большее количество программ для них, научившись обращаться с одним из них, можно познакомиться со всеми. Типичный сценарий работы выглядит следующим образом:

  • При отключенном питании устройство никак себя не проявляет.
  • Подключение микроконтроллера к источнику энергии запускает блок логики системы управления, который отключает все другие схемы, кроме кварцевого кристалла.
  • Когда напряжение достигает своего максимума, частота генератора стабилизируется. Регистры заполняются битами, отражающими состояние всех схем микроконтроллера. Все контакты конфигурируются как входы. Электроника начинает работать согласно ритмической последовательности тактовых импульсов.
  • Счетчик команд обнуляется. Инструкция по этому адресу отправляется в декодер команд, который ее распознает, после чего она немедленно выполняется.
  • Значение счетчика команд увеличивается на 1, и весь процесс повторяется со скоростью миллион операций в секунду.

Что такое микроконтроллеры — назначение, устройство, софт

Что такое микроконтроллеры (назначение, устройство, софт)

Микроконтроллер — это специальная микросхема, предназначенная для управления различными электронными устройствами. Микроконтроллеры впервые появились в том же году, что и микропроцессоры общего назначения (1971).

Разработчики микроконтроллеров придумали остроумную идею – объединить процессор, память, ПЗУ и периферию внутри одного корпуса, внешне похожего на обычную микросхему. С тех пор производство микроконтроллеров ежегодно во много раз превышает производство процессоров, а потребность в них не снижается.

Микроконтроллеры выпускают десятки компаний, причем производятся не только современные 32-битные микроконтроллеры, но и 16, и даже 8-битные (как i8051 и аналоги). Внутри каждого семейства часто можно встретить почти одинаковые модели, различающиеся скоростью работы ЦПУ и объемом памяти.

Дело в том, что микроконтроллеры применяются преимущественно во встроенных системах, в игрушках, в станках, в массовой домашней технике, в домашней автоматике – там, где нужна не мощность процессора, а, скорее, баланс между ценой и достаточной функциональностью.

Именно поэтому самые старые типы микроконтроллеров еще до сих пор в ходу – они многое могут: от автоматического открывания дверей и включения полива газонов до интеграции в систему «умный дом». При этом существуют и более мощные микроконтроллеры, способные выполнять сотни миллионов операций в секунду и обвязанные периферией «до зубов». У них и задачи соответствующие. Таким образом, разработчик сначала оценивает задачу, а уж потом выбирает под нее подходящее «железо».

На сегодняшний день существует более 200 модификаций микроконтроллеров, совместимых с i8051, выпускаемых двумя десятками компаний, и большое количество микроконтроллеров других типов. Популярностью у разработчиков пользуются 8-битные микроконтроллеры PIC фирмы Microchip Technology и AVR фирмы Atmel, 16-битные MSP430 фирмы TI, а также 32-битные микроконтроллеры, архитектуры ARM, которую разрабатывает фирма ARM Limited и продаёт лицензии другим фирмам для их производства.

16-битный 28-pin PDIP PIC24 микроконтроллер

Микроконтроллер Atmel AVR ATmega8 в корпусе DIP

Устройство микроконтроллера AVR

Микроконтроллер характеризуется большим числом параметров, поскольку он одновременно является сложным программно-управляемым устройством и электронным прибором (микросхемой). Приставка «микро» в названии микроконтроллера означает, что выполняется он по микроэлектронной технологии.

В ходе работы микрконтроллер считывает команды из памяти или порта ввода и исполняет их. Что означает каждая команда, определяется системой команд микроконтроллера. Сиситема команд заложена в архитектуре микрконтроллера и выполнение кода команды выражается в проведении внутренними элементами микросхемы определенных микроопераций.

Микроконтроллеры позволяют гибко управлять различными электронными и электрическими устройствами. Некоторые модели микроконтроллеров настолько мощны, что могут непосредственно переключать реле (к примеру, на елочных гирляндах).

Микроконтроллеры, как правило, не работает в одиночку, а запаивается в схему, где, кроме него, подключаются экраны, клавиатурные входы, различные датчики и т.д.

Софт для микроконтроллеров может привлечь внимание тех, кто обожает «гоняться за битами», так как обычно память в микроконтроллерах составляет от 2 до 128 Кб. Если меньше, то писать приходится на ассемблере или Форте, если есть возможность, то используют специальные версии Бейсика, Паскаля, но в основном – Си. Прежде чем окончательно запрограммировать микроконтроллер, его тестируют в эмуляторах – программных или аппаратных.

Что такое микроконтроллеры — назначение, устройство, софт

Но давайте разберёмся, чем smd микроконтроллеры 14 pin отличаются от 12 пиновых и как применять микроконтроллеры для чайников.

Для начала стоит обозначить, что область применения МК – гигантская, каждый современный автомобиль, холодильник и любой электрический прибор, если не учитывать различные адаптеры и модули, содержат в себе тот самый однокристальный (чаще поликристальный) чип. Ведь без него было бы невозможно, в принципе, контролировать приборы и каким-либо образом ими манипулировать.

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

Соответственно, прямое назначение такого устройства – контроль всего, что происходит на его платформе, например, в вашем ПК процессор является сердцем и ядром системы, ведь любой код компилируется в двоичный, дабы уже МК мог обрабатывать данные и выводить результаты.

Без этого ни одно приложение бы не запустилось. Но это лишь конкретная область применения, на деле, с помощью Ардуино и похожих систем, можно контролировать любые переменные, включая свет по хлопку или раздвигание штор при изменении освещения на улице. Вот и выходит, что назначение МК – это контроль любых переменных и изменение системы под их состояние, возможно, с последующим выводом промежуточных данных, для проверки работоспособности.

Но давайте разберёмся, почему любая разработка ПО для микроконтроллеров с помощью специальных сред в итоге компилирует (превращает) код в двоичный, и зачем это нужно?

Принцип работы

В предыдущих пунктах мы оперировали абстрактными понятиями, теперь пришло время перейти к реальным и практическим примерам. Принцип работы любого, даже самого сложного контроллера, сводится к следующему алгоритму:

  1. Он принимает определённые переменные или другие данные, которые прежде должны быть преобразованы в двоичный сигнал. Это необходимо, поскольку на низшем уровне система способна воспринимать лишь 2 состояния – есть сигнал или нет сигнала. Такой принцип называют аналоговым. Существует аналогичный алгоритм, когда сигнал присутствует постоянно, но меняется по частоте – цифровой. У них множество различий, как в областях применения, так и в особенностях работы сигнала, но суть одна – процессор способен воспринимать лишь значения 0 и 1, или true и false, и не важно, какими путями микропроцессоры и микроконтроллеры будут их считывать.
  2. Во внутренней памяти устройства хранится набор специальных инструкций, который позволяет, путем базовых математических преобразований, выполнять какие-то действия с полученными данными. Именно эти базовые операнды и берутся на вооружение компилируемых языков программирования, когда необходимо написать библиотеку готовых функций. Остальные нюансы языков программирования – это уже синтаксис и теория алгоритмов. Но в результате, всё сводится к базовым операндам, которые превращаются в двоичный код и обрабатываются внутренней системой процессора.
  3. Всё, что было получено и сохранено после обработки, выдается на выход. На самом деле, данный пункт выполняется всегда, единственная разница, что выходом может быть и преобразование состояния объекта какой-то системы. Простейшим примером станет замыкание электрической цепи, в случае, если на специальный датчик подать ток, вследствие чего загорится лампочка. Здесь всё зависит от типа устройства, так, 8051 микроконтроллер может выполнять несколько видов выводов, имея 14 пинов, а какой-то другой – всего один, ведь у него 1 пин на выход. Количество выходов влияет на многопоточные свойства девайса, иными словами, возможность выводить информацию сразу на несколько устройств или совершать несколько действий одновременно.

В целом, любой моно или поликристальный блок работает по этому алгоритму, разница лишь в том, что второй – способен параллельно выполнять несколько расчетов, а первый имеет конкретный список действий, который должен выполнить последовательно.

Это напрямую влияет на скорость работы устройств, и именно из-за этой характеристики 2-ух ядерные девайсы мощнее, чем 1-ядерные, но имеющие большую герцовку (способность выполнять большее количество преобразований за единицу времени).

Но почему микроконтроллер овен не способен выполнять некоторые действия, характерные для 8051, и какая классификация вообще существует в данной сфере?

История

С появлением однокристальных микро-ЭВМ связывают начало эры массового применения компьютерной автоматизации в области управления. По-видимому, это обстоятельство и определило термин «контроллер» (англ. controller — регулятор, управляющее устройство).

В связи со спадом отечественного производства и возросшим импортом техники, в том числе вычислительной, термин «микроконтроллер» (МК) вытеснил из употребления ранее использовавшийся термин «однокристальная микроЭВМ».

Первый патент на однокристальную микроЭВМ был выдан в 1971 году инженерам М. Кочрену и Г. Буну, сотрудникам американской Texas Instruments. Именно они предложили на одном кристалле разместить не только процессор, но и память с устройствами ввода-вывода.

В 1976 году американская фирма Intel выпускает микроконтроллер i8048. В 1978 году фирма Motorola выпустила свой первый микроконтроллер MC6801, совместимый по системе команд с выпущенным ранее микропроцессором MC6800. Через 4 года, в 1980 году, Intel выпускает следующий микроконтроллер: i8051. Удачный набор периферийных устройств, возможность гибкого выбора внешней или внутренней программной памяти и приемлемая цена обеспечили этому микроконтроллеру успех на рынке. С точки зрения технологии микроконтроллер i8051 являлся для своего времени очень сложным изделием — в кристалле было использовано 128 тыс. транзисторов, что в 4 раза превышало количество транзисторов в 16-разрядном микропроцессоре i8086.

На сегодняшний день существует более 200 модификаций микроконтроллеров, совместимых с i8051, выпускаемых двумя десятками компаний, и большое количество микроконтроллеров других типов. Популярностью у разработчиков пользуются 8-битные микроконтроллеры PIC фирмы Microchip Technology и AVR фирмы Atmel, 16-битные MSP430 фирмы TI, а также 32-битные микроконтроллеры архитектуры ARM, которую разрабатывает фирма ARM Limited и продаёт лицензии другим фирмам для их производства. Несмотря на популярность в России микроконтроллеров, упомянутых выше, по данным Gartner Grup от 2009 года мировой рейтинг по объёму продаж выглядит иначе: первое место с большим отрывом занимает Renesas Electronics на втором Freescale, на третьем Samsung, затем идут Microchip и TI, далее все остальные.

В СССР велись разработки оригинальных микроконтроллеров, также осваивался выпуск клонов наиболее удачных зарубежных образцов .

В 1979 году в СССР НИИ ТТ разработали однокристальную 16-разрядную ЭВМ К1801ВЕ1, микроархитектура которой получила название «Электроника НЦ».

Описание

При проектировании микроконтроллеров приходится соблюдать компромисс между размерами и стоимостью с одной стороны и гибкостью и производительностью с другой. Для разных приложений оптимальное соотношение этих и других параметров может различаться очень сильно. Поэтому существует огромное количество типов микроконтроллеров, отличающихся архитектурой процессорного модуля, размером и типом встроенной памяти, набором периферийных устройств, типом корпуса и т. д. В отличие от обычных компьютерных микропроцессоров, в микроконтроллерах часто используется гарвардская архитектура памяти, то есть раздельное хранение данных и команд в ОЗУ и ПЗУ соответственно.

Кроме ОЗУ, микроконтроллер может иметь встроенную энергонезависимую память для хранения программы и данных. Многие модели контроллеров вообще не имеют шин для подключения внешней памяти.

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

Неполный список периферийных устройств, которые могут использоваться в микроконтроллерах, включает в себя:

  • универсальные цифровые порты, которые можно настраивать как на ввод, так и на вывод;
  • различные интерфейсы ввода-вывода, такие, как UART, I²C, SPI, CAN, USB, IEEE 1394, Ethernet;
  • аналого-цифровые и цифро-аналоговые преобразователи;
  • компараторы;
  • широтно-импульсные модуляторы (ШИМ-контроллер);
  • таймеры;
  • контроллеры бесколлекторных двигателей, в том числе шаговых;
  • контроллеры дисплеев и клавиатур;
  • радиочастотные приемники и передатчики;
  • массивы встроенной флеш-памяти;
  • встроенные тактовый генератор и сторожевой таймер;

Ограничения по цене и энергопотреблению ограничивает тактовую частоту контроллеров. Хотя производители стремятся обеспечить работу своих изделий на высоких частотах, они, в то же время, предоставляют заказчикам выбор, выпуская модификации, рассчитанные на разные частоты и напряжения питания. Во многих моделях микроконтроллеров используется статическая память для ОЗУ и внутренних регистров. Это даёт контроллеру возможность работать на меньших частотах и даже не терять данные при полной остановке тактового генератора. Часто предусмотрены различные режимы энергосбережения, в которых отключается часть периферийных устройств и вычислительный модуль.

Каждый электрик должен знать:  Недельный электронный таймер краткая характеристика, функционал

Известные семейства

  • MCS 51 (Intel)
  • ESP8266 (Espressif)
  • MSP430 (TI)

Применение

Использование в современном микроконтроллере достаточного мощного вычислительного устройства с широкими возможностями, построенного на одной микросхеме вместо целого набора, значительно снижает размеры, энергопотребление и стоимость построенных на его базе устройств.

Используются в управлении различными устройствами и их отдельными блоками:

  • в вычислительной технике: материнские платы, контроллеры дисководов жестких и гибких дисков, CD и DVD, калькуляторах;
  • электронике и разнообразных устройствах бытовой техники, в которой используется электронные системы управления — стиральных машинах, микроволновых печах, посудомоечных машинах, телефонах и современных приборах, различных роботах, системах «умный дом», и др..
  • устройства промышленной автоматики — от программируемого реле и встраиваемых систем до ПЛК,
  • систем управления станками

В то время как 8-разрядные микропроцессоры общего назначения полностью вытеснены более производительными моделями, 8-разрядные микроконтроллеры продолжают широко использоваться. Это объясняется тем, что существует большое количество применений, в которых не требуется высокая производительность, но важна низкая стоимость. В то же время, есть микроконтроллеры, обладающие больши́ми вычислительными возможностями, например, цифровые сигнальные процессоры, применяющиеся для обработки большого потока данных в реальном времени (например, аудио-, видеопотоков).

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

Программирование микроконтроллеров обычно осуществляется на языке ассемблера или Си, хотя существуют компиляторы для других языков, например, Форта и Бейсика. Используются также встроенные интерпретаторы Бейсика.

Известные компиляторы Си для МК:

  • GNU Compiler Collection — поддерживает ARM, AVR, MSP430 и многие другие архитектуры
  • Small Device C Compiller — поддерживает множество архитектур
  • CodeVisionAVR (для AVR)
  • IAR (для любых МК)
  • WinAVR (для AVR и AVR32)
  • Keil (для архитектуры 8051 и ARM)
  • HiTECH (для архитектуры 8051 и PIC от Microchip)

Известные компиляторы бейсика для МК:

  • MikroBasic (архитектуры PIC, AVR, 8051 и ARM)
  • Bascom (архитектуры AVR и 8051)
  • FastAVR (для архитектуры AVR)
  • PICBasic (для архитектуры PIC)
  • Swordfish (для архитектуры PIC)

Для отладки программ используются программные симуляторы (специальные программы для персональных компьютеров, имитирующие работу микроконтроллера), внутрисхемные эмуляторы (электронные устройства, имитирующие микроконтроллер, которые можно подключить вместо него к разрабатываемому встроенному устройству) и отладочный интерфейс, например, JTAG.

  • Программируемый логический контроллер
  • Система на кристалле
  • Однокристальный микроконтроллер

Общее устройство микроконтроллеров: основа микроконтроллера, периферийные устройства

Ну вот, уважаемые читатели, мы и подошли к одному из главных вопросов в деле изучения микроконтроллеров – устройству микроконтроллеров.

Микроконтроллеры фирмы ATMEL

Для начала давайте условимся, что слово микроконтроллер в тексте будет прописываться двумя заглавными буквами – МК, так проще и удобнее.

Немножко истории.
Фирма ATMEL была создана в 1984 году, ее полное название – Advanced Technologi Memory and Logic.
Первый МК фирма выпустила в 1993 году.
В 1995 году была придумана новая архитектура процессорного ядра для МК, так называемое RISС-ядро (что это за диво, вы при желании можете ознакомиться в любой популярной литературе, а мы отвлекаться не будем).
Новую архитектуру МК назвали AVR. Идея новой архитектуры ядра оказалась очень удачной, и уже с 1997 года ATMEL начала серийный выпуск МК на основе RISC-ядра.

В настоящее время ATMEL выпускает в год несколько миллиардов МК разнообразных типов. Из всего этого множества мы выделим два семейств восьмиразрядных МК:

— TINY AVR
– MEGA AVR

Семейство Tiny – более простые, менее навороченные и, соответственно, более дешевые.
Семейство Mega – более навороченные, но и стоят дороже.
В каждом семействе большое разнообразие различных МК, что позволяет нам выбрать для создаваемой конструкции наиболее оптимальный вариант МК как по его возможностям, так и по цене.

Почему эти семейства МК называются восьмиразрядными (заодно узнаем что такое шины).
МК – сложная штука, в нем (в одном корпусе) размещено много разных устройств, которые, естественно, должны общаться между собой – передавать или принимать данные (нули и единички), передавать и принимать различные сигналы управления, записывать данные в память или считывать их из памяти. Общение устройств между собой а также с «внешним миром» происходит с помощью шин.
Шину можно представить как жгут с несколькими проводами с помощью которых все устройства соединены между собой и по которым передаются цифровые сигналы – логические нули и логические единицы.

В МК имеется три шины:
1. Шина данных (Data Bus – по английски).
Шина данных — шина, предназначенная для передачи информации.
Эта шина служит только для передачи различных данных между устройствами. Эта шина двунаправленная: по ней устройство может как передавать, так и принимать данные. МК семейства Tiny и Mega могут за один раз передать или принять восемь бит информации (бит – наименьшая единица измерения данных в цифровой технике, одна логическая единица или один логический ноль – это один бит информации) . Такая шина называется восьмиразрядной (иногда встречается название – восьмибитовая), а отсюда и сами МК – восьмиразрядными (если грубо, то можно сказать, что все устройства соединены жгутами из восьми проводов).
Минимальная разрядность шины данных – 8 бит (меньше не бывает). Современные компьютеры имеют 64-разрядную шину данных. Разрядность шины данных всегда кратна 8 (восьмиразрядная, шестнадцатиразрядная, тридцатидвухразрядная…)
2. Шина адреса (Addr Bus – по английски).
Шина адреса — шина, на которой в ходе выполнения программы выставляется адрес ячейки памяти, к которой в данный момент времени должен обратиться МК чтобы считать или следующую команду, или данные, или в которую необходимо записать данные.
3. Шина управления (Control Bus – по английски).
Шина управления – шина, а точнее набор линий (проводников) по которым передаются управляющие сигналы с помощью которых определяется как будет происходить обмен информацией – или ее считывание из памяти, или запись в память, а также некоторые специальные сигналы – сигнал готовности, сигнал сброса.
Небольшой пример работы шин.
Необходимо записать число 60 в ячейку памяти:
– на шине адреса выставляется адрес ячейки памяти в которую необходимо записать число
– на шине управления выставляется сигнал записи
– по шине данных передается число 60, которое записывается в выбранную ячейку памяти.
Ну вот, как общаются устройства в МК между собой, мы вроде-бы разобрались. Идем дальше.

В современном МК много различных устройств, в каком-то типе больше, а в каком-то меньше, а кроме того, в разных МК эти устройства могут различаться по своим характеристикам. Но в МК есть то, что составляет его основу и присутствует во всех типах – процессорное ядро (микропроцессорная система – по аналогии с компьютером), которое состоит из трех основных устройств:
1. АЛУ – арифметико-логическое устройство (микропроцессор) которое выполняет все вычисления (выполняет нашу программу).
2. Память -предназначена для хранения программ, данных, а также любой другой нужной нам информации.
3. Порты ввода – вывода. Это выводы МК с помощью которых он общается с «внешним миром». При передаче информации МК выставляет на своих выводах соответствующие логические уровни (0 или 1). При приеме информации МК считывает с этих выводов логические уровни, которые выставлены внешним устройством.
Это трио – основа МК:

Эту основу МК мы с вами рассмотрим очень подробно, но в следующей статье, как и то, что вы прочтете ниже.

В зависимости от модели МК в нем могут присутствовать дополнительные или, как еще говорят – периферийные устройства. Все периферийные устройства работают сами по себе, т.е. отдельно от процессора МК и не мешают выполнению программы. Когда периферийное устройство выполнит свою работу, оно может об этом сообщить процессору, а может и не сообщать – зависит от нашего желания, сами потом посмотрим на результаты.

1. Аналоговый компаратор
Присутствует во всех моделях МК
Аналоговый компаратор – устройство сравнения. Основная задача компаратора – это сравнение двух напряжений: одно из них – образцовое (с чем сравниваем), а второе – измеряемое (сравниваемое). Если сравниваемое напряжение больше образцового – компаратор вырабатывает сигнал логической единицы. Если сравниваемое напряжение меньше образцового – компаратор формирует на своем выходе логический ноль.
С помощью компаратора можно, к примеру, контролировать напряжение на заряжаемом аккумуляторе. Пока напряжение не достигнет нужного уровня, на выходе компаратора – логический ноль, как только напряжение аккумулятора достигло уровня нужного нам, компаратор вырабатывает логическую единицу, и значит можно завершить зарядку аккумулятора.

2. АЦП – аналогово-цифровой преобразователь.
Имеют не все МК.
АЦП – преобразователь аналогового напряжения в цифровую форму.
Аналоговое напряжение – это напряжение которое изменяется по напряжению во времени. Например – синусоидальный сигнал с выхода генератора частоты, напряжение в бытовой розетке, звуковой сигнал на колонках.
АЦП постоянно анализирует на своем входе величину напряжения и выдает на своем выходе цифровой код, соответствующий входному напряжению.
Примеры применения:
– цифровой вольтметр или амперметр
– процессорный стабилизатор напряжения
МК, которые имеют АЦП, также имеют раздельное питание для цифровой и для аналоговой частей.

3. Таймер/счетчик
Присутствует во всех моделях МК, но в разных количествах – от 1 до 4, и с разными возможностями.
Таймер/счетчик – это как бы два устройства в одном флаконе: таймер + счетчик.
Таймер – устройство, которое позволяет формировать временные интервалы. Таймер представляет собой цифровой счетчик который считает импульсы или от внутреннего генератора частоты, или от внешнего источника сигнала.
С помощью таймера/счетчика можно:
– отсчитывать и измерять временные интервалы
– подсчитывать количество внешних импульсов
– формировать ШИМ-сигналы
К примеру, мы хотим создать прибор позволяющий измерять частоту входного сигнала (частотомер). В этом случае мы можем использовать два счетчика/таймера. Первый будет отсчитывать временные интервалы равные 1 секунде, а второй будет считать количество импульсов за промежуток времени в 1 секунду которые отсчитывает первый таймер. Количество импульсов подсчитанное вторым таймером/счетчиком за 1 секунду будет равно частоте входного сигнала.
ШИМ- широтно-импульсный модулятор, предназначен для управления средним значением напряжения на нагрузке.
ШИМ – один из вариантов работы таймера/счетчика, позволяющий генерировать на выходе МК прямоугольное импульсное напряжение с регулируемой длительностью между импульсами (скважностью), которое применяется в различных устройствах:
– регулирование частоты вращения электродвигателя
– осветительные приборы
– нагревательные элементы

4. Сторожевой таймер.
Есть во всех моделях МК. Может быть включен или выключен по усмотрению программиста.
У сторожевого таймера только одна задача – производить сброс (перезапускать программу) МК через определенный промежуток времени.
При работе МК могут возникать различные ситуации при которых его нормальная работа будет нарушена (внешние помехи, дурацкая программа, за которую надо голову оторвать программисту). В таких случаях говорят, что МК «завис».
При нормальной работе МК и включенном сторожевом таймере, программа должна периодически производить сброс сторожевого таймера (а периодический сброс мы должны сами предусмотреть в программе) еще до того, как он должен сработать и перезапустить МК. Если программа «зависла», то сброса сторожевого таймера не будет, и через определенный промежуток времени он перезапустит МК.

5. Модуль прерываний.
Прерывание – сигнал, сообщающий процессору о наступлении какого-либо события. При этом выполнение текущей программы приостанавливается и управление передается обработчику прерывания, который реагирует на событие и обслуживает его (выполняется программа, которую должен выполнить МК при наступлении соответствующего события – прерывания), после чего возвращается в прерванную программу.
Прерывания бывают внутренние и внешние.
Внутренние прерывания могут возникать при работе периферийных устройств МК (АЦП, компаратор, таймер и т.д.)
Внешнее прерывание – событие, которое возникает при наличии сигнала на одном из специальных входов МК (таких специальных входов для внешних прерываний у МК может быть несколько).
Пример.
Внутреннее прерывание. Собрали на МК устройство, которое еще обладает и функцией зарядки резервного источника питания. МК выполняет свою основную программу, аналоговый компаратор в это время проверяет напряжение на аккумуляторе. Как только напряжение аккумулятора снизится ниже допустимого, компаратор вырабатывает сигнал процессору – прерывание, процессор останавливает выполнение основной программы и переходит к выполнению программы прерывания, вызванного компаратором – к примеру, включает схему зарядки аккумулятора, а затем возвращается к выполнению прерванной программы.
Внешнее прерывание. Работа МК происходит также, как и при внутреннем прерывании, но вызываться оно может любым устройством, подключенным к специальному входу МК.

6. Интерфейсы и модули для передачи данных. Мы подробно рассматривать их будем только в том случае, если они потребуются для собираемой нами (в будущем) конструкции. Более подробно о них можно прочитать в популярной литературе.
Последовательный периферийный интерфейс SPI
Имеется во всех моделях МК.
Мы его в 99,9 случаях из 100 применяем для программирования МК.
Кроме программирования МК интерфейс SPI позволяет:
– обмениваться данными между МК и внешними устройствами
– обмениваться данными нескольким МК между собой
Универсальный приемопередатчик
Имеют все модели МК, но разных типов:
– USART
– UART
Предназначены для обмена данными по последовательному каналу.
Последовательный двухпроводный интерфейс TWI
Встречается только в серии Mega.
Предназначен для обмена данными по двухпроводной линии. Всего к такой линии можно подключить до 128 устройств.
TWI является полным аналогом интерфейса I2C.

♦ Микроконтроллер и как его победить
♦ Микроконтроллер и системы счисления
♦ Микроконтроллер и логические операции

♦ Арифметико-логическое устройство и организация памяти – память программ, память данных, энергонезависимая память
♦ Регистры общего назначения, регистры ввода/вывода, стек, счетчик команд
♦ Регистр состояния SREG
♦ Порты ввода/вывода микроконтроллера

Что такое микроконтроллеры — назначение, устройство, софт

Микроконтроллер — это специальная микросхема, предназначенная для управления различными электронными устройствами. Микроконтроллеры впервые появились в том же году, что и микропроцессоры общего назначения (1971).

Разработчики микроконтроллеров придумали остроумную идею – объединить процессор, память, ПЗУ и периферию внутри одного корпуса, внешне похожего на обычную микросхему. С тех пор производство микроконтроллеров ежегодно во много раз превышает производство процессоров, а потребность в них не снижается.

Микроконтроллеры выпускают десятки компаний, причем производятся не только современные 32-битные микроконтроллеры, но и 16, и даже 8-битные (как i8051 и аналоги). Внутри каждого семейства часто можно встретить почти одинаковые модели, различающиеся скоростью работы ЦПУ и объемом памяти.

Дело в том, что микроконтроллеры применяются преимущественно во встроенных системах, в игрушках, в станках, в массовой домашней технике, в домашней автоматике – там, где нужна не мощность процессора, а, скорее, баланс между ценой и достаточной функциональностью.

Именно поэтому самые старые типы микроконтроллеров еще до сих пор в ходу – они многое могут: от автоматического открывания дверей и включения полива газонов до интеграции в систему «умный дом». При этом существуют и более мощные микроконтроллеры, способные выполнять сотни миллионов операций в секунду и обвязанные периферией «до зубов». У них и задачи соответствующие. Таким образом, разработчик сначала оценивает задачу, а уж потом выбирает под нее подходящее «железо».

На сегодняшний день существует более 200 модификаций микроконтроллеров, совместимых с i8051, выпускаемых двумя десятками компаний, и большое количество микроконтроллеров других типов. Популярностью у разработчиков пользуются 8-битные микроконтроллеры PIC фирмы Microchip Technology и AVR фирмы Atmel, 16-битные MSP430 фирмы TI, а также 32-битные микроконтроллеры, архитектуры ARM, которую разрабатывает фирма ARM Limited и продаёт лицензии другим фирмам для их производства.

16-битный 28-pin PDIP PIC24 микроконтроллер

Микроконтроллер Atmel AVR ATmega8 в корпусе DIP

Устройство микроконтроллера AVR

Микроконтроллер характеризуется большим числом параметров, поскольку он одновременно является сложным программно-управляемым устройством и электронным прибором (микросхемой). Приставка «микро» в названии микроконтроллера означает, что выполняется он по микроэлектронной технологии.

В ходе работы микрконтроллер считывает команды из памяти или порта ввода и исполняет их. Что означает каждая команда, определяется системой команд микроконтроллера. Сиситема команд заложена в архитектуре микрконтроллера и выполнение кода команды выражается в проведении внутренними элементами микросхемы определенных микроопераций.

Микроконтроллеры позволяют гибко управлять различными электронными и электрическими устройствами. Некоторые модели микроконтроллеров настолько мощны, что могут непосредственно переключать реле (к примеру, на елочных гирляндах).

Микроконтроллеры, как правило, не работает в одиночку, а запаивается в схему, где, кроме него, подключаются экраны, клавиатурные входы, различные датчики и т.д.

Софт для микроконтроллеров может привлечь внимание тех, кто обожает «гоняться за битами», так как обычно память в микроконтроллерах составляет от 2 до 128 Кб. Если меньше, то писать приходится на ассемблере или Форте, если есть возможность, то используют специальные версии Бейсика, Паскаля, но в основном – Си. Прежде чем окончательно запрограммировать микроконтроллер, его тестируют в эмуляторах – программных или аппаратных.

Тут может возникнуть вопрос: микропроцессор и микроконтроллер это просто разное название одного и того же устройства, или это все-таки разные вещи?

Микропроцессор это центральное устройство любой ЭВМ, выполненный по интегральной технологии. Само название говорит о том, что именно в нем происходят вычислительные процессы. Чтобы из него получилась ЭВМ, пусть даже не очень современная и мощная (вспомните любительские конструкции Радио-86 или Синклер), его надо дополнить внешними устройствами. В первую очередь это оперативная память и порты ввода вывода информации.

Микроконтроллер имеет внутри себя процессор, оперативную память, память программ, а кроме этого целый набор периферийных устройств, которые превращают процессор в полнофункциональную ЭВМ. По старой терминологии советских времен подобные устройства назывались Однокристальными Микро ЭВМ. Но советская вычислительная техника, как известно, зашла в тупик, а вместе с ней и ОМЭВМ.

Зарубежная же вычислительная техника на месте не стояла, поэтому ОМЭВМ стали называться контроллерами (от англ. Control – управлять, управление). И в самом деле, контроллеры оказались весьма пригодны для управления различной техникой, даже не очень сложной.

МИКРОКОНТРОЛЛЕР — это уже не процессор, но ещё и не компьютер.

Центральный процессор, имеющийся в каждом компьютере — главный вычислитель. Хотя компьютер и не предназначен исключительно для вычислительной нагрузки, процессор является в нём головным элементом. Но не только в компьютере имеется процессор.

Если вдуматься и присмотреться, то можно обнаружить, что процессоры применяются в большинстве приборов бытового предназначения. Только там используются не такие процессоры как в компьютере, а микропроцессоры и даже микроконтроллеры.

Так что же такое микроконтроллер и чем отличается от собственно процессора или это совершенно различные электронные компоненты?

Большие интегральные микросхемы или микросхемы с большой степенью интеграции и есть процессоры. Микропроцессоры, по сути те же процессоры, но из-за приставки «микро» определяется их суть, что они миниатюрнее своих «больших» собратьев. В своё историческое время процессор со своим размером мог занимать не одну комнату, впору их назвать как вымерших динозавров макро-процессорами, чтобы и их как-то упорядочить в современном представлении об электронике.

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

Чтобы микропроцессор мог переслать данные в память, эта самая память должна присутствовать либо на самом кристалле, на котором находится сам процессорный элемент, либо подключаться к внешней оперативной памяти выполненной в виде отдельного кристалла или модуля.

Кроме памяти процессор должен взаимодействовать с внешними устройствами – периферией. Иначе какой пользы можно ожидать от работы процессора, перемешивающего и перемещающего данные туда-сюда. Смысл возникает тогда, когда процессор взаимодействует с устройствами ввода-вывода. У компьютера это клавиатура, манипулятор мышь и устройства отображения как дисплей, опционально – принтер и, например, сканер опять же для ввода информации.

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

Интеграция процессора со всеми необходимыми дополнительными элементами, для того чтобы это изделие выливалось в какой-то завершённый конструктив и приводит к образованию микроконтроллера. Микросхема или микроконтроллерный чип реализует на одном кристалле процессор и интерфейсные схемы.

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

Микроконтроллеры широко используются в изделиях которые содержат всю систему целиком исключительно в одной миниатюрной микросхеме, часто называемой микросборкой. Например «чиповая» кредитная карточка содержит микроконтроллер внутри в пластиковой основе. Таблетка домофона так же внутри себя содержит микроконтроллер. И примеров использования и применения микроконтроллеров настолько обширен в современном мире, что легко обнаружить наличие контроллера в любом мало-мальски интеллектуальном устройстве от детской игрушки до беспроводной гарнитуры сотового телефона.

Смотите также у нас на сайте:

История создания и развития микроконтроллеров, их виды и классификация

Электронная книга — руководство про микроконтроллеры AVR для начинающих

Смотрите также по этой теме обучающие видеокурсы Мaкcима Селиванова:

1. Базовый видеокурс «Программирование микроконтроллеров для начинающих»

Кур для тех, кто уже знаком с основами электроники и программирования, кто знает базовые электронные компоненты, собирает простые схемы, умеет держать паяльник и желает перейти на качественно новый уровень, но постоянно откладывает этот переход из-за сложностей в освоении нового материала.

Курс замечательно подойдет и тем, кто только недавно предпринял первые попытки изучить программирование микроконтроллеров, но уже готов все бросить от того, что у него ничего не работает или работает, но не так как ему нужно (знакомо?!).

Курс будет полезен и тем, кто уже собирает простенькие (а может и не очень) схемы на микроконтроллерах, но плохо понимает суть того как микроконтроллер работает и как взаимодействует с внешними устройствами.

Видеотзыв об этом курсе:

2. Видеокурс «Программирование микроконтроллеров на языке Си»

Курс посвящен обучению программирования микроконтроллеров на языке Си. Отличительная особенность курса — изучение языка на очень глубоком уровне. Обучение происходит на примере микроконтроллеров AVR. Но, в принципе, подойдет и для тех, кто использует другие микроконтроллеры.

Курс рассчитан на подготовленного слушателя. То есть, в курсе не рассматриваются базовые основы информатики и электроники и микроконтроллеров. Но, что бы освоить курс понадобятся минимальные знания по программированию микроконтроллеров AVR на любом языке. Знания электроники желательны, но не обязательны.

Курс идеально подойдет тем, кто только начал изучать программирование AVR микроконтроллеров на языке С и хочет углубить свои знания. Хорошо подойдет и тем, кто немного умеет программировать микроконтроллеры на других языках. И еще подойдет обычным программистам, которые хотят углубить знания в языке Си.

3. «Создание устройств на микроконтроллерах на языке Си»

Этот курс для тех, кто не хочет ограничиваться в своем развитии простыми или готовыми примерами. Курс отлично подойдет тем, кому важно создание интересных устройств с полным пониманием того, как они работают. Курс хорошо подойдет и тем, кто уже знаком с программированием микроконтроллеров на языке Си и тем, кто уже давно программирует их.

Материал курса прежде всего ориентирован на практику использования. Рассматриваются следующие темы: радиочастотная идентификация, воспроизведение звука, беспроводной обмен данными, работа с цветными TFT дисплеями, сенсорным экраном, работа с файловой системой FAT SD-карты.

Добавить комментарий