PlatformIO – замена Arduino IDE

Данная статья – первая из цикла по великолепному фреймворку PlatformIO. Тут мы рассмотрим недостатки Arduino IDE, установим PlatformIO и загрузим программу для мигания светодиодом.

Примечание: статья написана товарищем Shepelev K. и опубликована по его просьбе.

Почему Arduino IDE – г@вно?


Arduino IDE – как многие думают, единственный редактор кода для Arduino, ESP и прочих совместимых плат. Однако вы ошибаетесь, ведь относительно недавно в свет вышла замечательная альтернатива – PlatformIO.

PlatformIO – это open-source экосистема для разработки на Arduino. Поддерживает множество платформ, с подробным списком которых вы можете ознакомиться на официальном сайте, скажу лишь, что в нем присутствуют все основные популярные микроконтроллеры.

Почему Arduino IDE – бл@дская срань демоническо-сектантского происхождения, которая призвана, чтобы портить жизнь всем и каждому? Есть множество косяков, за которые мы можем ее не любить:

  • Отсутствие какой-либо кастомизации (темы, подсветка синтаксиса)
  • Отсутствие автодополнения кода
  • Неудобная организация проектов
  • Отсутствие поддержки каких-либо плагинов
  • Неудобный менеджер библиотек
  • Отвратительный build-output, с которым вы хрен поймете, где ошибка
  • Прочие косяки

Как минимум из-за этих проблем вы обязаны хотя бы попробовать на вкус что-то новое, и PlatformIO – это то самое великолепное рагу, после которого вы не захотите возвращаться к окаменевшей тушенке вековой давности.

Как установить и настроить?


Установка простая, а сам фреймворк распространяется на бесплатной основе.

Для начала вы должны определиться, какой редактор вы будете использовать. Тут два распространенных варианта – Visual Studio Code (не путать с оригинальной Visual Studio, так как эта, в отличие от своей матери, мало весит и шустро работает), либо Atom. Если вы хотите больше кастомизации, всяких крутых плагинов и экспериментов – выбирайте Atom, если же вам нужно просто красивую, удобную IDE с отличным автодополнением кода из коробки, выбирайте Visual Studio Code.

После того, как вы установили редактор кода, принимаемся устанавливать фреймворк.

Установка на VS Code

  1. Откройте менеджер расширений
  2. В поле для поиска введите “platformio-ide”
  3. Нажмите на кнопку “Install”
  4. После того, как все установилось, перезагружаем редактор

Установка на Atom

  • Откройте менеджер пакетов
    • Windows: Меню: Файл (File) > Настройки (Settings) > Установить (Install)
    • macOS: Меню: Atom > Настройки (Preferences) > Установить (Install)
    • Linux: Меню: Редактировать (Edit) > Настройки (Preferences) > Установить (Install)
  • В поле для поиска введите “platformio-ide”
  • Нажмите на кнопку “Install”
  • После того, как все установилось, перезагружаем редактор

Автор: Shepelev K., 2k18

Мигаем светодиодом


Перед тем, как перейти к созданию проекта, хочу предупредить, что все действия будут производиться в Visual Studio Code, но это не должно стать большой проблемой, так как разница, по сути, лишь в расположении некоторых кнопочек для загрузки и сборки прошивки.

Создаем проект

Итак, установив все это добро, запускаем наш редактор. Вас должен встретить стартовый экран, через который мы и будем создавать на первый проект. Тыкаем на кнопку “New Project” и создаем новый проект:

  1. Выбираем нашу плату в Board
  2. Решаем, куда поместить наш проект: в стандартную директорию PlatformIO или какую-то свою папку (снимаем галочку, если хотим сконфигурировать папку для сохранения проекта)
  3. Тыкаем Finish

Ура, проект создан!

Пишем код


Стандартный код для мигания светодиодом (пишем в файлик main.cpp, расположенный в директории src):

#include <Arduino.h>

#define LED_PIN 13
#define BLINK_DELAY 1000

void setup() {
    pinMode(LED_PIN, OUTPUT);
}

void loop() {
    digitalWrite(LED_PIN, HIGH);
    delay(BLINK_DELAY);
    digitalWrite(LED_PIN, LOW);
    delay(BLINK_DELAY);
}

Загружаем в плату


Итак, перед тем, как собрать и загрузить прошивку в плату, нам нужно открыть файлик platformio.ini и настроить там: скорость загрузки и COM-порт для загрузки.

Пример сконфигурированного файла platformio.ini:

[env:nanoatmega328]
platform = atmelavr
board = nanoatmega328
framework = arduino

; Скорость загрузки в baud
upload_speed = 57600

; COM-порт для загрузки
upload_port = COM3

Теперь жмем на кнопку загрузки (в Visual Studio Code она находится в нижней голубой панели):

Теперь у вас на вооружении есть мощный инструмент, обуздывать который мы будем в следующих статьях. Вы также можете самостоятельно ознакомиться с документацией PlatformIO (Warning! English required!).

Автор: Shepelev K., 2k18

4.1/5 - (38 голосов)
Подписаться
Уведомить о
guest

48 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии