VS Code и pioarduino IDE: Программирование ESP32 (Windows, Mac OS X, Linux)

Узнайте, как программировать платы ESP32 с помощью VS Code (Microsoft Visual Studio Code) и расширения pioarduino IDE. Расширение pioarduino IDE поддерживает последнее ядро Arduino для ESP32 (версия 3). Мы рассмотрим, как установить программное обеспечение на операционные системы Windows, Mac OS X или Linux Ubuntu.

Руководство по началу работы VS Code и pioarduino IDE Программирование ESP32 Windows, Mac OS X Linux

Обновлено 2 июля 2025 г.

Расширение PlatformIO, использовавшееся в более ранних руководствах, теперь устарело. Для программирования ESP32 в VS Code с последней версией ядра мы рекомендуем использовать расширение pioarduino.

Расширения PlatformIO IDE и pioarduino IDE

Расширение pioarduino — это форк расширения PlatformIO, поддерживаемый сообществом, который добавляет поддержку последних обновлений ядра Arduino для ESP32.

В более ранних руководствах мы использовали расширение PlatformIO. Однако оно не поддерживает последнее ядро ESP32 Arduino Core (v3). Чтобы решить эту проблему, сообщество создало pioarduino — форк, поддерживающий новейшее ядро. Теперь мы используем pioarduino IDE — если вы знакомы с PlatformIO, он работает точно так же.

Как программировать ESP32 с помощью VS Code и последнего ядра Arduino (версия 3)?

Если вы уже знакомы с программированием ESP32 с помощью VS Code, вы можете прочитать этот краткий ответ; в противном случае следуйте полному руководству далее.

Краткий ответ:

1) Установите расширение pioarduino IDE в VS Code.

2) Добавьте следующую строку в файл platformio.ini:

platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip

Эта строка указывает пользовательскую версию платформы Espressif 32, поддерживаемую pioarduino IDE, которая поддерживает последнее ядро ESP32 Arduino. В отличие от стандартной платформы PlatformIO Espressif 32 (которую вы обычно определяете как platform = espressif32), этот URL обеспечивает совместимость с версией 3 ядра ESP32.

Установка VS Code

Следуйте инструкциям по установке VS Code для вашей операционной системы:

A) Установка VS Code на Windows (Visual Studio Code)

Перейдите на code.visualstudio.com и скачайте стабильную сборку для вашей операционной системы (Windows).

Скачать VS Code для Windows

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

Мастер установки Microsoft Visual Studio Code VS Code

Выберите следующие параметры и нажмите Next.

Мастер установки Microsoft Visual Studio Code VS Code шаг 2

Нажмите кнопку Install.

Мастер установки Microsoft Visual Studio Code VS Code шаг 3

Наконец, нажмите Finish для завершения установки.

Мастер установки Microsoft Visual Studio Code VS Code финальный шаг

Откройте VS Code, и вас встретит вкладка Welcome с примечаниями к выпуску новейшей версии.

Экран приветствия VS Code

Готово. Visual Studio Code успешно установлен.

B) Установка VS Code на Mac OS X (Visual Studio Code)

Перейдите на code.visualstudio.com и скачайте стабильную сборку для вашей операционной системы (Mac OS X).

Страница загрузки Microsoft Visual Studio Code VS Code для Mac OS X

После скачивания файла приложения Visual Studio Code вам будет показано следующее сообщение. Нажмите кнопку «Open».

Скачивание файла приложения Microsoft Visual Studio Code VS Code для Mac OS X

Или откройте папку Downloads и запустите Visual Studio Code.

Скачанный файл приложения Microsoft Visual Studio Code VS Code для Mac OS X

После этого вас встретит вкладка Welcome с примечаниями к выпуску новейшей версии.

Экран приветствия мастера установки Microsoft Visual Studio Code VS Code на Mac OS X

Готово. Visual Studio Code успешно установлен.

C) Установка VS Code на Linux Ubuntu (Visual Studio Code)

Перейдите на code.visualstudio.com и скачайте стабильную сборку для вашей операционной системы (Linux Ubuntu).

Страница загрузки Microsoft Visual Studio Code VS Code для Linux Ubuntu

Сохраните файл установки:

