- Важные факторы, которые следует учитывать при выборе MCU
- 1. Применение
- 2. Выберите архитектуру микроконтроллера.
- 3. Размер бит
- 4. Интерфейсы для связи
- 5. Рабочее напряжение
- 6. Количество контактов ввода / вывода
- 7. Требования к памяти
- 8. Размер упаковки
- 9. Потребляемая мощность.
- 10. Поддержка микроконтроллера.
Микроконтроллер - это, по сути, небольшой компьютер на микросхеме, как и любой компьютер, он имеет память и обычно программируется во встроенных системах для приема входных данных, выполнения вычислений и генерации выходных данных. В отличие от процессора, он включает в себя память, ЦП, ввод-вывод и другие периферийные устройства на одном кристалле, как показано на схеме ниже.
Выбор подходящего микроконтроллера для проекта - всегда сложное решение, потому что это сердце проекта, и от него зависит успех или неудача системы.
Существует тысячи различных типов микроконтроллеров, каждый из которых обладает уникальными характеристиками или конкурентными преимуществами - от форм-фактора до размера корпуса и емкости RAM и ROM, что делает их пригодными для определенных приложений и непригодными для определенных приложений. Таким образом, часто, чтобы избежать головной боли, связанной с выбором правильного, дизайнеры выбирают микроконтроллеры, которые им знакомы, которые иногда даже не совсем удовлетворяют требованиям проекта. В сегодняшней статье мы рассмотрим некоторые важные факторы, которые следует учитывать при выборе микроконтроллера, включая, среди прочего, архитектуру, память, интерфейсы и объем ввода-вывода.
Важные факторы, которые следует учитывать при выборе MCU
Ниже приведены некоторые из важных факторов, на которые следует обратить внимание при выборе микроконтроллера, включая, среди прочего, архитектуру, память, интерфейсы и объем ввода-вывода.
1. Применение
Первое, что нужно сделать перед выбором микроконтроллера для любого проекта, - это выработать глубокое понимание задачи, для которой будет развернуто решение на основе микроконтроллера. В ходе этого процесса всегда разрабатывается лист технических спецификаций, который помогает определить конкретные особенности микроконтроллера, который будет использоваться в проекте. Хороший пример того, как приложение / использование устройства определяет микроконтроллер, который будет использоваться, демонстрируется, когда микроконтроллер с блоком с плавающей запятой принят для разработки устройства, которое будет использоваться для выполнения операций, включающих множество десятичных чисел.
2. Выберите архитектуру микроконтроллера.
Архитектура микроконтроллера относится к внутренней структуре микроконтроллера. Для разработки микроконтроллеров используются две основные архитектуры;
- Архитектура фон Неймана
- Гарвардская Архитектура
В архитектуре фон Неймана используется одна и та же шина для передачи данных и выборки наборов инструкций из памяти. Поэтому передача данных и выборка команд не могут выполняться одновременно и обычно планируются. Архитектура Гарварда, с другой стороны, предусматривает использование отдельных шин для передачи данных и выборки инструкций.
Каждая из этих архитектур имеет свои преимущества и недостатки. Гарвардская архитектура, например, представляет собой компьютеры RISC (сокращенный набор инструкций) и, таким образом, может выполнять больше инструкций с меньшими циклами, чем компьютеры CISC (комплексный набор инструкций), основанные на архитектуре фон Неймана. Одним из важных преимуществ микроконтроллеров на основе Гарварда (RISC) является тот факт, что наличие разных шин для данных и набора команд позволяет разделить доступ к памяти и операции арифметического и логического блока (ALU). Это уменьшает количество вычислительной мощности, требуемой микроконтроллером, и приводит к снижению затрат, низкому энергопотреблению и тепловыделению, что делает их идеальными для разработки устройств с батарейным питанием. Многие ARM,Микроконтроллеры AVR и PIC основаны на архитектуре Гарварда. Примеры микроконтроллеров, использующих архитектуру фон Неймана, включают 8051, zilog Z80 и другие.
3. Размер бит
Микроконтроллер может быть 8-битным, 16-битным, 32-битным и 64-битным, что является текущим максимальным размером бит, которым обладает микроконтроллер. Разрядность микроконтроллера представляет собой размер «слова», используемого в наборе команд микроконтроллера. Это означает, что в 8-битном микроконтроллере представление каждой инструкции, адреса, переменной или регистра занимает 8-битное. Одно из ключевых значений размера битов - это объем памяти микроконтроллера. Например, в 8-битном микроконтроллере имеется 255 уникальных ячеек памяти в зависимости от размера бит, в то время как в 32-битном микроконтроллере имеется 4294967295 уникальных ячеек памяти, что означает, что чем выше размер бит, тем больше количество уникальных ячеек. ячейки памяти, доступные для использования на микроконтроллере. Однако в наши дни производителиразрабатывают способы предоставления доступа к большему количеству ячеек памяти микроконтроллерам меньшего размера посредством пейджинга и адресации, так что 8-битный микроконтроллер становится 16-битным адресуемым, но это имеет тенденцию усложнять программирование для разработчика встроенного программного обеспечения.
Влияние размера битов, вероятно, более заметно при разработке прошивки для микроконтроллера, особенно для арифметических операций. Различные типы данных имеют разный размер памяти для разного размера микроконтроллера. Например, использование переменной, объявленной как целое число без знака, которое из-за типа данных потребует 16 бит памяти в кодах, которые должны выполняться на 8-битном микроконтроллере, приведет к потере самого значимого байта в данных, который иногда может быть очень важно для достижения задачи, для которой было разработано устройство, на котором будет использоваться микроконтроллер.
Таким образом, важно выбрать микроконтроллер с размером бит, который соответствует размеру обрабатываемых данных.
Вероятно, важно отметить, что большинство приложений в наши дни относятся к 32- и 16-битным микроконтроллерам из-за технологических достижений, встроенных в эти чипы.
4. Интерфейсы для связи
Связь между микроконтроллером и некоторыми датчиками и исполнительными механизмами, которые будут использоваться в проекте, может потребовать использования интерфейса между микроконтроллером и датчиком или исполнительным механизмом для облегчения связи. Например, для подключения аналогового датчика к микроконтроллеру потребуется, чтобы микроконтроллер имел достаточное количество АЦП (аналого-цифровых преобразователей) или, как я упоминал ранее, изменение скорости двигателя постоянного тока может потребовать использования интерфейса PWM на микроконтроллере. Поэтому важно подтвердить, что выбранный микроконтроллер имеет достаточно необходимых интерфейсов, включая UART, SPI, I2C и другие.
5. Рабочее напряжение
Рабочее напряжение - это уровень напряжения, при котором система предназначена для работы. Это также уровень напряжения, с которым связаны определенные характеристики системы. При проектировании аппаратного обеспечения рабочее напряжение иногда определяет логический уровень, на котором микроконтроллер взаимодействует с другими компонентами, составляющими систему.
Уровни напряжения 5 В и 3,3 В являются наиболее популярным рабочим напряжением, используемым для микроконтроллеров, и решение о том, какой из этих уровней напряжения будет использоваться, следует принять в процессе разработки технической спецификации устройства. Использование микроконтроллера с рабочим напряжением 3,3 В в конструкции устройства, в котором большинство внешних компонентов, датчиков и исполнительных механизмов будут работать с уровнем напряжения 5 В, будет не очень разумным решением, поскольку потребуется реализовать логический уровень. переключатели или преобразователи, позволяющие обмениваться данными между микроконтроллером и другими компонентами, и это без необходимости увеличивает стоимость производства и общую стоимость устройства.
6. Количество контактов ввода / вывода
Количество портов ввода / вывода общего или специального назначения и (или) контактов, которыми обладает микроконтроллер, является одним из наиболее важных факторов, влияющих на выбор микроконтроллера.
Если микроконтроллер должен иметь все другие функции, упомянутые в этой статье, но не имеет достаточного количества контактов ввода-вывода, как того требует проект, его нельзя использовать. Важно, чтобы микроконтроллер имел достаточно выводов ШИМ, например, для управления количеством двигателей постоянного тока, скорость которых будет изменяться устройством. Хотя количество портов ввода-вывода на микроконтроллере можно расширить за счет использования регистров сдвига, он не может использоваться для всех типов приложений и увеличивает стоимость устройств, в которых он используется. Поэтому лучше убедиться, что микроконтроллер, который будет выбран для проекта, имеет необходимое количество портов ввода / вывода общего и специального назначения для проекта.
Еще одна важная вещь, которую следует учитывать при определении количества контактов ввода-вывода общего или специального назначения, необходимых для проекта, - это будущие улучшения, которые могут быть сделаны в устройстве, и то, как эти улучшения могут повлиять на количество контактов ввода-вывода. обязательный.
7. Требования к памяти
С микроконтроллером связано несколько типов памяти, на которые разработчик должен обратить внимание при выборе. Наиболее важными из них являются RAM, ROM и EEPROM. Количество необходимой памяти может быть трудно оценить до тех пор, пока она не будет использована, но, судя по объему работы, требуемой от микроконтроллера, прогнозы могут быть сделаны. Эти упомянутые выше устройства памяти образуют память данных и программ микроконтроллера.
Программная память микроконтроллера хранит прошивку для микроконтроллера, поэтому при отключении питания микроконтроллера прошивка не теряется. Объем необходимой программной памяти зависит от количества данных, таких как библиотеки, таблицы, двоичные файлы изображений и т. Д., Которые необходимы для правильной работы прошивки.
С другой стороны, память данных используется во время выполнения. Все переменные и данные, созданные в результате обработки среди других действий во время выполнения, сохраняются в этой памяти. Таким образом, сложность вычислений, которые будут происходить во время выполнения, можно использовать для оценки объема памяти данных, необходимой для микроконтроллера.
8. Размер упаковки
Размер корпуса относится к форм-фактору микроконтроллера. Микроконтроллеры обычно поставляются в пакетах, начиная от QFP, TSSOP, SOIC и заканчивая SSOP и обычным пакетом DIP, который упрощает монтаж на макетной плате для создания прототипа. Важно заранее спланировать производство и предусмотреть, какая упаковка будет лучшей.
9. Потребляемая мощность.
Это один из наиболее важных факторов, которые следует учитывать при выборе микроконтроллера, особенно когда он должен быть развернут в приложении с батарейным питанием, таком как устройства IoT, где желательно, чтобы микроконтроллер имел как можно более низкое энергопотребление. Технические данные большинства микроконтроллеров содержат информацию о нескольких аппаратных и (или) программных технологиях, которые могут использоваться для минимизации количества энергии, потребляемой микроконтроллером в различных режимах. Убедитесь, что выбранный вами микроконтроллер соответствует требованиям к питанию для вашего проекта.
10. Поддержка микроконтроллера.
Важно, чтобы микроконтроллер, с которым вы работаете, имел достаточную поддержку, включая: образцы кода, справочные проекты и, если возможно, большое сообщество в Интернете. Работа с микроконтроллером впервые может быть сопряжена с различными проблемами, и доступ к этим ресурсам поможет вам быстро их преодолеть. Хотя использование новейших микроконтроллеров из-за тех крутых новых функций, с которыми они пришли, - это хорошо, рекомендуется убедиться, что микроконтроллер существует не менее 3-4 месяцев, чтобы гарантировать большинство ранних проблем, которые могут быть связаны с микроконтроллером было бы решено, так как разные клиенты должны были бы провести много тестов микроконтроллера с разными приложениями.
Также важно выбрать микроконтроллер с хорошим оценочным комплектом, чтобы вы могли быстро приступить к созданию прототипа и легко протестировать функции. Оценочные комплекты - это хороший способ приобрести опыт, познакомиться с цепочкой инструментов, используемых для разработки, и сэкономить время во время разработки устройства.
Выбор подходящего микроконтроллера для проекта по-прежнему будет проблемой, которую придется решать каждому разработчику оборудования, и хотя есть еще несколько факторов, которые могут повлиять на выбор микроконтроллера, эти факторы, упомянутые выше, являются наиболее важными.