Найти тему

Arduino vs STM32

Оглавление

Популярность, раскрученность и известность. Это все про Arduino . Если человек ищет что-нибудь про микроэлектронику уровня "сделай сам", то он наверняка наткнется на Arduino . Заслужено или раскручено?

Ведь существует альтернатива: stm32. Достаточно доступная благодаря низким ценам и достаточно большой документации (но не литературе к сожалению).

Оба проекта достойны того, чтобы каждый знал о них
Оба проекта достойны того, чтобы каждый знал о них

Arduino

Что же такое Arduino ? Это широчайший выбор готовых к "употреблению" плат и не менее большой ассортимент расширений для конкретных модулей.

Готовность к употреблению -- это значит, что достаточно подсоединить шнуром плату к компьютеру для работы. Сами платы содержат разъем типа USB, а также ряды штыревых разъемов, через которые можно подключиться к периферии микроконтроллера. Соответственно геометрия рядов штыревых разъемов это то, что определяет совместимость плат и их расширений.

Расширения это, как правило, готовая схема подключения электронного компонента, например датчика или экрана. Как правило, расширения снабжены рядами гнезд для штыревых разъемов. Таким образом расширения устанавливаются на платы. Это обеспечивает надёжное соединение плат и расширений без необходимости пайки. Это крайне удобно для целей обучения и разработки в домашних условиях. Всё-таки пайка это пожароопасный процесс, как никак.

-2

Для работы со всем богатством возможностей Arduino существует специальная IDE.

-3

Основной инструментарий небогатый:

Менеджер библиотек -- позволяет загружать библиотеки, как и понятно из названия. В большинстве своем, они представляют драйверы для управления различными устройствами, подключенными как расширения платы.

Проверка и загрузка эскизов в плату -- основной функционал программы: подключаем плату Arduino к порту, пишем эскиз и, нажимая кнопки, загружаем эскиз в платку.

Менеджер COM порта -- его используют для получения и отправки данных через Serial порт.

Достоинства Arduino:

1. Все крайне интуитивно понятно

2. Разнообразие плат и расширений к ним поражает

3. Крайне удобно реализовано управление библиотеками

Недостатки Arduino:

1. Все настолько упрощено, что некоторые функции отсутствуют. Если некоторые функции отсутствуют в стандартной библиотеке, то добавить их Вам будет крайне трудно

2. Скорость выполнения процедур платой крайне низкая

3. Отсутствие такой полезной фишки как Отладка

STM32

Набор готовых плат для stm32 гораздо меньше, чем у ардуино. Более того для плат stm32 народными умельцами сделаны прошивки ардуино, а значит они уже входят в экосферу ардуино.

На изображенной плате можно заметить наличие двух процессоров: один предназначен для загрузки прошивки и отладки второго, более мощного.
На изображенной плате можно заметить наличие двух процессоров: один предназначен для загрузки прошивки и отладки второго, более мощного.

Для программирования этого семейства микроконтроллеров компания-производитель выпустила сразу два инструмента.

Первая stm32cubemx -- специальная программа, которая позволяет:

1. Подобрать микроконтроллер по заданным характеристикам

2. Выбрать необходимую в проекте периферию

3. Сгенерировать проект для конкретного IDE, который можно выбрать из списка

-5

В списке присутствует stm32 cubeide -- как раз программа для написания прошивки под плату, компиляции, загрузки и отладки.

-6

Достоинства STM32:

1. Широкий функционал программного обеспечения

2. Скорость работы

3. Отладка!!!

Недостатки STM32:

1. Не интуитивно понятный интерфейс

2. Сложность/необходимость настройки периферии

3. Заметно меньше готовых библиотек

Вместо заключения

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

В дальнейших публикациях будет разобрано несколько проектов как с использованием Arduino, так и с использованием Stm32.

Спасибо за внимание!