Сохранение файла установки Microsoft Visual Studio Code VS Code для Linux Ubuntu

Чтобы установить его, откройте окно терминала, перейдите в папку Downloads и выполните следующую команду для установки VS Code.

$ cd Downloads
~/Downloads $ sudo apt install ./code_1.49.1-1600299189_amd64.deb

Когда установка завершится, VS Code должен быть доступен в меню приложений.

Запуск приложения Microsoft Visual Studio Code VS Code в Linux Ubuntu

Откройте VS Code, и вас встретит вкладка Welcome с примечаниями к выпуску новейшей версии.

Экран приветствия мастера установки Microsoft Visual Studio Code VS Code на Linux Ubuntu

Готово. Visual Studio Code успешно установлен.

Установка Python

Для программирования ESP32 с pioarduino вам нужен Python 3.5 или более поздняя версия, установленная на вашем компьютере. Следуйте инструкциям в соответствии с вашей операционной системой:

A) Установка Python на Windows

Перейдите на python.org/downloads и скачайте Python 3.13.3 или более позднюю версию.

Скачать Python для Windows

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

Важно: убедитесь, что вы отметили опцию Add Python to PATH. Затем вы можете нажать кнопку Install Now. Вам также может потребоваться отметить «Use admin privileges when installing py.exe».

Добавление Python в PATH - установка

Если установка прошла успешно, вы получите следующее сообщение.

Успешная установка Python

Наконец, нажмите кнопку Close.

B) Установка Python на Mac OS X

Откройте окно терминала. Вы можете открыть его через Spotlight Search. Чтобы запустить Spotlight, нажмите на маленький значок лупы в строке меню (или нажмите Cmd + Space).

MacOS spotlight

Затем введите «terminal» и нажмите на значок Terminal, чтобы запустить его.

Запуск терминала Mac OS

Для установки Python мы будем использовать Homebrew. Если у вас нет доступной команды brew, введите следующую команду в окне терминала:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

Вот как это выглядит в окне терминала:

Установка Homebrew в терминале Mac OS

Затем выполните команду brew для установки Python 3.13:

brew install python3

Вот как это выглядит в окне терминала:

Установка Python 3 с помощью команды brew в Microsoft Visual Studio Code VS Code

Теперь вы можете перейти к разделу установки расширения pioarduino.

C) Установка Python на Linux Ubuntu

Для программирования плат ESP32 с pioarduino IDE вам нужен Python 3.5 или более поздняя версия, установленная на вашем компьютере.

Откройте окно терминала и проверьте, что у вас уже установлен Python 3. Выполните следующую команду:

python3 --version

Она должна вернуть текущую установленную версию:

python 3.13.3

Если у вас не установлен Python, выполните следующую команду для его установки:

sudo apt install python3

Независимо от того, установлен ли у вас Python или нет, вам нужно выполнить следующую команду для установки утилит Python.

sudo apt install python3-distutils
Установка python3-distutils в Linux Ubuntu для PlatformIO IDE

Установка расширения pioarduino IDE

На этом этапе мы можем установить расширение pioarduino IDE в VS Code. Откройте VS Code и нажмите на значок Extensions или нажмите Ctrl + Shift + X, чтобы открыть вкладку Extensions.

Найдите «pioarduino». Выберите первый вариант и нажмите кнопку Install. Установка может занять некоторое время.

Установка расширения pioarduino в VS Code

Во время установки расширения pioarduino вам будет показан похожий экран, вам нужно нажать кнопку «Trust Publisher & Install».

Расширение VS Code pioarduino IDE доверие и установка

Наконец, вам может быть предложено установить pioarduino Core CLI, если эта опция появится — вам нужно установить его.

Установка pioarduino Core CLI в VS Code

После этого значок pioarduino должен появиться на левой боковой панели, а также значок Home, который перенаправляет вас на домашнюю страницу pioarduino. Если вы работали с PlatformIO раньше, вы увидите, что pioarduino выглядит так же.

Расширение VS Code pioarduino IDE - главное меню

Готово, расширение pioarduino IDE было добавлено в VS Code.

Если вы не видите значок pioarduino и значок Home внизу, вам может потребоваться перезапустить VS Code, чтобы изменения вступили в силу.

В любом случае мы рекомендуем перезапустить VS Code перед продолжением.

Краткий обзор интерфейса Visual Studio Code

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

Обзор интерфейса VS Code
  • Проводник файлов

  • Поиск по файлам

  • Управление исходным кодом (с использованием gist)

  • Запуск и отладка кода

  • Управление расширениями

Чтобы увидеть все доступные команды, нажмите Ctrl+Shift+P или перейдите в View > Command Palette. Если вы не знаете, где находится команда или её сочетание клавиш, просто найдите её в Command Palette.

Обзор pioarduino IDE

Чтобы дать вам представление о том, как pioarduino работает в VS Code, мы покажем, как создать, сохранить и загрузить скетч «Blinking LED» на вашу плату ESP32.

Создание нового проекта

В VS Code нажмите на значок Home pioarduino. Нажмите + New Project, чтобы начать новый проект.

Расширение VS Code pioarduino IDE - создание нового проекта

Дайте вашему проекту имя (например, Blink_LED) и выберите используемую плату. В нашем случае мы используем DOIT ESP32 DEVKIT V1. Framework должен быть «Arduino» для использования ядра Arduino.

Вы можете выбрать расположение по умолчанию для сохранения проекта или пользовательское расположение. Расположение по умолчанию находится по пути: Documents > PlatformIO > Projects. Для этого теста вы можете использовать расположение по умолчанию. Наконец, нажмите кнопку «Finish».

Мастер создания проекта pioarduino

Для этого примера мы будем использовать плату DOIT ESP32 DEVKIT. Если вы впервые используете VS Code с ESP32, VS Code загрузит дополнительные данные о выбранной плате после нажатия кнопки Finish.

Проект Blink_LED должен быть доступен из вкладки Explorer.

Расширение VS Code pioarduino IDE - новый проект создан

VS Code и pioarduino имеют структуру папок, которая отличается от стандартного проекта .ino. Если вы нажмёте на вкладку Explorer, вы увидите все файлы, которые были созданы в папке вашего проекта. Может показаться, что файлов много. Но не волнуйтесь. Обычно вам нужно работать только с одним или двумя из них.

Задачи pioarduino

После создания проекта pioarduino (или открытия существующего проекта) команды pioarduino появятся в синей панели внизу.

Команды pioarduino

Вот значение каждого значка слева направо:

  • pioarduino Home

  • Build/Compile (Сборка/Компиляция)

  • Upload (Загрузка)

  • Clean (Очистка)

  • Test (Тестирование)

  • Serial Monitor (Монитор порта)

  • New Terminal (Новый терминал)

Панель задач отображается только при работе с проектом pioarduino. Если проект pioarduino не открыт, синяя панель не отображается по умолчанию в VS Code.

Если вы наведёте курсор мыши на значки, появится подсказка о функции каждого значка. Кроме того, вы также можете нажать на значок pioarduino, чтобы увидеть все задачи проекта.

VS Code pioarduino IDE - задачи проекта

Если задачи не отображаются в вашей IDE при нажатии на значок, вам может потребоваться нажать на значок с тремя точками вверху и включить Project tasks, как показано ниже.

VS Code pioarduino IDE - включение задач проекта

Файл platformio.ini

Файл platformio.ini — это файл конфигурации pioarduino для вашего проекта. Он показывает платформу, плату и фреймворк для вашего проекта. Вы также можете добавить другие конфигурации, такие как подключаемые библиотеки, параметры загрузки, изменение скорости Serial Monitor и другие настройки.

Расширение VS Code pioarduino IDE - файл platformio.ini по умолчанию
  • platform: соответствует SoC (системе на кристалле), используемой платой. Чтобы использовать последнюю версию ядра Arduino для ESP32, просто замените стандартное espressif32 следующим:

platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip
  • board: плата разработки, которую вы используете.

  • framework: программная среда, которая будет запускать код проекта.

Если вы хотите использовать скорость 115200 бод в Serial Monitor, вам нужно добавить следующую строку в файл platformio.ini.

monitor_speed = 115200

Таким образом, это будет выглядеть так:

