Как выбрать правильный микроконтроллер для вашего приложения
Данная статья продолжает серию «Введение в микроконтроллеры» с обсуждением наиболее важных вещей, которые следует учитывать, когда вы пытаетесь найти лучший микроконтроллер для своего следующего проекта.
В предыдущей статье я представил основные характеристики микроконтроллеров, объяснил основные аспекты их внутренней структуры и дал некоторые общие идеи о том, как можно использовать микроконтроллер в различных типах встраиваемых систем.
В следующих статьях я планирую изучить методы и процессы, связанные с внедрением микроконтроллеров и разработкой прошивок. Но прежде чем вы сможете разработать продукт на базе микроконтроллера, вам необходимо знать, какое устройство вы будете использовать. Навыки и методы, используемые при проектировании систем на базе микроконтроллеров, определенно не относятся к одной модели или даже к одному производителю. Но если у вас еще нет обширного опыта в этой области, лучше сосредоточиться на одном устройстве (или одном семействе устройств), а затем после приобретения солидного опыта расширить кругозор относительно микроконтроллеров.
Выбор производителя
Список производителей полупроводниковых устройств, продающих микроконтроллеры, довольно длинный. Тем не менее, я настоятельно вам рекомендую начать с производителя, который уделяет большое внимание своей линейке микроконтроллеров. Это обеспечит вам доступ к множеству полезных ресурсов по разработке – примечания к применению, примеры кода, качественная интегрированная среда разработки (IDE), удобные инструменты программирования, и так далее.
Кроме того, производители, которые имеют более обширную линейку продукции микроконтроллеров, позволяют более легко подбирать компоненты в соответствии с требованиями под каждое приложение, поскольку вы можете выбрать новую модель без резких изменений, вызванных переходом от одного производителя к другому. Этот переход может быть напряженным и трудоемким, когда вам нужно будет изучить новую IDE, новые конфигурации регистров, новые методы программирования, новую структуру документации, и так далее. И я всё еще по возможности избегаю этих неудобств.
Если ваш опыт разработки на микроконтроллерах всё еще довольно ограничен, я рекомендую выбрать одного из следующих производителей: Texas Instruments, STMicroelectronics, Silicon Labs или Microchip. (Atmel также определенно должен быть включен в этот список, но он был приобретен Microchip в 2016 году.)
Критические параметры
Следующим шагом является определение ваших наиболее важных и специфических требований. Многие виды функциональных возможностей обработки и периферийных устройств будут доступны практически в любом современном микроконтроллере. Например, вам не нужно будет искать MCU, который предлагает базовую последовательную связь, тактовые частоты выше 10 МГц, достаточное количество флеш-памяти и оперативной памяти, внутренний генератор, таймеры общего назначения или встроенный модуль отладки (они часто используют интерфейс JTAG).
В следующих подразделах приведены некоторые примеры «менее стандартных» функций, которые помогут вам сузить список микроконтроллеров, которые могут подходить для заданного проекта.
Цифро-аналоговый преобразователь (ЦАП)
У вас не возникнет проблем с поиском микроконтроллера с аналого-цифровым преобразователем, но ЦАП встречается значительно реже. Тем не менее, в определенных приложениях они очень полезны, и встроенный ЦАП, безусловно, гораздо удобнее, чем внешний ЦАП.
Аналого-цифровой преобразователь (АЦП)
Я только что сказал, что АЦП распространены, и это правда, но стоит отметить, что производительность многих микроконтроллерных АЦП находится в диапазоне от низкого до среднего уровня. Если вам нужен АЦП с необычно высоким разрешением или необычно высокой частотой дискретизации, вам придется сделать это приоритетом в процессе выбора. Несколько лет назад я оказался в подобной ситуации, и, если я правильно помню, ничто не могло сравниться с C8051F060 от Silicon Labs (у него есть два встроенных АЦП, которые могут выполнять 16-разрядное преобразование со скоростью один миллион выборок в секунду).
Тактовая частота
Если вам нужен микроконтроллер, который более совместим с интенсивными вычислительными функциями DSP (цифрового сигнального процессора), вам нужно отдать приоритет устройствам, которые поддерживают высокие частоты процессора. У Silicon Labs есть два 8-разрядных семейства, работающих на частоте 100 МГц, а у STMicroelectronics и Microchip есть высокопроизводительные 32-разрядные микроконтроллеры, работающие на частоте 120 МГц.
Универсальная последовательная шина (USB)
Интерфейс USB является доминирующей формой последовательной связи. Я обнаружил, что это очень эффективный способ передачи данных между встраиваемым устройством и компьютером, и в контексте бытовой электроники он незаменим. Если вы ищете компактный, простой метод включения USB соединения в вашу систему, я рекомендую вам сосредоточиться на микроконтроллерах, которые включают в себя USB модуль. Я использовал EFM8 Universal Bee от Silicon Labs, а Microchip предлагает 8-разрядные, 16-разрядные и 32-разрядные USB микроконтроллеры.
Емкостной датчик прикосновения
Емкостные датчики прикосновения являются всё более популярной формой пользовательского интерфейса. Хотя емкостные датчики прикосновения в принципе просты, реальная реализация может быть довольно сложной, и, безусловно, полезно иметь микроконтроллер, специально предназначенный для поддержки интерфейса такого типа. Насколько я знаю, для микроконтроллеров всё еще довольно необычно иметь периферию для емкостных датчиков, поэтому вам нужно будет расставить приоритеты для этой функции во время выбора модели.
Стоимость и размер корпуса
Поместить эти параметры в определенную часть процесса выбора модели трудно, потому что их важность сильно варьируется от одного приложения к другому. В некоторых случаях у вас достаточно места на плате и вы можете полностью игнорировать размер корпуса. А стоимость часто не имеет значения для инженеров, разрабатывающих прототипы или системы, которые никогда не будут производиться в больших количествах.
С другой стороны, существует множество электронных продуктов, которые должны быть очень маленькими, очень недорогими или очень маленькими и очень недорогими. В этих ситуациях вам необходимо постоянно знать цену и/или размер корпуса, поскольку вы постепенно отфильтровываете модели на основе ваших критически важных параметров и предпочитаемых производителей.
Оценка аппаратного обеспечения
Каждый, от любителя до профессионального инженера, может получить выгоду от тщательно разработанной, доступной по деньгам, отладочной платы. Обычно это наиболее безболезненный и надежный способ оценки микроконтроллера и ознакомления с его интерфейсом программирования и функциональными возможностями. Как только вы сузили свой поиск до нескольких многообещающих моделей, прежде чем принять окончательное решение о разработке, проверьте, продаются ли по разумной цене оценочные платы для этих моделей микроконтроллеров.
Заключение
Надеюсь, что данная статья поможет вам ориентироваться в иногда пугающем процессе выбора одного микроконтроллера из числа тысяч, доступных на рынке. После того, как мы выбрали микроконтроллер, пришло время начать чтение технического описания (datasheet, «даташит») и проектирование системы, и мы рассмотрим эти темы в следующих статьях.