Что такое микроконтроллер? Определение характеристик и архитектуры.


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

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

Наиболее распространенным способом обозначения этой категории интегральных микросхем является «микроконтроллер», но взаимозаменяемо также используется аббревиатура «MCU», так как расшифровывается «microcontroller unit». Также иногда вы можете увидеть «µC» (где греческая буква мю заменяет приставку «микро»).

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

Микроконтроллеры и микропроцессоры

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

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

Ниже приведена диаграмма, которая иллюстрирует эту концепцию.


Диаграмма, поясняющая различие между понятиями «микроконтроллер» и «микропроцессор»

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

Микроконтроллеры и цифровые сигнальные процессоры (DSP)

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

Серия AVR-DD

Данная серия включает в себя 12 устройств с объемами памяти 16…64 кбайт в корпусах с 14….32 выводами. Выпуск серии запланирован на второй квартал 2022 года. Характеристики устройств, входящих в серию, указаны в таблице 3.

Таблица 3. Состав и характеристики серии AVR-DD

НаименованиеЧастота ядра, МГцFlash, кбайтSRAM, кбайтEEPROM, байтВы- воды12 бит АЦП10 бит ЦАПКомпара- торыВыводы MVIOZCDUSART/SPI/I2CТаймерыКорпуса
AVR64DD142464825614111812/1/14SOIC
AVR64DD202464825620111812/1/14SOIC, VQFN
AVR64DD282464825628111812/1/15SPDIP, SOIC, SSOP
AVR64DD322464825632111812/1/15TQFP, VQFN
AVR32DD142432425614111812/1/14SOIC
AVR32DD202432425620111812/1/14SOIC, VQFN
AVR32DD282432425628111812/1/15SPDIP, SOIC, SSOP
AVR32DD322432425632111812/1/15TQFP, VQFN
AVR16DD142416225614111812/1/14SOIC
AVR16DD202416225620111812/1/14SOIC, VQFN
AVR16DD282416225628111812/1/15SPDIP, SOIC, SSOP
AVR16DD322416225632111812/1/15TQFP, VQFN

Серия AVR-DD занимает нишу более компактных устройств с уменьшенным объемом памяти. В ней набор периферии больше не содержит таких специфических модулей, как Peripheral Touch Controller или операционные усилители. В остальном качественный состав периферии не изменился, но количество модулей было уменьшено:

  • один модуль Zero Cross Detector;
  • один компаратор;
  • шесть каналов системы событий;
  • два модуля USART, один SPI и один I2C.

Серию DD c серией DB объединяет поддержка технологии MVIO на Port C и поддержка внешнего кварца высокой частоты.

Основные узлы микроконтроллера

Микроконтроллер состоит из центрального процессора (ЦП, CPU), энергонезависимой памяти, энергозависимой памяти, периферийных устройств и вспомогательных цепей.

Центральный процессор (CPU)

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

Память

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

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

Периферийные устройства

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

  • Преобразователи данных: аналого-цифровой преобразователь, цифро-аналоговый преобразователь, генератор опорного напряжения.


    Данный график демонстрирует данные трехосевого акселерометра, оцифрованные с помощью встроенного АЦП микроконтроллера

  • Генерирование тактовых сигналов: внутренний генератор, схема на кварцевом резонаторе, петля фазовой автоподстройки частоты.
  • Расчет времени: таймер общего назначения, часы реального времени, счетчик внешних событий, широтно-импульсная модуляция.
  • Обработка аналоговых сигналов: операционный усилитель, аналоговый компаратор.
  • Ввод/вывод: цифровые входные и выходные цепи общего назначения, параллельный интерфейс памяти.
  • Последовательная связь: UART, SPI, I2C, USB

Вспомогательные цепи

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

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


    Программы микроконтроллера, написанные на C, организованы в функции. Прерывание заставляет выполнение программы «переходить» в процедуру обработки прерывания (ISR), и после того, как ISR завершил выполнение своих задач, процессор возвращается к функции, которая выполнялась, когда произошло прерывание.

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

Серия AVR-DA

Серия AVR-DA состоит из 11 устройств с вариантами выбора объема памяти от 32 до 128 кбайт в корпусах 28…64 вывода. Эта серия была выпущена первой, все ее представители уже доступны для заказа. В таблице 1 указан состав серии и параметры микроконтроллеров.