[env:esp32doit-devkit-v1]
platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip
board = esp32doit-devkit-v1
framework = arduino
monitor_speed = 115200

После этого убедитесь, что вы сохранили изменения, внесённые в файл, нажав Ctrl + S.

Расширение VS Code pioarduino IDE - отредактированный файл platformio.ini

В этом файле вы также можете добавить библиотеки, которые хотите включить в свой проект. pioarduino автоматически загрузит библиотеку и все её зависимости. Мы рассмотрим эту тему позже.

Папка src

Папка src — это ваша рабочая папка. Внутри папки src находится файл main.cpp. Именно здесь вы пишете свой код. Нажмите на этот файл. Должна открыться структура Arduino-программы с функциями setup() и loop().

VS Code pioarduino IDE - файл main.cpp по умолчанию

В pioarduino все ваши скетчи Arduino должны начинаться с #include <Arduino.h>.

Загрузка кода с помощью pioarduino

В этом разделе вы узнаете, как загружать код с помощью pioarduino. В качестве примера мы предоставляем код, который мигает встроенным светодиодом ESP32 каждую секунду.

Скопируйте следующий код в ваш файл main.cpp.

/*********
  Rui Santos & Sara Santos - Random Nerd Tutorials
  Complete project details at https://RandomNerdTutorials.com/vs-code-pioarduino-ide-esp32/
*********/

#include <Arduino.h>

#define LED 2

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  pinMode(LED, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  digitalWrite(LED, HIGH);
  Serial.println("LED is on");
  delay(1000);
  digitalWrite(LED, LOW);
  Serial.println("LED is off");
  delay(1000);
}

Просмотреть исходный код

Нажмите Ctrl + S или перейдите в File > Save, чтобы сохранить файл.

Убедитесь, что вы заменили platform в вашем файле platformio.ini следующим:

platform = https://github.com/pioarduino/platform-espressif32/releases/download/stable/platform-espressif32.zip

И что вы установили скорость Serial Monitor на 115200:

monitor_speed = 115200

Сохраните файл platformio.ini.

Теперь вы можете нажать значок Upload, чтобы скомпилировать и загрузить код. Кроме того, вы можете перейти в меню Project Tasks и выбрать Upload.

Загрузка кода в ESP32 pioarduino VS Code

Важно: убедитесь, что вы закрыли все программы, которые могут использовать последовательный порт ESP. То есть убедитесь, что у вас нет открытого окна Arduino IDE одновременно.

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

Успешная загрузка pioarduino

После загрузки кода встроенный светодиод ESP32 должен мигать каждую секунду.

Встроенный светодиод ESP32 мигает

Теперь нажмите на значок Serial Monitor, и вы должны увидеть текущее состояние светодиода.

Тестирование pioarduino ESP32 Serial Monitor

Примечание: если вы не видите окно Terminal, перейдите в Terminal > New Terminal.

Определение COM-порта

pioarduino автоматически определит порт, к которому подключена ваша плата. Чтобы проверить подключённые устройства, перейдите на Home pioarduino и нажмите значок Devices.

VS Code - Определение COM-порта устройств

Установка драйверов

Если вы не видите COM-порт вашего ESP, это означает, что у вас не установлены драйверы. Внимательно посмотрите на чип рядом с регулятором напряжения на плате и проверьте его название. Плата ESP32 DEVKIT V1 DOIT использует чип CP2102. Кроме того, многие платы ESP32 также используют драйверы CH340.

После их установки перезапустите VS Code, и вы должны увидеть COM-порт в меню Devices.

Если у вас возникли проблемы с установкой драйверов CP210x, вы можете ознакомиться со следующими руководствами:

Устранение неполадок

Если вы получаете следующую ошибку при загрузке кода: «Failed to connect to ESP32: Timed out waiting for packet header», это обычно означает, что ваша плата не находится в режиме прошивки при загрузке кода.

Когда это происходит, вам нужно нажать встроенную кнопку BOOT на ESP32, когда вы начинаете видеть множество точек в окне отладки.

Для получения дополнительной информации по этой проблеме вы можете следовать этому руководству:

Изменение скорости Serial Monitor – pioarduino

