Platformio, а также визуальная студия захватывает мир

в недавнем посте, я говорил об использовании модуля STM32 «Blue Pill» с Arduino IDE. Я не огромный поклонник Arduino IDE, однако я признаю, что это просто утилизировать, что делает его отличным для простых вещей.

Я не огромный поклонник интегрированных условий продвижения (IDE), в целом. Я использовал их много, особенно когда они плотно подключены к инструменту, я пытаюсь использовать в то время. Однако, когда я не делаю ничего особенного, я склонен просто сочинять свой код в Emacs. Полагая, я полагаю, я действительно не против IDE, если у него есть инструменты, которые действительно помогают мне. Однако, если это просто текстовый редактор, а также вводит несколько команд, я могу сделать это от Emacs или еще одного редактора моего выбора. Возможности того, что ваша предпочтительная IDE будет иметь столько же редактирования, а также персонализацию, как Emacs, близки к нулю. Даже если вам не нравятся EMACS, зачем открывать еще один редактор, если нет никакого удаления при этом?

Конечно, есть способы использования других инструментов с Arduino, а также другие рамки, а также решили начать смотреть на них. Ведь именно насколько сложно можно развивать код Arduino? Если вы хотите перепрыгнуть прямо на линию Punch, вы можете осматривать видео, ниже.

Оказывается…

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

Это означает, что просто копирование вашего типичного Arduino Code (мне не нравится для государственного эскиза) не предоставляет вам ничего, что вы можете разрабатывать с типичным компилятором. Хотя существует много решений на основе Makefile, также используется инструмент, называемый Platformio, который предполагает, что является решением общего назначения для создания наличиев встроенных платформ, в том числе Arduino.

О платформе

Хотя Platformio объявляет IDE IDE, это действительно плагин для редактора атом с открытым исходным кодом. Тем не менее, он также имеет плагины для большого количества других удостоверений. Интересно достаточно, он даже поддерживает Emacs. Я не понимаю, что все ценят Emacs, поэтому я решил расследовать несколько других вариантов. Я тоже не говорю о Vim.

Я завел экспериментирую с двумя IDE: Atom, а также код Microsoft Visual Studio. Поскольку Platformio имеет свою версию 2.0 в превью, я решил попробовать. Вы можете быть удивлены тем, что используете код Microsoft Microsoft. Удивительно, что он работает на Linux, а также поддерживает многие вещи с плагинами, включая модуль Arduino и, конечно, Platformio. Это даже предлагается как источник под лицензией MIT. Два редактора действительно выглядят отлично, как вы можете видеть.

Platformio поддерживает ошеломляющее количество досок, начиная от Arduino до esp82666 до доски для мандовых досок в Raspberry Pi. Он также поддерживает различные рамки, а также иды. Если вы похожи на меня, а также как просто хотите быть в командной строке, вы можете использовать Core Platforerio Core, который является командной строкой.

На самом деле, это одна из вещей, которые вы очень первые обратите внимание на Platformio, так это то, что он не может выбрать, если это инструмент GUI или инструмент командной строки. Я подозреваю, что несколько из этого есть в выборе IDE. Например, с кодом вы должны запустить инструмент инициализации проекции в командной строке. Предоставлено, вы можете открыть оболочку внутри кода, однако это все еще командная строка. Даже на платформе IDE (на самом деле, атом), изменяя синюю таблетку из Arduino до крон, требует открытия данных INI, а также изменения его. Установка пути загрузки для FRDM-KL46 необходимо точно такое же изменение.

Это легко?

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

Это исправлено, конечно. Тем не менее, у меня есть еще одна жалоба, которую я чувствую бедных для озвучивания, так как у меня не было гораздо лучшего решения. Platformio так много делает. Теоретически, это выносливость этого. Я могу составить свой код, а также не осторожно, как именно то, как записаны библиотеки Mbed или Arduino Mool Mune, мой исходный код. Мне даже не нужно настроить цепочку инструментов, поскольку Platformio загружает все, что я требую, в первый раз, когда я его использую.

Когда это работает, это действительно здорово. Проблема, когда это не так. Например, на более старой версии Platformio у меня было трудно получить библиотеки крон для разрабатывания для другой цели. Я выкопал, как и обнаружил проблему, однако это было нелегко. Разве я разработал наситку, а также в управленииПроцесс, я бы понял намного лучше точно, как устранить неполадки.

В конце концов, вам придется устранять неполадки. Platformio стремится к движущимся целям. Каждый раз, когда arduino IDE или Mbed Frameworks или что-то еще меняется, есть большая возможность что-то сломать. Когда это делает, вам придется работать, чтобы восстановить его до тех пор, пока дизайнеры не ремонтируют его для вас. Если вы можете сделать это, это расход во времени. Однако я подозреваю, что люди, которые больше всего думают о Platformio, будет наименее в состоянии восстановить его, когда он сломается.

Нижняя линия

Если вы хотите поэкспериментировать с другим методом построения программ, а также более важно, единый метод для производства, а также разработки – вы должны предоставить платформу спин. Когда это работает, хорошо работает хорошо. Правильно вот несколько ссылок, чтобы начать:

IDE Platformio (требует атома)

Platformio Core (не нужен, если вы настроите пакет IDE)

Visual Studio Code (установка Platformio из IDE)

Итог, когда он работает, он отлично работает. Когда это не болезненно. Должны ли вы использовать это? Это удобно, нет вопроса об этом. Интеграция с кодом довольно минимальна. Интеграция атома – пока не идеально – гораздо более бесшовные. Однако, если вы обнаружите, чтобы использовать инструменты командной строки, это почти не имеет значения. Используйте любой редактор, который вам нравится, как и мне нравится. Если вы используете его, просто надеюсь, что он не сломается так же, как, возможно, есть план резервного копирования, если он будет.