Микроконтроллеры (МК) — это сердце нынешних электронных устройств, управляющее их логикой, взаимодействием с окружающим миром, выполняющее заданные алгоритмы. Сегодня без них невозможно представить ни одну сферу техники — от несложных бытовых приборов или игрушек до сложнейших промышленных систем и медицинского оборудования. Благодаря бурному развитию микроэлектроники, микроконтроллеры становятся всё более производительными, энергоэффективными и доступными, что делает их платформой для воплощения инженерных идей.
Несмотря на кажущуюся сложность темы, разобраться в микроконтроллерах под силу каждому, кто готов немного углубиться в их особенности с принципами работы. Однако разнообразие производителей и моделей так велико, что охватить всю номенклатуру в одной статье невозможно — для этого потребовалось бы многотомное издание. Поэтому в материале мы сосредоточимся на обзоре востребованных серий микроконтроллеров, применяемых во встраиваемых системах, рассмотрим их особенности и области использования.
Время чтения: 18 минут
Микроконтроллеры? Это очень просто!
Сегодняшний рынок микроконтроллерных устройств чрезвычайно разнообразен, ведь каждый производитель старается предложить решения для самых разных задач. Одни ориентируются на максимальную производительность и расширенные коммуникационные возможности, другие делают ставку на сверхнизкое энергопотребление с компактностью, а третьи стремятся к универсальности и лёгкости разработки. Благодаря такому подходу инженерам и разработчикам несложно выбрать требуемую платформу. Найдётся основа для всего — от простейших IoT-датчиков до сложных промышленных контроллеров или автомобильных систем.
В число популярных вендоров входят STMicroelectronics, Texas Instruments, Microchip Technology, NXP Semiconductor и Renesas Electronics. Каждая из компаний имеет собственную философию проектирования, архитектурные решения и программные инструменты, что делает их продукцию уникальной. Рассмотрим подробнее, какие серии микроконтроллеров этих компаний считаются удачными, а также почему они заняли передовые позиции в мире встраиваемых систем.
Лучшие современные микроконтроллеры для встраиваемых систем
Каждая из рассмотренных компаний с большой историей и опытом разработки микроконтроллеров, которые задали стандарты целым направлениям электроники. Их решения охватывают почти весь спектр потребностей — от недорогих микросхем общего назначения до высокопроизводительных контроллеров, применяемых в системах реального времени, критически важных устройствах. Благодаря поддержке со стороны сообществ разработчиков, удобным средствам программирования и стабильному качеству продукции, продукты этих фирм считаются примерами нынешней встраиваемой электроники.
STMicroelectronics
Популярной серией стала STM32. Она известна предлагаемой номенклатурой, универсальностью, применимостью в разных устройствах: от простейших IoT-устройств («Интернет вещей») до высокопроизводительных отказоустойчивых двухъядерных МК для промышленных систем управления; в линейке найдётся модель на «все случаи жизни».
| Характеристика | Диапазон |
| Ядро | RISC, ARM Cortex-M0, M0+, M3, M4, M7 |
| Разрядность | 32 бит |
| Тактовая частота | 32÷480 мГц |
| Объём ОЗУ, кБ | 4÷1024 |
| FLASH-память, кБ | 16÷2048 |
| Разрядность АЦП/ЦАП | 12 бит |
| Интерфейсы | UART, SPI, Bluetooth 5, I2C, CAN, IEEE 802.15.4 (LR-WPAN), USB, Ethernet |
Помимо нативной среды (которая для новичков покажется излишне сложной) возможно использование альтернативных сред, в том числе Arduino IDE.
| Модель (категория) | Ядро, ARM | Тактовая частота, мГц | Возможности |
| STM32F0 (широкого применения) | Cortex-M0 | 48 | Очень дешёвый, разработан для конкуренции с распространёнными 8 и 16-битными МК наподобие ATmega328P и т. п. |
| STM32F1 (широкого применения) | Cortex-M3 | 72 | Универсальный, применяемый в DIY-проектах. |
| STM32F2 (высокопроизводительный) | Cortex-M3 | 120 | Высокопроизводительный, ориентирован для работы в высоконагруженных устройствах. |
| STM32F3 (широкого применения) | Cortex-M4 | 72 | Есть сопроцессор и цифровой сигнальный процессор (ЦСП, DSP). Идеален для устройств, работающих со смешанными (аналоговыми и цифровыми) сигналами. |
| STM32F4 (высокопроизводительный) | Cortex-M4 с FPU | 180 | Ядро с сопроцессором и ЦСП. Отличается высокой производительностью, возможностью работы в мультимедийных приложениях. |
| STM32F7 (высокопроизводительный) | Cortex-M7 | 216 | Совместим по выводам с серией STM32F4, что упрощает модернизацию проектов. |
| STM32G0 (широкого применения) | Cortex-M0+ | 64 | Оптимизирован для замены собой распространённых 8 и 16-битных МК, но с большей производительностью. При этом гораздо дешевле. |
| STM32G4 (широкого применения) | Cortex-M4 | 170 | Ядро с сопроцессором и ЦСП. Эта серия — преемник STM32F3, идеальна для электроники, взаимодействующей с «цифрой» и аналоговыми сигналами. |
| STM32H7 (высокопроизводительный) | Cortex-M7 | 480 | Ядро с сопроцессором и ЦСП. Некоторые оборудованы вторым ядром ARM Cortex-M4, что идеально для промышленной автоматизации, сложных задач обработки данных. |
| STM32L0 (сверхнизкого энергопотребления) | Cortex-M0+ | 32 | Оптимизирован для использования в портативной технике с питанием от аккумулятора. |
| STM32L1 (сверхнизкого энергопотребления) | Cortex-M3 | 32 | Разработан для приложений, требующих как энергоэффективности, так и высокой производительности. |
| STM32L4 (сверхнизкого энергопотребления) | Cortex-M | 80 | С сопроцессором и ЦСП. Для систем, одновременно требующих как высокопроизводительности, так и энергосбережения. |
| STM32L4+ (сверхнизкого энергопотребления) | Cortex-M4 | 120 | Есть сопроцессор и ЦСП. Его производительность выше, чем у серии STM32L4, при сохранении низкого потребления энергии. |
| STM32L5 (сверхнизкого энергопотребления) | Cortex-M33 | 110 | Предоставляет расширенные функции безопасности, оптимизирован для сферы IoT, в том числе для применения в устройствах с аккумуляторным питанием. |
| STM32WB (с беспроводными интерфейсами связи) | Cortex-M4 | 64 мГц | С сопроцессором и ЦСП, а также имеет второе ядро ARM Cortex-M0+, выполняющее функции, связанные с передачей данных. Поддерживает стандарты Bluetooth 5 и IEEE 802.15.4, что делает его идеальным для беспроводного IoT. |
Texas Instruments
Эти МК нечасто встречаются в любительских проектах, но в профессионально разрабатываемой электронной продукции они распространены. Одной из популярных серий стала MSP430. Она отличается крайне низким энергопотреблением, предназначена в первую очередь для работы в устройствах с питанием от батарей или аккумуляторов. Также они находят применение в бытовой и портативной электронной технике.
| Характеристика | Диапазон |
| Ядро | RISC, собственная архитектура |
| Разрядность | 16 бит |
| Тактовая частота | до 25 мГц |
| Объём ОЗУ, кБ | до 16 |
| FLASH-память, кБ | до 512 |
| Разрядность АЦП/ЦАП | 12 бит |
| Интерфейсы | UART, SPI, I2C, USB |
Гарантированное потребление тока в режиме сна не более 1 микроампера позволяет применять серию в различных автономных и удалённых датчиках, других устройствах, постоянное электропитание которых технически трудно реализовать.
| Модель | Основные возможности |
| MSP430F1X | «Классические» модели MSP430. Тактовая частота до 8 мегагерц, объём FLASH до 60, а ОЗУ до 10 килобайт. Предназначены для работы в широком классе устройств ввиду универсальности. |
| MSP430F2X/MSP430F4X | Являются более совершенной версией MSP430F1X. Тактовая частота была повышена до 16 мегагерц, а также введена аппаратная поддержка многих популярных интерфейсов связи с возможностью прямого подключения жидкокристаллического дисплея. |
| MSP430G2X/MSP430i2X | Недорогие среди всей серии MSP430. Имеют сниженные или схожие с «классическими» моделями характеристики при более низкой стоимости. Отлично подходят для крупносерийного производства. |
| MSP430F5X/MSP430F6X | Более совершенная версия предыдущих моделей. Тактовая частота была повышена до 25 мегагерц, а также введена аппаратная поддержка всех популярных интерфейсов связи. |
| MSP430FRX | В этой серии FLASH-память, с небольшим ресурсом циклов чтения/записи, заменена на новый тип – FRAM, в теории имеющей бесконечное число циклов, а также более высокую скорость доступа. Подходит для использования в ответственной аппаратуре повышенной надёжности. |
| CC430FX | Микроконтроллеры CC430FX, помимо ядра ЦП, имеют и встроенный гигагерцовый приёмопередатчик, позволяющий реализовать множество беспроводных интерфейсов связи. |
Microchip Technology
Американская компания Atmel (поглощена Microchip Technology) в 1996 году представила широкую линейку разнообразных по характеристикам МК. Она получила название AVR. Именно в AVR впервые стала использоваться FLASH-память для хранения программного кода, вместо ROM, EEPROM и EPROM, применявшихся раньше повсюду.
| Характеристика | Диапазон |
| Ядро | RISC, собственная архитектура |
| Разрядность | 8 бит |
| Тактовая частота | до 32 мГц |
| Объём ОЗУ, кБ | до 32 |
| FLASH-память, кБ | до 384 |
| Разрядность АЦП | 8/10/12/16 бит |
| Разрядность ЦАП | 10/12 бит |
| Интерфейсы | UART, SPI, I2C, CAN, USB |
МК имеет особое место в жизни энтузиастов, создающих собственные DIY-проекты, так как микроконтроллеры просты в освоении, имеют несложную архитектуру, множество интегрированных сред проектирования и большое количество библиотек поддержки «всего и вся». Программно-аппаратная платформа Arduino базируется именно на AVR.
| Модель | Основные возможности |
| ATtiny | Простые и недорогие МК. Объём памяти до 16, ОЗУ до 512 байт, небольшое число портов ввода/вывода (выпускаются даже в шестивыводных корпусах, к примеру, ATtiny10) и ограниченная поддержка периферийных устройств. Подходят для работы в простейших устройствах с питанием от батарей или аккумуляторов. |
| ATmega | Наиболее универсальные и распространённые МК. FLASH-память до 256, ОЗУ до 16 килобайт, большее количество портов ввода/вывода, поддержка распространённых периферийных устройств, расширенная система команд. |
| ATxmega | Более дорогие и оптимизированные, чем ATmega. Выпускаются, как правило, в многовыводных корпусах, имеют много портов ввода/вывода, каналов АЦП и ЦАП, ШИМ, расширенное количество входов сигналов аппаратных прерываний, прямого доступа к памяти. FLASH до 384, ОЗУ до 32 килобайт. |
| AT90PWM | Серия с акцентом на ШИМ-управление. МК имеют до 12 независимых аппаратных каналов ШИМ, а также до 11 каналов АЦП и 1 канал ЦАП. Объём FLASH до 16, ОЗУ до 1 килобайт. Предназначаются в первую очередь для работы в сложных системах, требующих множество каналов ШИМ-управления: станки с программным управлением, контроллеры источников освещения, системы типа «умный дом» и т. п. |
| AT90CAN | Представители серии имеют встроенную аппаратную поддержку протокола CAN. В первую очередь созданы для работы в автомобильных блоках управления. Объём памяти до 128, ОЗУ до 4 килобайт. |
| AT90USB | МК AT90USB имеют аппаратную поддержку протокола USB, в том числе в нескольких режимах, к примеру, OTG, позволяющих соединять два периферийных устройства между собой без использования USB-хабов и необходимости подключения к компьютеру. Память до 128, ОЗУ до 8 килобайт. |
NXP Semiconductor
Эти МК не сильно распространены в среде любительских проектов, а более «заточены» под профессиональное применение в автомобильной индустрии или промышленности. Но между тем производитель выпускает удивительную модель LPC1768, представляющую высокопроизводительный «комбайн», собравший в себя всё самое лучшее и востребованное, что реализовано в моделях других вендоров.
| Характеристика | Диапазон |
| Ядро | RISC, Cortex-M3 |
| Разрядность | 32 бит |
| Тактовая частота | 100 мГц |
| Объём ОЗУ, кБ | до 64 |
| FLASH-память, кБ | до 512 |
| Разрядность АЦП | 12 бит |
| Разрядность ЦАП | 10 бит |
| Интерфейсы | Ethernet, UART, SPI, I2C, CAN, USB |
Поддержка множества протоколов связи, большое количество портов ввода/вывода, наличие многоканальных АЦП и ЦАП позволяет проектировать на основе LPC1768 сложные высокопроизводительные центры обработки данных с датчиков, робо-системы, системы автоматизированного управления производственными процессами.
Начало освоения микроконтроллера возможно с ознакомления с отладочными платами, поставляемыми NXP Semiconductor или сторонними производителями. Например, простейшая mbed LPC1768 по форм-фактору и идеологии близка к Arduino, недорогая, будет несложна в освоении.
Renesas Electronics
Продукция японской компании распространена только в некоторых сферах (оборудование промышленного, автомобильного, медицинского назначения). Она мало известна любителям и частным инженерам-электроникам. Но между прочим компания — мировой лидер по специализированным микроконтроллерам. МК серии RX представляют недорогие, но чрезвычайно интересные электронные устройства, базовый вектор развития которых — надёжность и безопасность.
Проектирование в соответствии с самыми жёсткими требованиями к надёжности и безопасности эксплуатации позволяют использовать их даже в аппаратуре, отвечающей за жизнь и здоровье людей. Это промышленные блоки управления станками или технологическими процессами, высокоответственные блоки автомобильных электронных систем, аппаратура медицинского назначения.
| Характеристика | Диапазон |
| Ядро | CISC, собственная архитектура |
| Разрядность | 32 бит |
| Тактовая частота | 100 мГц |
| Объём ОЗУ, кБ | до 64 |
| FLASH-память, кБ | до 512 |
| Разрядность АЦП/ЦАП | 12 бит |
| Интерфейсы | UART, SPI, I2C, CAN, USB |
Наличие специальных режимов работы, высокоскоростных аппаратных прерываний, систем контроля целостности данных в памяти при работе в сложной радиационной или электромагнитной обстановке и многих других, присущих только МК этой серии позволяют проектировать на их основе уникальную отказоустойчивую технику.
Удивительно то, что розничная цена устройств рассматриваемой серии относительно невысока. Она «по карману» даже разработчикам-любителям, хотя стоимость отладочных плат всё же сравнительно велика.
Рассмотрев пять производителей и всего по одной серии их продукции уже видно величайшее многообразие доступных для разработчика микроконтроллеров, на основе которых легко разработать и одноразовую детскую игрушку, и отказоустойчивое устройство, способное работать в условиях космоса. Таким образом, создание устройства начинается не с черчения схемы, а подбора компонентов, на который уходит львиная доля времени цикла разработки.
Но квалификация инженера-разработчика, его осмотрительность и благоразумие позволят подобрать микроконтроллер, подходящий для проекта. Тем более номенклатура доступных сегодня микросхем даёт из чего выбрать. Не волнуйтесь, не теряйтесь, изучайте, пробуйте. Тогда у вас получится разработать устройство, которое будет использоваться годами и впоследствии само окажется предметом изучения гениальности инженерной мысли техники прошлого поколения.