Скорость по умолчанию, используемая pioarduino, составляет 9600 бод. Однако можно установить другое значение. В File Explorer, в папке вашего проекта, откройте файл platformio.ini и добавьте следующую строку:

monitor_speed = YOUR_DESIRED_BAUD_RATE

Например:

monitor_speed = 115200

После этого сохраните файл platformio.ini.

Установка библиотек в pioarduino

pioarduino имеет мощный встроенный менеджер библиотек. Он позволяет вам устанавливать пользовательские зависимости для каждого проекта в файле конфигурации platformio.ini с помощью lib_deps. Это указывает PlatformIO автоматически загрузить библиотеку и все её зависимости при сохранении файла конфигурации или компиляции проекта.

Следуйте следующей процедуре, если вам нужно установить библиотеки в pioarduino.

Нажмите значок Home, чтобы перейти на Home pioarduino. Выберите значок Libraries в левом меню. Найдите библиотеку, которую хотите установить — например, Adafruit_BME280.

Установка библиотек pioarduino в VS Code

Выберите библиотеку, которую хотите включить в свой проект. Затем нажмите Add to Project.

Добавление библиотеки в проект VS Code

Выберите проект, в котором вы хотите использовать библиотеку.

Добавление зависимости проекта pioarduino VS Code

Это добавит идентификатор библиотеки с помощью директивы lib_deps в файл platformio.ini. Если вы откроете файл platformio.ini вашего проекта, он должен выглядеть как на следующем изображении.

Библиотека добавлена в файл platformio.ini в VS Code pioarduino

Кроме того, в окне библиотеки вы можете выбрать вкладку Installation и прокрутить до идентификатора библиотеки. Вы можете выбрать любой из этих идентификаторов в зависимости от нужных параметров. Идентификаторы библиотеки выделены красным на следующем изображении.

Установка библиотеки BME280 в Pioarduino VS Code с идентификатором библиотеки

Затем перейдите к файлу platformio.ini вашего проекта и вставьте идентификатор библиотеки в этот файл, вот так:

lib_deps = adafruit/Adafruit BME280 Library@^2.2.4

Если вам нужно несколько библиотек, вы можете разделить их имена запятой или поместить на отдельные строки. Например:

lib_deps =
  arduino-libraries/Arduino_JSON @ 0.1.0
  adafruit/Adafruit BME280 Library @ ^2.1.0
  adafruit/Adafruit Unified Sensor @ ^1.1.4

PlatformIO имеет мощный встроенный менеджер библиотек, который позволяет указывать пользовательские зависимости для каждого проекта в файле конфигурации проекта platformio.ini с помощью lib_deps. Это указывает PlatformIO автоматически загрузить библиотеку и все её зависимости при сохранении файла конфигурации или компиляции проекта.

Открытие папки проекта

Чтобы открыть существующую папку проекта в pioarduino, откройте VS Code. Затем перейдите на Home pioarduino и нажмите Open Project. Перейдите к файлам и выберите папку вашего проекта.

Расширение VS Code pioarduino IDE - открытие проекта

pioarduino откроет все файлы в папке проекта.

Цветовые темы VS Code

VS Code позволяет выбирать между различными цветовыми темами. Перейдите к значку Manage и выберите Color Theme.

Выбор различных цветовых тем VS Code

Затем вы можете выбрать из нескольких светлых и тёмных тем.

Список сочетаний клавиш

Полный список сочетаний клавиш VS Code для Windows, Mac OS X или Linux вы можете найти по следующей ссылке:

Подведение итогов

В этом руководстве вы узнали, как программировать ESP32 с помощью VS Code и расширения pioarduino.

Расширение pioarduino — это форк расширения PlatformIO, поддерживаемый сообществом, который добавляет поддержку последних обновлений ядра Arduino для ESP32. Оно поддерживает последнюю версию ESP32 Core (v3) — в то время как расширение PlatformIO, использовавшееся в предыдущих проектах и руководствах, в настоящее время устарело.

Надеемся, что это руководство было для вас полезным.

Если вам нравится ESP32, ознакомьтесь со следующими ресурсами:

Источник: Random Nerd Tutorials — :doc:`VS Code and pioarduino IDE: Programming the ESP32 <../vs-code-pioarduino-ide-esp32/index>`