Таблица 1. Состав и характеристики серии AVR-DA

НаименованиеЧастота ядра, МГцFlash, кбайтSRAM, кбайтEEPROM, байтВы- воды12 бит АЦП10 бит ЦАПКомпара- торыPTCZCDUSART/SPI/I2CТаймерыКорпуса
AVR128DA28241281651228113113/2/15SPDIP, SOIC, SSOP
AVR128DA32241281651232113113/2/25TQFP, VQFN
AVR128DA48241281651248113125/2/27TQFP, VQFN
AVR128DA64241281651264113136/2/28TQFP, VQFN
AVR64DA282464851228113113/2/15SPDIP, SOIC, SSOP
AVR64DA322464851232113113/2/25TQFP, VQFN
AVR64DA482464851248113125/2/27TQFP, VQFN
AVR64DA642464851264113136/2/28TQFP, VQFN
AVR32DA282432451228113113/2/15SPDIP, SOIC, SSOP
AVR32DA322432451232113113/2/25TQFP, VQFN
AVR32DA482432512448113125/2/26TQFP, VQFN

Изменения коснулись ядра и его системы питания: ядро может функционировать на увеличенной максимальной частоте 24 МГц во всем диапазоне питающего напряжения 1,8…5,5 В.

Впервые в устройствах AVR появился модуль Zero Cross Detector – детектор пересечения переменным током нулевого уровня. Раньше это была периферия, свойственная только PIC-контроллерам.

АЦП было обновлено: новая версия обеспечивает оцифровку аналогового напряжения с частотой до 130 Гц и разрешением 12-бит с возможностью включения дифференциального режима работы. Аккумулятор был увеличен до 128 семплов. Как и в предыдущей версии, поддерживаются следующие режимы работы:

  • единичное преобразование;
  • режим непрерывного преобразования;
  • режим накопления;
  • режим сравнения с порогом;
  • режим запуска по событию;
  • режим измерения температуры (от встроенного датчика температуры).

В устройствах новой линейки появился модуль ЦАП. Напомним, что контроллеры Mega такового не имели. Преобразователь работает на скорости 140 ksps и имеет разрешение 10 бит.

По сравнению с линейкой ATmega, было увеличено количество следующих модулей периферии:

  • количество модулей USART увеличено до шести;
  • количество аналоговых компараторов увеличено до трех.

Обратим внимание на наличие специфической периферии – Peripheral Touch Controller, сенсорного контроллера, позволяющего реализовать емкостные сенсорные элементы управления – кнопки, слайдеры, спиннеры и 2D-поверхности. Благодаря библиотеке QTouch Library настройка этого модуля сводится к нескольким кликам мыши.

Структурная схема устройств серии AVR-DA изображена на рисунке 1.

Рис. 1. Блок-схема устройств семейства AVR-DA

Для оценки возможностей новой серии и быстрого прототипирования устройств на ее базе компания Microchip выпустила отладочную плату AVR128DA48 Curiosity Nano Evaluation kit, которая изображена на рисунке 2.

Линейка отладочных плат Curiosity Nano – это самые простые отладочные платы производства Microchip. Платы линейки Curiosity Nano содержат стандартный набор компонентов:

  • одну пользовательскую кнопку;
  • один пользовательский светодиод;
  • встроенный программатор/дебаггер с USB-портом.

Данная плата, в дополнение к стандартному набору компонентов, имеет распаянный часовой кварц.

Рис. 2. Отладочная плата AVR128DA48 Curiosity Nano Evaluation kit

Платы Curiosity Nano могут подключаться в качестве процессорного модуля в базовую плату Curiosity Nano Base, которая содержит три порта расширения microBUS, используемые для подключения модулей расширения Click Boards производства MikroElektronika, и один порт расширения Xplained Pro для подключения одноименных модулей расширения Microchip. Базовая плата изображена на рисунке 3.

Рис. 3. Плата Curiosity Nano Base

Рейтинг
( 2 оценки, среднее 4 из 5 )
Понравилась статья? Поделиться с друзьями:
Для любых предложений по сайту: [email protected]