Какое семейство микроконтроллеров ARM лучше для начинающих?
Я имею в виду, какая семья:
Обновлять:
1.Хорошо ли начинать с Cortex-M4? (из-за ARMv7, Гарвардской мемориальной арки и т. д.)
Да, почему бы и нет? Если вы программируете на языке C, я думаю, вы не почувствуете разницы (почувствует только компилятор). С другой стороны, если вы программируете на ассемблере, то, конечно, есть различия.
2. Что лучше для начала выбрать между микроконтроллерами на базе NXP, ST и TI Cortex-M4? (на основе требований выше)
Из этих MCU я знаю только MCU TI Tiva. Вы можете купить недорогую стартовую панель Tiva C Series TM4C123G. На этой панели запуска есть два MCU. Один из них работает как программатор, и при желании его можно использовать для программирования/отладки внешнего микроконтроллера Tiva C.
Вы можете использовать Arduino-подобную среду программирования под названием Energia для очень быстрого программирования простых приложений. Для сложных приложений вам следует использовать Code Composer Studio (CCS), который бесплатен при определенных условиях (один из них использует его с низкоскоростными программистами, как тот, что в Launchpad). Текущая CCS (версия 6) позволяет легко устанавливать библиотеки и примеры. Бесплатные библиотеки, позволяющие «легко» (это, конечно, относительно) работать с периферией внутри MCU, взаимодействовать с внешней периферией или иметь RTOS (операционную систему реального времени).
Многое зависит от того, что вы подразумеваете под «семьей».
Если вы спрашиваете, какое семейство продуктов производителя является хорошим местом для начала, я бы рекомендовал серию SAM от Atmel в основном из-за цепочки инструментов, по крайней мере, если вы работаете в Windows.
К сожалению, ARM довольно фрагментирован с точки зрения поддержки производителя и наборов инструментов для Windows.
У Atmel есть Atmel Studio , которую вы устанавливаете, и она просто работает. Я провел некоторое время, разбираясь с частями STM32, прежде чем попробовать некоторые устройства Atmel, и получить функциональный набор инструментов было большим раздражением. В конце концов я заставил CooCox работать, но у меня очень мало поддержки со стороны. Студия Atmel работает сразу после установки. Это хорошо, потому что может потребоваться заставить GCC работать в Windows.
Если вы вообще не знакомы с разработкой MCU, я вообще не могу рекомендовать ARM. Вы должны много читать между строк на любой платформе, чтобы заставить работать периферийные устройства.
ARM Cortex M0 — самая простая и простая архитектура в семействе ARM.
Лично я учился на макетной плате FRDM-KL25z от Freescale, хотя существует множество вариантов.
Существует Arduino-подобная среда под названием mBed, которая очень похожа на Arduino, хотя и предназначена для контроллеров ARM. Вы можете использовать mBed со многими различными контроллерами, такими как Teensy и даже с платой разработки FRDM, о которой я упоминал.
Если вы не ищете среду, подобную Arduino, вы можете использовать плату разработки FRDM, о которой я упоминал, от Freescale, которая имеет бесплатную среду разработки, включающую генератор кода под названием Processor Expert. Processor Expert позволяет указать компоненты и протоколы связи, а затем сгенерирует для вас необработанный код. Код по-прежнему представляет собой чистый код и будет очень похож на код, который вы написали бы, если бы не использовали Processor Expert.
Еще одна очень популярная линейка, особенно среди пользователей здесь, на EE.SE, — это линейка макетных плат Discovery от ST Microelectronics.
Короче говоря, для новичка я бы очень рекомендовал серию Cortex-M0. Cortex-M0+ имеет тот же набор инструкций, хотя и более оптимизированный.
Фанкигай
ПКП
Лесто
ПКП
Воутер ван Оойен
Мэтт Янг
ПКП
Фанкигай
ПКП
Фанкигай
Ник Алексеев