Что такое микроконтроллер. Применение микроконтроллеров.
Цель курса – познакомиться с микропроцессорной техникой, научиться писать программы для микроконтроллеров и отлаживать их на реальном оборудовании. В курсе описано устройство микроконтроллера, показано, как он взаимодействует с окружающим миром. Курс предназначен для учащихся школ, нетехнических колледжей, техникумов и ВУЗов.
Для освоения курса не требуется каких-либо специализированных знаний в электротехнике и программировании, не нужно ничего паять (хотя в будущем было бы неплохо научиться ;), не нужно покупать дорогостоящих отладочных плат. Для начала работы нам понадобится персональный компьютер (ПК) с выходом в интернет. Вся практическая часть курса выполняется в лаборатории с удаленным доступом, которая представлена макетной платой с микроконтроллером и направленной на нее вебкамерой. Любой желающий может, сидя у себя дома, запрограммировать микроконтроллер и через вебкамеру понаблюдать за его работой.
Программы мы будем писать на языке С в среде программирования Keil-C компании ARM. Сразу оговоримся, среда разработки Keil-C платная, но для выполнения всех наших работ достаточно демонстрационной версии этого продукта, demo версию можно скачать либо с официального сайта компании ARM www.keil.com, либо у нас в разделе файлы. В своих примерах я буду использовать версию v812.
Что же такое микроконтроллер? Микроконтроллер можно сравнить с персональным компьютером, он также имеет свой процессор, оперативную память, память для долгосрочного хранения информации, порты ввода-вывода и многие другие периферийные устройства, например, аналого-цифровые (АЦП) и цифроаналоговые преобразователи (ЦАП). Только, в отличие от персонального компьютера, все эти компоненты объединены в одной микросхеме, поэтому микроконтроллер можно назвать «компьютером в одной микросхеме». Конечно, быстродействие такого компьютера не сравниться с быстродействием ПК, но для большинства задач мониторинга и управления его достаточно.
Рисунок 1 — Внешний вид микрокнтроллера ADuC842 в различных корпусах
Микроконтроллер может задавать режим работы стиральной машины, контролировать температуру в бассейне, выводить на жидкокристаллический дисплей текст или изображение, управлять мощностью освещения, измерять напряжение, ток или любую другую физическую величину. Микроконтроллер можно встретить в сотовом телефоне, телевизоре, микроволновой печи, фотоаппарате, автомобиле, клавиатуре, наручных часах, то есть в любых устройствах, где так или иначе приходится чем-либо управлять, что-то измерять или обрабатывать информацию.
Также как и для персонального компьютера, для работы микроконтроллера требуется программа, но если в ПК, как правило, программа рассчитана на взаимодействие с операционной системой, то в микропроцессоре (тоже, как правило, но совсем не обязательно) такой операционной системы нет. В персональном компьютере операционная система организует доступ пользовательской программы ко всем внутренним и внешним устройствам компьютера через драйвер. Когда мы пишем программу для микроконтроллера, то никаких драйверов устройств нет, и нам необходимо самостоятельно организовывать программный доступ к каждому устройству.
Для обмена информацией с внешним миром в контроллере предусмотрены порты ввода и вывода информации. Часто порт ввода объединяется с портом вывода, и образуют порт ввода-вывода информации.
С внешним миром микроконтроллер обменивается информацией в цифровом виде. Основой логики работы микропроцессора служит двоичная система счисления, состоящая всего из двух цифр – единицы «1» и нуля «0». Эти две цифры двоичной системы позволяют записывать практически любые числа. Для электрических сигналов, несущих эту цифровую информацию, двоичная система счисления соответствует двум состояниям, или двум «логическим» уровням: высокому и низкому. Как правило, напряжение высокого логического уровня близко к напряжению питания микросхемы, например, 5 В или 3 В. Напряжение низкого логического уровня – логического ноля «0» — может составлять несколько десятых вольта, например, 0,3 В, и в идеальном случае равняется 0 В. С помощью загруженной в него программы микроконтроллер может установить на любой ножке порта вывода требуемый уровень напряжения. Также микроконтроллер может программно определять состояние сигнала на своих ножках, высокое ли напряжение на ней или низкое (ноль или единица).
Получать информацию микроконтроллер может из подключаемых к его портам устройств, таких как: кнопки, клавиатуры, различные датчики, цифровые микросхемы и других микроконтроллеры, и даже ПК. Для вывода информации к портам контроллера можно подключать светодиоды, жидкокристаллические индикаторы, семисегментные индикаторы и многое другое.
Все порты ввода-вывода можно разделить на две группы: это параллельные порты и последовательные. При параллельном способе передачи информации каждый бит передаваемого слова имеет отдельный провод, таким образом, при передаче данных байтами нам понадобиться шлейф из восьми проводов. При таком способе передачи у микропроцессора для функции ввода-вывода должно быть зарезервировано восемь ножек. При последовательном способе передачи данных используется всего лишь один информационный проводник, на нем последовательно, друг за другом, устанавливаются биты передаваемого слова. На другой стороне приемник также последовательно считывает эти биты. То есть для реализации последовательной передачи данных может быть использована всего одна ножка контроллера.
Рисунок 2 — Структурная схема микроконтроллера
Любой микроконтроллер в своем составе должен иметь микропроцессор. Микропроцессор — это «мозг» микроконтроллера, помимо вычислений он обеспечивает взаимодействие всех периферийных устройств микроконтроллера. Когда мы пишем программу, мы как бы указываем микропроцессору, какие инструкции и в какой последовательности ему следует выполнять.
Также как и в персональном компьютере, в микропроцессоре есть память. Структурно память состоит из пронумерованных ячеек, номер ячейки принято называть адресом, а совокупность всех возможных адресов памяти называют адресным пространством. Процессору в произвольный момент времени доступна любая ячейка.
Всю память можно разделить две большие группы: это ПЗУ — постоянно запоминающее устройство, и ОЗУ — оперативно запоминающее устройство, или просто — оперативная память. В персональном компьютере роль ПЗУ выполняют жесткие диски, оптические диски, карты памяти и флешки. Особенность этого типа памяти заключается в том, что после отключения питания устройства записанная информация сохраняется на носителе, и после возобновления подачи питания снова может быть считана. В оперативной же памяти информация сохраняется только пока подано питание. Но быстродействие ОЗУ может превосходить быстродействие ПЗУ в десятки и даже сотни раз. Поэтому удобно исполняемую программу держать в ПЗУ, а все переменные, к которым требуется быстрый доступ — в ОЗУ. Если в ПК объем памяти измеряется в ГБ (приставка Гига – 10 9 ), то в микроконтроллерах все гораздо скромнее. Так, в микроконтроллере ADuC842, который мы будем использовать в практической части урока, имеется всего 62 кБ (килобайта) ПЗУ и 256 байт ОЗУ.
Еще одна особенность микроконтроллеров заключается в том, что большая часть из них выполнена по так называемой Гарвардской архитектуре, а это значит, что для хранения программ и данных используется две различные памяти: память программ и память данных. В памяти программ хранится непосредственно исполняемый код, который определяет алгоритм действия системы. Этот код никоим образом не может быть изменен исполняемой программой. Загружая исполнительный код в память микроконтроллера, программист определяет алгоритм функционирования микроконтроллерной системы. Часто процесс загрузки программы в память называют «прошивкой» контроллера.
После загрузки программы в память мы перезапускаем микроконтроллер. После перезагрузки микропроцессор обращается в самую первую ячейку памяти программ за командой. Адрес самой первой ячейки — 0. Затем считанная команда выполняется, и процессор начинает считывать следующую по порядку команду. Таким образом, команды выполняются последовательно, одна после завершения другой. Но существуют команды, способные изменить последовательность выполнения команд в зависимости от каких-либо условий, такие команды называются командами условного перехода. С помощью таких команд реализуются разветвленные алгоритмы работы.
Рисунок 3 — Порядок выполнения команд
В данном курсе мы научимся создавать собственные «прошивки» для микроконтроллеров. Каждый урок будет состоять из двух частей. Первая часть — это теория, где я расскажу о способах подключения различных устройств к микроконтроллеру и особенностях функционирования встроенной периферии. Во второй части покажу, как программно организовать работу описанной в первой части системы. Кроме того, в конце каждого урока полагается домашнее задание, где будет предложено решить прикладную задачу: написать, отладить и испытать на реальном оборудовании программу.
Что такое микроконтроллеры — назначение, устройство, софт
Микроконтроллер — это специальная микросхема, предназначенная для управления различными электронными устройствами. Микроконтроллеры впервые появились в том же году, что и микропроцессоры общего назначения (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 – управлять, управление). И в самом деле, контроллеры оказались весьма пригодны для управления различной техникой, даже не очень сложной.
МИКРОКОНТРОЛЛЕР — это уже не процессор, но ещё и не компьютер.
Центральный процессор, имеющийся в каждом компьютере — главный вычислитель. Хотя компьютер и не предназначен исключительно для вычислительной нагрузки, процессор является в нём головным элементом. Но не только в компьютере имеется процессор.
Если вдуматься и присмотреться, то можно обнаружить, что процессоры применяются в большинстве приборов бытового предназначения. Только там используются не такие процессоры как в компьютере, а микропроцессоры и даже микроконтроллеры.
Так что же такое микроконтроллер и чем отличается от собственно процессора или это совершенно различные электронные компоненты?
Большие интегральные микросхемы или микросхемы с большой степенью интеграции и есть процессоры. Микропроцессоры, по сути те же процессоры, но из-за приставки «микро» определяется их суть, что они миниатюрнее своих «больших» собратьев. В своё историческое время процессор со своим размером мог занимать не одну комнату, впору их назвать как вымерших динозавров макро-процессорами, чтобы и их как-то упорядочить в современном представлении об электронике.
Уменьшенный в габаритах и скомпонованный процессор занимает меньше места и его можно поместить в более компактное изделие, это и есть микропроцессор. Но сам процессор мало что способен делать, кроме как данные пересылать между регистрами и совершать какие-то арифметические и логические действия над ними.
Чтобы микропроцессор мог переслать данные в память, эта самая память должна присутствовать либо на самом кристалле, на котором находится сам процессорный элемент, либо подключаться к внешней оперативной памяти выполненной в виде отдельного кристалла или модуля.
Кроме памяти процессор должен взаимодействовать с внешними устройствами – периферией. Иначе какой пользы можно ожидать от работы процессора, перемешивающего и перемещающего данные туда-сюда. Смысл возникает тогда, когда процессор взаимодействует с устройствами ввода-вывода. У компьютера это клавиатура, манипулятор мышь и устройства отображения как дисплей, опционально – принтер и, например, сканер опять же для ввода информации.
Чтобы управлять устройствами ввода-вывода, непременно необходимы соответствующие буферные схемы и элементы. На их основе реализуются интерфейсные так называемые аппаратные средства. Способы взаимодействия с интерфейсными элементами предполагают наличие схем портов ввода-вывода, дешифраторов адреса и формирователей шин с буферными схемами, для увеличения нагрузочной способности микропроцессора.
Интеграция процессора со всеми необходимыми дополнительными элементами, для того чтобы это изделие выливалось в какой-то завершённый конструктив и приводит к образованию микроконтроллера. Микросхема или микроконтроллерный чип реализует на одном кристалле процессор и интерфейсные схемы.
Самодостаточный чип, который содержит практически всё, чтобы этого хватало для построения законченного изделия и есть пример типового микроконтроллера. Например наручные электронные часы или часы-будильник имеют внутри микроконтроллер, который реализует все функции такового устройства. Отдельные периферийные устройства подключаются непосредственно к ножкам микросхемы микроконтроллера, либо совместно используются дополнительные элементы или микросхемы малой либо средней степени интеграции.
Микроконтроллеры широко используются в изделиях которые содержат всю систему целиком исключительно в одной миниатюрной микросхеме, часто называемой микросборкой. Например «чиповая» кредитная карточка содержит микроконтроллер внутри в пластиковой основе. Таблетка домофона так же внутри себя содержит микроконтроллер. И примеров использования и применения микроконтроллеров настолько обширен в современном мире, что легко обнаружить наличие контроллера в любом мало-мальски интеллектуальном устройстве от детской игрушки до беспроводной гарнитуры сотового телефона.
Смотите также у нас на сайте:
Смотрите также по этой теме обучающие видеокурсы Мaкcима Селиванова:
Кур для тех, кто уже знаком с основами электроники и программирования, кто знает базовые электронные компоненты, собирает простые схемы, умеет держать паяльник и желает перейти на качественно новый уровень, но постоянно откладывает этот переход из-за сложностей в освоении нового материала.
Курс замечательно подойдет и тем, кто только недавно предпринял первые попытки изучить программирование микроконтроллеров, но уже готов все бросить от того, что у него ничего не работает или работает, но не так как ему нужно (знакомо?!).
Курс будет полезен и тем, кто уже собирает простенькие (а может и не очень) схемы на микроконтроллерах, но плохо понимает суть того как микроконтроллер работает и как взаимодействует с внешними устройствами.
Курс посвящен обучению программирования микроконтроллеров на языке Си. Отличительная особенность курса — изучение языка на очень глубоком уровне. Обучение происходит на примере микроконтроллеров AVR. Но, в принципе, подойдет и для тех, кто использует другие микроконтроллеры.
Курс рассчитан на подготовленного слушателя. То есть, в курсе не рассматриваются базовые основы информатики и электроники и микроконтроллеров. Но, что бы освоить курс понадобятся минимальные знания по программированию микроконтроллеров AVR на любом языке. Знания электроники желательны, но не обязательны.
Курс идеально подойдет тем, кто только начал изучать программирование AVR микроконтроллеров на языке С и хочет углубить свои знания. Хорошо подойдет и тем, кто немного умеет программировать микроконтроллеры на других языках. И еще подойдет обычным программистам, которые хотят углубить знания в языке Си.
Этот курс для тех, кто не хочет ограничиваться в своем развитии простыми или готовыми примерами. Курс отлично подойдет тем, кому важно создание интересных устройств с полным пониманием того, как они работают. Курс хорошо подойдет и тем, кто уже знаком с программированием микроконтроллеров на языке Си и тем, кто уже давно программирует их.
Материал курса прежде всего ориентирован на практику использования. Рассматриваются следующие темы: радиочастотная идентификация, воспроизведение звука, беспроводной обмен данными, работа с цветными TFT дисплеями, сенсорным экраном, работа с файловой системой FAT SD-карты.
Надеюсь, что эта статья была для вас полезной. Смотрите также другие статьи в категории Электрическая энергия в быту и на производстве » Устройства автоматики
Подпишитесь на наш канал в Telegram и узнавайте об актуальных тенденциях в мире автоматики и робототехники. Здесь вы найдете статьи о современных технологиях, а также обучающие материалы для тех, кто хочет овладеть этой увлекательной областью: Автоматика и робототехника
Поделитесь этой статьей с друзьями:
Микроконтроллер
Автоматизация дома и отдельных процессов на базе интеллектуальных систем невозможна без использования устройств такого типа, как микроконтроллер. Многофункциональные, компактные микроконтроллеры применяются во многих современных приборах, бытовом оборудовании и прочих инженерно-технических объектах. Они позволяют программировать и контролировать работу устройств, обеспечивать эффективное взаимодействие («диалог») человека и техники, дают возможность реализовать идеи Умной автоматизации.
Что такое микроконтроллер
Микроконтроллер (от англ. Micro Controller Unit, MCU) – это специальная микросхема, которая предназначена для управления различными приборами и электронными устройствами; позволяет не только контролировать их работу, но и обеспечивать взаимодействия между ними согласно заложенной программе.
Первые микроконтроллеры появились в 1971 году. Их создатели сумели воплотить гениальную мысль – объединить под одним корпусом процессор, память и периферию. Благодаря этому, типичная модель микроконтроллера, в отличие от микропроцессоров, содержит дополнительные встроенные устройства. На одном миниатюрном кристалле (микросхеме) сочетаются не только функции процессора, но и периферийных устройств, содержится ОЗУ и (или) ПЗУ. По сути, микроконтроллер представляет собой однокристальный компьютер (на одной микросхеме), способный выполнять относительно несложные задачи .
Поскольку, большинство микроконтроллеров создаются на едином кристалле кремния, при упоминании данных «изделий» нередко звучат слова «кристалл», «чип» или «микрочип»; также возможны сокращения МК либо MC – от английского microcontroller.
За счет существующего преимущества перед микропроцессорами, производство микроконтроллеров приобрело широкие масштабы; потребность в них остается стабильно высокой по сей день.
Устройства микроконтроллеров: виды, применение
В микроконтроллерах может использоваться одновременно несколько устройств, выполняющих определенные задачи и функции под управлением микропроцессорного ядра МК.
Наиболее распространенными встроенными устройствами микроконтроллеров являются:
- Память. Это оперативная память (RAM, ОЗУ), постоянные запоминающие устройства (ROM, ПЗУ), а также, память перепрограммируемая ROM (EPROM) и электрически перепрограммируемая ROM (EEPROM).
- Порты ввода/вывода (I/O). Средства I/O включают в себя последовательные и параллельные порты связи (I/O линии); преобразователи аналого-цифровые (A/D) и цифроаналоговые (D/A); драйверы дисплея вакуумного флуоресцентного (VFD) или жидкокристаллического (LCD).
- Интерфейсы связи.
- Таймеры, системные часы. Часы реального времени, таймеры прерываний.
Кроме того, создаются микроконтроллеры со следующей периферией: компараторы, массивы флеш-памяти, радиочастотные приемники и передатчики, встроенные тактовые генераторы, контроллеры бесколлекторных двигателей и т.д.
Встроенные устройства отличаются высокой надежностью, так как не требуют внешних электрических цепей.
Сегодня микроконтроллеры используются в преобладающем количестве современных промышленных и бытовых приборов. Особое распространение они получили в системах автоматизации Умный дом.
Среди производителей микроконтроллеров — Hitachi, Intel, Philips, Infineon Technologies (бывшая Siemens Semiconductor Group) и другие компании.
В чем разница между микропроцессорами и микроконтроллерами?
В чем разница между микропроцессорами и микроконтроллерами?
Микропроцессоры и микроконтроллеры являются внутренними компонентами электронных устройств. Микропроцессор – это очень маленький процессор внутри центрального процессора. Это единая интегральная схема на компьютерном чипе, которая выполняет различные арифметические и логические функции на цифровых сигналах. Несколько десятков микропроцессоров совместно работают на высокопроизводительных серверах для обработки и анализа данных.
С другой стороны, микроконтроллер – это базовый вычислительный блок в интеллектуальных электронных устройствах, таких как стиральные машины и термостаты. Это очень маленький компьютер с собственной оперативной памятью, ПЗУ и устройствами ввода-вывода, встроенными в один чип. Он может обрабатывать цифровые сигналы и реагировать на ввод данных пользователем, но его вычислительные мощности ограничены.
В чем сходство между микропроцессорами и микроконтроллерами?
Микропроцессоры и микроконтроллеры – это централизованные компьютерные чипы, обеспечивающие интеллектуальные возможности персональных компьютеров и электронных устройств. Они построены на основе полупроводниковых интегральных схем и имеют определенные внутренние части.
Интегральная схема
И микропроцессоры, и микроконтроллеры представляют собой полупроводниковые компоненты, построенные на интегральной схеме. Интегральная схема – это очень маленький квадратный или прямоугольный чип, содержащий тысячи или даже миллионы электронных компонентов. Интегральные схемы позволяют инженерам уменьшить размер электронных схем.
ЦПУ
И микропроцессоры, и микроконтроллеры имеют центральный процессор. Процессор – это централизованная часть компьютерного чипа, которая обрабатывает инструкции, предоставляемые приложениями или микропрограммным обеспечением. Процессор также оснащен специальным арифметико-логическим устройством (ALU). ALU вычисляет математические значения и оценивает логические задачи на основе компьютерных инструкций.
Регистры
Регистры – это модули памяти, используемые процессором для обработки данных. Процессор временно хранит инструкции или бинарные данные до, во время и после их обработки. И микропроцессоры, и микроконтроллеры построены с использованием внутренних регистров, хотя микроконтроллеры часто имеют больше регистров, чем микроконтроллеры.
Архитектурные различия микропроцессоров и микроконтроллеров
Архитектурные различия микропроцессоров и микроконтроллеров
Несмотря на то, что микропроцессоры и микроконтроллеры имеют форму компьютерных чипов, они построены на разных архитектурах.
Микропроцессоры разработаны по архитектуре фон Неймана, где программа и данные находятся в одном модуле памяти. Между тем микроконтроллеры используют гарвардскую архитектуру, которая отделяет память программ от пространства данных.
Микропроцессоры содержат больше компонентов интегральных схем, чем микроконтроллеры. Это архитектурное различие влияет на особенности проектирования микропроцессоров и микроконтроллеров в вычислительных и встроенных системных приложениях.
Память
Микропроцессоры не имеют модулей внутренней памяти для хранения данных приложений. Инженеры должны подключить микропроцессор к внешним хранилищам памяти, таким как ROM и RAM, с помощью внешней шины.
Шина – это набор параллельных электрических соединений, которые позволяют микропроцессору отправлять данные в другие устройства и получать их. Существует три типа шин.
- Шина данных передает данные
- Адресная шина передает информацию о том, где хранить и извлекать данные
- Шина управления передает сигналы для координации с другими электрическими компонентами
Все три работают совместно в микропроцессорной системе.
С другой стороны, микроконтроллеры оснащены внутренней памятью ROM и RAM. Микроконтроллер использует внутреннюю шину для взаимодействия со встроенными модулями памяти.
Периферийные устройства
Периферийные устройства – это таймеры, средства связи, устройства ввода-вывода и другие возможности, позволяющие микроконтроллерам или микропроцессорам взаимодействовать с внешними компонентами или пользователями.
Микропроцессор не имеет встроенных периферийных устройств в интегральную схему. Вместо этого периферийные устройства подключаются извне, чтобы расширить возможности использования микропроцессора за пределы математической и логической обработки.
Напротив, микроконтроллеры соединяются со встроенными периферийными устройствами с помощью внутренней шины управления. Это позволяет микроконтроллеру управлять электронными устройствами с минимальным количеством дополнительных деталей или без них.
Вычислительная мощность
Микропроцессоры – это мощные компьютерные чипы, способные выполнять сложные вычислительные и математические задачи. Например, можно запустить программное обеспечение для статистической обработки, поскольку микропроцессор поддерживает операции с плавающей запятой.
И наоборот, микроконтроллеры имеют сравнительно меньшую вычислительную мощность и редко поддерживают вычисление с плавающей запятой. Вместо этого они сосредотачиваются на реализации определенной логики, например на управлении температурой нагревателя с помощью различных датчиков.
Другие ключевые отличия микропроцессоров и микроконтроллеров
Микропроцессоры поддерживают универсальные вычислительные операции на персональных компьютерах и корпоративных серверах. Между тем микроконтроллеры позволяют встроенным системам анализировать входные данные и реагировать на них в режиме реального времени.
Когда инженеры разрабатывают системы с микропроцессорами и микроконтроллерами, они учитывают такие различия.
Тактовая частота
Микропроцессоры обеспечивают высокоскоростные и надежные вычислительные мощности для различных приложений. Современный компьютерный процессор работает в диапазоне гигагерц (ГГц). Это позволяет компьютерной системе выполнять сложные математические вычисления и быстро возвращать результаты.
Хотя скорость микроконтроллера увеличивалась на протяжении десятилетий, она намного меньше скорости обработки данных микропроцессора. В зависимости от назначения тактовая частота микроконтроллера варьируется от килогерц (кГц) до сотен мегагерц (МГц). Несмотря на меньший диапазон скоростей, микроконтроллер может оптимально работать в пределах выделенной области применения.
Размер цепи
Микропроцессор не может работать сам по себе. Он использует внешние компоненты, такие как микросхемы связи, порты ввода-вывода, ОЗУ и ПЗУ, для формирования полноценной вычислительной системы. Таким образом, микропроцессорная схема состоит из адреса и шины данных, соединяющей множество периферийных устройств и микросхем памяти. Даже несмотря на развитие технологий печатных плат (PCB), микропроцессорная система требует значительного пространства.
Однако микроконтроллер имеет компактную конструкцию с более простой схемой. Большинство дополнительных компонентов, необходимых для микропроцессорной системы, легко доступны на том же чипе. Вместо использования отдельных компонентов инженеры при разработке электронных устройств используют один микроконтроллер. Таким образом освобождается больше места на электронной плате, что позволяет инженерам создавать компактные системы.
Потребляемая мощность
Микропроцессоры часто работают на более высокой скорости, чем микроконтроллеры, и потребляют больше энергии, поэтому для них требуется внешний источник питания. Аналогичным образом, вычислительная система на основе микропроцессорного блока имеет более высокое общее энергопотребление из-за большого количества дополнительных компонентов.
Между тем микроконтроллеры спроектированы так, чтобы эффективно работать при минимальном энергопотреблении. Кроме того, большинство микроконтроллеров имеют функции энергосбережения, которых нет в микропроцессорах.
Например, микроконтроллер может активировать режим энергосбережения и потреблять ограниченное количество энергии, когда данные не обрабатываются. Микроконтроллеры также могут отключать внутренние периферийные устройства, которые не используются, для экономии энергии. Благодаря этому микроконтроллеры – идеальный выбор для создания специализированных приложений с низким энергопотреблением, работающих на накопленном питании.
ОС
В практических приложениях микропроцессоры требуют операционной системы, обеспечивающей соответствующие функциональные возможности. Без операционной системы пользователям пришлось бы обучать микропроцессор на языке ассемблера или бинарном языке.
Между тем для работы микроконтроллеров не требуется операционная система. Однако существуют специальные операционные системы, которые помогают микроконтроллерам среднего и высокого уровня работать более эффективно.
Подключение
Микропроцессоры поддерживают более разнообразные коммуникационные технологии, чем микроконтроллеры. Например, микропроцессор обрабатывает высокоскоростные данные USB 3.0 или гигабитного Ethernet без дополнительного процессора.
Однако для большинства микроконтроллеров требуется специальный процессор для высокоскоростной передачи данных.
Стоимость
Микропроцессорная интегральная схема состоит только из процессора, арифметико-логического устройства (ALU) и регистров, что снижает производственные затраты на единицу продукции. Между тем один микроконтроллер имеет более сложную внутреннюю архитектуру и, как правило, дороже микропроцессора.
Однако микропроцессорная система дороже, так как требует дополнительных компонентов. В отличие от нее, микроконтроллер самостоятельно справляется с выбранной задачей.
Для микроконтроллера требуется меньше дополнительных компонентов, что приводит к удешевлению систем на основе микроконтроллеров. Например, плата кондиционера с микроконтроллером стоит дешевле, чем материнская плата компьютера с микропроцессорами.
Примеры использования микропроцессоров и микроконтроллеров
Как микропроцессоры, так и микроконтроллеры являются полезными электронными компонентами, если их применять в соответствующих сценариях использования.
Используйте микропроцессор, если вам требуется высокая вычислительная мощность для сложных или непредсказуемых вычислительных задач. Микропроцессоры используются во всех типах вычислительных устройств, таких как серверы, настольные компьютеры и мобильные вычислительные устройства. Организации используют серверы с множеством микропроцессоров для высокопроизводительных вычислений и запуска приложений искусственного интеллекта (ИИ).
С другой стороны, микроконтроллер – лучший выбор, если вы создаете систему управления с узкой областью применения. Микроконтроллеры также полезны для систем, требующих низкого энергопотребления. Некоторые микроконтроллеры могут работать месяцами от небольшой батареи. Например, система умного дома работает от микроконтроллеров. Компактные устройства, такие как дроны или портативные аудиоплееры, также содержат микроконтроллеры.