Arduino ide что нового

Обновлено: 04.07.2024

Arduino IDE — это интегрированная среда разработки для Windows, MacOS и Linux, разработанная на Си и C++, предназначенная для создания и загрузки программ на Arduino-совместимые платы, а также на платы других производителей.

Простая и функциональная среда разработки для создания создания собственного ПО, которым управляются многочисленные устройства, собранные начинающими и опытными электронщиками. Соединение ПК с микроконтроллером реализовано через интерфейс USB. Код на языке Си и C++ пишется в редакторе, в котором есть подсветка команд и спеллчекер.

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

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

В октябре 2019 года организация Arduino начала предоставлять ранний доступ к новой Arduino Pro IDE с отладкой и другими расширенными функциями.

    — Windows XP, Windows 7, Windows 8, Windows 10 и выше. — установка без прав админа, портативная версия для флешки. — для Windows 8.1/10 в Microsoft Store.

Печатные платы управления, которые составляют основу любого устройства, различают прежде всего по типу микроконтроллера. Начальные версии идут с чипами ATmega328:

С оговоркой в список попадает и LilyPad с контроллером ATmega328p. Общими у этих плат будут объемы ОЗУ и Flash – 2 и 32 КБ соответственно. Различия заключаются в количестве выходов, аналоговых и цифровых. Это основные платы Arduino, на которых строится множество устройств.

Кроме них есть еще и платы Leonardo и Micro с чипом ATmega32u4, а также Mega c чипом от того же производителя Atmel, но его цифры – 2560.

Интегрированная среда разработки для управляющего кода называется Arduino IDE. Включает в себя редактор, препроцессор и компилятор. Может быть дополнена подключаемыми библиотеками с самым разным функционалом. Готовый код заливается непосредственно в устройство, но может быть сохранен и в качестве отдельного файла с расширением «*.ino».

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

  • void setup(), в которой описывается окружение, в котором будет выполнена программа (переменные, PIN`ы платы, библиотеки и т.д.)
  • void loop(), бесконечный цикл, который выполняется до тех пор, пока оборудование не будет выключено

Arduino IDE включает в себя не только редактор, но еще и компилятор, работающий в паре с загрузчиком. Для ознакомления с возможностями предусмотрены готовые шаблоны кода, которые сразу загружаются в устройство. Новичкам обычно демонстрируют мигание светодиода с заданной периодичностью. Шаблон этого кода можно загрузить в редактор через меню «Файл», в котором есть отдельный пункт «Примеры» или, в зависимости от версии, «Образцы».

Среда разработки распространяется свободно. Инсталляторы Arduino IDE можно скачать c нашего сайта для операционных систем Windows, Mac OS, Linux. В качестве компилятора среда использует небезызвестный avr-gcc, а значит, что «из коробки» пользователь получает поддержку оригинальных плат с архитектурой AVR и аналогов.


Интерфейс у IDE для Arduino предельно лаконичен: меню и функциональные кнопки – сверху, редактор – в центре, лог работы компилятора и загрузчика – внизу. В рабочей области открываются вкладки, но они в данном случае имеют особый смысл. Во-первых, не являются отдельными проектами: они разбивают код инструкции, который находится в одной папке, на смысловые части. Во-вторых, читаются и, главное, компилируется слева направо. И в-третьих, располагаются в алфавитном порядке.

Локализация Arduino IDE на русском выбирается после установки. Нативный для пользователя язык меню подключается стандартным способом, через настройки.


Arduino Mega 2560 - это обновленная версия платы Мега. Она компактна, функциональна, легко настраивается, имеет ряд преимуществ перед своими аналогами. Обо всем этом говорим сегодня в нашей.


Arduino Nano является чуть ли не самой популярной отладочной платформой в линейке продуктов Ардуино. И это не удивительно, ведь эта плата имеет ряд достоинств, при этом она доступна по стоимости, да.


Arduino Uno – самая популярная плата в семействе Ардуино. Ее активно приобретают и используют во многих современных проектах, она проста в сборке и доступна по цене, достаточно компактна, имеет.

Мы уж сообщали замечательную новость о выходе новой версии Arduino Pro IDE, а сегодня мы немного подробнее остановимся на её возможностях.

Выход альфа-версии Arduino Pro IDE (alpha) принес с собой новый облик и более продвинутые функции среды разработки. В этом месяце на конференции Maker Faire Rome Массимо Банзи и Лука Чиприани представили Arduino Pro IDE, которая, правда, в настоящее время все еще находится в альфа-версии.

Но уже на данный момент становится ясно, что Arduino IDE была изменена в лучшую сторону. Также не стоит волноваться тем, кто любит старую IDE, создатели Arduino IDE пообещали, что она будет доступна всегда.

Демо экрана альфа-версии Arduino Pro IDE

Демо экрана альфа-версии Arduino Pro IDE

Создатели среды разработки реализовали ряд улучшений, которые пользователи просили довольно давно. Давайте посмотрим чего же ожидать от новой версии?

Новый вид и новые ощущения

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

Pro IDE была разработана с использованием Eclipse Theia, которая обновляется с помощью новых редакторов исходного кода, таких как Visual Studio Code или Atom. Среда имеет полезные боковые панели, которые содержат ярлыки для файлового менеджера и git. Интерфейс переключается между расширенным и обычным режимом.

Изменить размер текста стало намного проще, чем раньше. Но самое главное - теперь вы можете даже включить темную тему.

Темная тема Arduino Pro IDE

Темная тема Arduino Pro IDE

В альфа-версии все еще есть старые функции, такие как кнопка проверки и загрузки, поэтому Pro IDE легко начать использовать всем, кто знаком со старой версией среды разработки.

Менеджер плат и библиотек

Менеджер плат и библиотек встроен в единый интерфейс, они больше не открываются в отдельных окнах и отображаются рядом с левой боковой панелью.

Менеджер плат:


Менеджер библиотек:


Поиск команд

Новая функция «Поиска команд» очень похожа на ту, что есть в Visual Studio или Sublime Text. Она позволяет искать команды и функции, которые вы вводите или обычно видите в меню, даже, например, открыть или сохранить файл.

Использование поиска команд в Arduino Pro IDE

Использование поиска команд в Arduino Pro IDE

Автозаполнение

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

В Arduino Pro IDE всякий раз, когда вы набираете код, появляется окно, которое предлагает функции и имена переменных в зависимости от того, что вы ввели. Это действительно ускоряет процесс разработки. Автозаполнение популярный инструмент многих IDE, которые используют программисты в настоящее время.

Git не часто используется новичками в программировании, но это очень полезный навык. Теперь возможности Git доступны в новой Arduino Pro IDE. Это очень классная функция, которой точно не хватало старой программе. Переоценить её важность очень сложно.

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

Поддержка других языков программирования

Новая среда IDE предлагает поддержку языков, отличных от C++, что означает, что она будет отображать и синтаксически выделять код в соответствии с типом файла, который вы открываете. Например, если вы откроете файл JSON, он будет отображаться в формате json.

Arduino Pro IDE в режиме JSON

Arduino Pro IDE в режиме JSON

Заключительные мысли

Стоит также сказать, что создатели Arduino Pro IDE довольно вовремя выпустили новую версию программы, т.к. другие IDE уже выпускают дополнения по работе с Arduino и другими микроконтроллерами, как пример - Visual Studio Code от Microsoft.


Новая среда разработки работает чутка медленней предыдущей версии (в плане запуска), но имеет очень нужные и важные возможности по работе с кодом, которые сильно облегчают жизнь (и вообще являются обязательными!)


В общем получилась какая-то смесь Arduino IDE и Visual Studio Code :


Новые темы

Если раньше была только светлая тема, то сейчас есть и многими любимая темная ( Preferences (Ctrl + Comma) -> Theme).

Dark (Theia) Light (Theia) High Contrast (Theia) Light (Arduino)


Также доступно масштабирования не только кода, но и всех элементов программы ( Ctrl и +, Ctrl и -).

Новые возможности редактора кода

Отличный поиск по странице вместе с выделением одинаковых фрагментов текста:


Достаточно навести указатель мыши на что-нибудь и быстренько высветится искомое значение:


Также хорошо работает нахождение первичного определения ( Ctrl + ЛКМ), что невероятно важно для понимания происходящего ( чтобы работало нужно выбрать плату! ):

Подсказки при наборе также очень важны и нужны (если не высвечивает нажать Ctrl + Пробел, а для ввода найденного нажать Enter):

Поиск библиотек

Искать и устанавливать библиотеки также стало удобней:


Прошивка и выбор платы

Итак, испытаем новое творение в деле. Беру Ардуину Нано (CH340):


И подключаю её к ПК, она отображается в диспетчере устройств как COM14 (чтобы проверить нажать Win + R и выполнить devmgmt.msc):


И теперь в списке легко найти по поиску Arduino Nano, а вот название COM-порта пока еще не завезли.


Прошивать можно по старинке через UART (Ctrl + U) или через программатор (Ctrl + Shift + U) (очень не хватает полосы загрузки):

Терминал (Serial Monitor)


Отладка

Конечно никакой отладки здесь нет и не будет, т.к. для этого нужно, чтобы МК имел поддержу чего-то (JTAG) и подключатся он должен через отладчик, а не через USB-TTL переходник.


Поэтому выбрасывайте это барахло и переходите на STM32, например на классную-прекрасную плату MiniF4.


Качнуть можно с официального сайта.
Также на всякий случай перезалил (ядиск): arduino-ide_2.0.0-beta.7_Windows_64bit.exe

Купить на Aliexpress

Итого

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


Рассмотрим основную программу, с которой будем работать – Arduino IDE. IDE расшифровывается как интегрированная среда разработки, и в нашем случае представляет собой блокнот, в котором мы пишем код, препроцессор и компилятор, которые проверяют и компилируют код, и инструменты для загрузки, которые загружают код выбранным способом. IDE написана на java, поэтому не удивляйтесь её долгому запуску, большому объему занимаемой оперативки и медленной работе. Несмотря на огромный опыт работы с ардуино я до сих пор продолжаю писать код в Arduino IDE, потому что я к ней привык. Помимо перечисленных проблем стандартная IDE выделяется на фоне “взрослых” сред разработки отсутствием дерева/файловой структуры проекта (что не нужно для простых проектов), отсутствием рефакторинга, отсутствием автоматического дополнения кода (хотя его обещают вот-вот добавить и уже есть beta) и очень медленной компиляцией кода. Этих недостатков лишены аналоги Arduino IDE, о них поговорим в конце урока. Помимо отсутствия озвученных недостатков там есть некоторые полезные фишки, например все define-ы файла с кодом отображаются в отдельном блоке и с ними очень удобно работать.

Интерфейс

Сначала рассмотрим общий вид программы, т.е. как она выглядит после запуска. В самом центре – блокнот, то самое место, где пишется код. По умолчанию уже написаны два стандартных блока, setup и loop. К ним вернёмся в разделе уроков программирования. Всё остальное можно увидеть на скриншоте ниже.

blank

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

Вкладка “Файл”

  • Новый
  • Открыть
  • Открыть недавние
  • Папка со скетчами – список скетчей, которые сохранены туда, куда программа предлагает их сохранять по умолчанию (Документы/Arduino)
  • Примеры – список установленных библиотек с подсписком примеров к каждой. Весьма полезная штука
  • Закрыть
  • Сохранить
  • Сохранить как…
  • Настройки страницы (для печати)
  • Печать
  • Настройки
  • Выход

Далее сразу рассмотрим окно настроек:

Окно настроек

blank

Куча интересных настроек на свой вкус. Из них отмечу

  • Размещение папки скетчей – куда по умолчанию сохраняются скетчи
  • Показать подробный вывод – показывает подробный лог при компиляции и загрузке, нужно при поиске багов и непонятных глюков/ошибок
  • Использовать внешний редактор – запрещает редактирование кода из Arduino IDE, чтобы редактировать его в других редакторах, например Notepad++. Редактируем там, а загружаем через IDE. Зачем это? Писать код в том же Notepad++ гораздо удобнее и приятнее, чем в Arduino IDE. К сожалению.
  • Дополнительные ссылки для менеджера плат – сюда вставляются ссылки на пакеты для работы с другими платами, например такими основанными на ESP8266 или ATtiny85.

Вкладка “Правка”

Во вкладке Правка ничего такого особенного нет, всё как в других программах

Вкладка “Скетч”

blank

  • Проверить/компилировать – то же, что кнопка галочка
  • Загрузка – то же, что кнопка загрузка
  • Загрузить через программатор – загрузить скетч напрямую в МК, минуя загрузчик
  • Экспорт бинарного файла – сохраняет скомпилированный файл, который и загружается в МК. Бинарный файл хорош тем, что содержащийся в нём код практически невозможно не то что отредактировать, но даже прочитать как вменяемый код. Именно в таком виде обычно поставляются прошивки для цифровой техники, чтобы никто не видел исходник =)
  • Показать папку скетча
  • Подключить библиотеку – подключает в код библиотеку, с директивой include, всё как нужно
    • Управлять библиотеками… – открывает менеджер библиотек, из которого можно установить библиотеки из официального списка
    • Добавить .zip библиотеку – не рекомендую так делать, потом не найдёте, куда она установилась

    Вкладка “Инструменты”

    Меню вкладок

    blank


    Система вкладок в Arduino IDE работает крайне необычным образом и очень отличается от понятия вкладок в других программах:

    • Вкладки относятся к одному и тому же проекту, к файлам, находящимся с ним в одной папке
    • Вкладки просто разбивают общий код на части, то есть в одной вкладке фигурная скобка может открыться, а в следующей – закрыться >. При компиляции все вкладки просто объединяются в один текст по порядку слева направо (с левой вкладки до правой). Также это означает, что вкладки должны содержать код, относящийся только к этому проекту, и сделать в одной вкладке void loop() и в другой – нельзя, так как loop() может быть только один
    • Вкладки автоматически располагаются в алфавитном порядке, поэтому создаваемая вкладка может оказаться между другими уже существующими. Это означает, что разбивать блоки кода по разным вкладкам (как во втором пункте, на одной вкладке, > на другой вкладке) – крайне не рекомендуется.
    • Также не забываем, что переменная должна быть объявлена до своего вызова, то есть вкладка с объявлением переменной должна быть левее вкладки, где переменная вызывается. Создавая новую вкладку нужно сразу думать, где она появится с таким именем и не будет ли из за этого проблем. Также название вкладок можно начинать с цифр и таким образом точно контролировать их порядок. Во избежание проблем с переменными, все глобальные переменные лучше объявлять в самой первой вкладке.
    • Вкладки сохраняются в папке с проектом и имеют расширение .ino, при запуске любой вкладки откроется весь проект со всеми вкладками.
    • Помимо “родных” .ino файлов Arduino IDE автоматически подцепляет файлы с расширениями .h (заголовочный файл), .cpp (файл реализации) и .pde (старый формат файлов Arduino IDE). Эти файлы точно так же появляются в виде вкладок, но например заголовочный файл .h не участвует в компиляци до тех пор, пока не будет вручную подключен к проекту при помощи команды include. То есть он висит как вкладка, его можно редактировать, но без подключения он так и останется просто отдельным текстом. В таких файлах обычно содержатся классы или просто отдельные массивы данных.

    Аналоги Arduino IDE

    Всем нетерпимо относящимся к кривой официальной IDE могу посоветовать следующие аналоги, работа в которых чем-то лучше, а чем-то хуже официальной IDE:

    Мы решили сэкономить вам пару кликов и разместить у себя свежие версии среды Arduino IDE, потому что на официальном сайте порой чёрт ногу сломит, пока найдёт нужную ссылку. Где скачать Arduino IDE — ваш выбор: файлы дистрибутивов абсолютно идентичны. Сейчас представлена стабильная версия Arduino IDE 1.8.16 (релиз от 06.09.2021) и бета-версия 2.0.0 (релиз beta.12 от 07.10.2021).

    Скриншот программы

      — Windows XP, Windows 7, Windows 8, Windows 10 и выше. — установка без прав админа, портативная версия для флешки.

    Для установки из архива в общем случае нужно выполнить следующие команды.

    В отдельных дистрибутивах Linux проще воспользоваться командой установки из пакетов.

    Как переключить язык

    Arduino IDE при установке выбирает язык системы по умолчанию. Если вам понадобится переключить интерфейс на другой язык, это можно сделать в общих настройках программы.

    1. Заходим в главном меню в пункт «Файл → Настройки».
    2. Выбираем нужный язык в выпадающем списке «Язык редактора».
    3. Перезапускаем среду.

    Переключение языка 1

    Переключение языка 2

    Бета-версия 2.0

      — Windows 10 (x86-64) и новее. — установка из архива. — версия для Linux-систем с архитектурой x86-64. — macOS X 10.14 Mojave (64 бита) или новее.

    Поддерживаемые платы

    Arduino IDE из коробки работает со всеми оригинальными платами AVR-архитектуры и их прямыми аналогами.

    Также поддерживаются сторонние платы и контроллеры на других архитектурах: SAM, SAMD, Cortex-M. Они добавляются в среду отдельными пакетами. Ниже перечислены примеры установки некоторых таких плат.

    Читайте также: