MicroPython: Программирование ESP32/ESP8266 с помощью VS Code и Pymakr

В этом руководстве вы узнаете, как программировать платы ESP32 и ESP8266 с MicroPython, используя редактор VS Code (Visual Studio Code) с расширением Pymakr.

Программирование ESP32/ESP8266 с MicroPython с помощью VS Code и Pymakr

Если вы привыкли программировать платы ESP32 и ESP8266 с помощью VS Code и PlatformIO IDE (ядро Arduino) и также хотите программировать их с MicroPython, использование расширения Pymakr может стать отличной альтернативой.

Мы экспериментировали с несколькими IDE для программирования плат ESP32 и ESP8266 с MicroPython. Все IDE имеют свои достоинства и недостатки. По нашему мнению, этот вариант работает лучше всего и с меньшим количеством ошибок по сравнению с другими IDE.

Если вы раньше не использовали VS Code, начать работу может быть немного сложно. Если вы считаете, что этот вариант слишком сложный, вы можете рассмотреть использование более простых IDE, таких как Thonny IDE и uPyCraft IDE, для программирования плат с MicroPython:

Начало работы

Для правильного выполнения данного руководства вам понадобится устройство с прошивкой MicroPython. Следуйте одному из следующих руководств, чтобы прошить MicroPython на платы ESP32 или ESP8266:

Вам необходимо установить VS Code на свой компьютер.

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

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

Скачивание VS Code для Windows

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

Установка VS Code — Лицензионное соглашение Установка VS Code — Выбор опций

Выберите следующие опции и нажмите «Далее». Нажмите кнопку «Установить».

Установка VS Code — Подтверждение установки

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

Установка VS Code — Завершение

Откройте VS Code и вас встретит вкладка «Добро пожаловать» с информацией о последней версии. Вот и всё. Visual Studio Code успешно установлен.

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

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

Перейдите на сайт VS Code и скачайте стабильную сборку для Mac OS X.

Скачивание VS Code для Mac OS X

После скачивания откройте Finder и перейдите в папку «Загрузки». Двойным щелчком откройте zip-файл.

Установка VS Code — Открытие zip-файла на Mac Установка VS Code — Файл скачан на Mac

VS Code должен открыться автоматически. Вот и всё. Visual Studio Code успешно установлен.

VS Code установлен на Mac OS X

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

Перейдите на сайт VS Code и скачайте стабильную сборку для вашей системы.

Скачивание VS Code для Linux Ubuntu Установка VS Code на Linux Ubuntu

Запустите VS Code.

Запуск VS Code на Linux Ubuntu

VS Code должен открыться автоматически.

VS Code работает на Linux Ubuntu

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

Необходимые условия

Для использования расширения Pymakr в VS Code необходимо установить Node.js на вашем компьютере. Перейдите на сайт Node.js (страница Home или Downloads) и установите Node.js для вашей операционной системы.

Установка Node.js

Установка плагина Pymakr

Нажмите на значок расширений, чтобы перейти на страницу расширений.

VS Code — Расширения

Найдите Pymakr и установите его.

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

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

Pymakr установлен — консоль и файл настроек

Это новые команды:

Команды Pymakr в VS Code
  • Pymakr Console — переключение подключения к плате (подключить/отключить плату)

  • Run — запуск текущего открытого файла на плате

  • Upload — загрузка проекта на плату

  • Download — скачивание проекта с платы

  • All commands — список всех доступных команд Pymakr

Подключение MicroPython-устройства к Pymakr

Одновременно Pymakr автоматически откроет файл pymakr.json. Вам нужно отредактировать этот файл для подключения MicroPython-устройства (например: ESP32 или ESP8266 с прошивкой MicroPython).

Pymakr — All commands

Примечание: если файл pymakr.json не открылся автоматически, перейдите в All Commands (в нижней панели) и затем выберите Pymakr > Global Settings.

Pymakr — Все команды Pymakr — Глобальные настройки

У Pymakr есть список USB-устройств, к которым он будет подключаться. Вам нужно убедиться, что ваше устройство есть в списке в файле конфигурации pymakr.json. Необходимо добавить производителя USB, который устройство использует для подключения к ПК.

Pymakr — Файл конфигурации

Чтобы узнать, какие драйверы использует ваша плата, откройте Диспетчер устройств вашего компьютера (при подключённой к компьютеру плате) и найдите подключённые USB-устройства.

Диспетчер устройств — USB-драйверы ESP32

В Диспетчере устройств вы также можете проверить, какой COM-порт используется устройством.

Теперь отредактируйте файл, добавив производителя Silicon Labs (или другого) в секцию autoconnect_comport_manufacturers. Затем сохраните файл.

"autoconnect_comport_manufacturers": [
  "Pycom",
  "Pycom Ltd.",
  "FTDI",
  "Microsoft",
  "Microchip Technology, Inc.",
  "Silicon Labs"
]

Выбор COM-порта

После сохранения файла с предыдущими настройками вам также нужно указать COM-порт, к которому подключена ваша плата. Pymakr имеет возможность автоматически найти ваш COM-порт (это может не сработать у некоторых пользователей).

Для автоматического подключения оставьте настройку address пустой и установите auto_connect в true:

"address": "",
"auto_connect": true,

В нашем случае COM-порт был обнаружен автоматически (рядом с кнопкой Pymakr Console появится галочка).

Если ваша плата не подключается автоматически, вам нужно изменить раздел address, указав COM-порт вашей платы.

Чтобы узнать COM-порт платы, нажмите All Commands и выберите Pymakr > Extra > List Serial Ports.

Pymakr — Список последовательных портов

Для использования предустановленного COM-порта вам также нужно установить параметр auto_connect в false:

"address": "COM3",
"auto_connect": false,
Pymakr — Настройки подключения и выбор COM-порта

Сохраните файл конфигурации pymakr.json (CTRL+S). После сохранения файла Pymakr автоматически обнаружит вашу плату (рядом с кнопкой Pymakr Console появится галочка). Если этого не произойдёт, переключите кнопку Pymakr Console, чтобы попробовать подключиться вручную.

Плата подключена к Pymakr в VS Code

Введите help() в окне терминала после приглашения (>>>) и убедитесь, что плата отвечает.

Pymakr — Команда help() на ESP32

Вот и всё! Pymakr успешно установлен в VS Code, и вы успешно подключили MicroPython-устройство.

Создание MicroPython-проекта в VS Code + Pymakr для ESP32/ESP8266

Следуйте этому разделу, чтобы научиться создавать MicroPython-проект в VS Code с помощью Pymakr для программирования плат ESP32 и ESP8266. В качестве примера мы загрузим код для мигания встроенного светодиода (GPIO 2).

Сначала подключите плату ESP32 или ESP8266 с установленной прошивкой MicroPython к компьютеру. Создайте папку для вашего проекта. Например: blink.

Откройте VS Code. Pymakr автоматически попытается подключиться к вашей плате. Если этого не произойдёт, перейдите в меню расширений и откройте расширение Pymakr.

Затем перейдите в File > Open Folder и выберите только что созданную папку. Каждый MicroPython-проект должен содержать два файла: main.py и boot.py.

MicroPython-проект — файлы boot.py и main.py
  • boot.py — запускается при старте устройства и настраивает различные параметры конфигурации;

  • main.py — основной скрипт, содержащий ваш код. Он выполняется сразу после boot.py.

В этом разделе мы загрузим простой код, который мигает встроенным светодиодом. По этой причине вам не нужно копировать ничего в файл boot.py.

Скопируйте следующий код в файл main.py. Он мигает встроенным светодиодом каждые полсекунды.

# Полная информация о проекте: https://RandomNerdTutorials.com/micropython-programming-with-esp32-and-esp8266/

from machine import Pin
from time import sleep

led = Pin(2, Pin.OUT)

while True:
  led.value(not led.value())
  sleep(0.5)
Код мигания светодиода в Pymakr VS Code

Сохраните файл (CTRL+S). Затем нажмите кнопку Upload. Код будет загружен на плату и автоматически перезапустит её для начала выполнения кода.

Pymakr — Команда Upload

Встроенный светодиод ESP32 или ESP8266 должен мигать.

Встроенный светодиод ESP32 включён

Важно: команда Run запускает код без загрузки кода на плату. Это означает, что код будет выполняться только пока плата подключена к компьютеру. Чтобы загрузить код на плату, следует использовать опцию Upload.

Чтобы внести дальнейшие изменения (загрузить новый код), нажмите CTRL+C для остановки выполняющегося кода. Вы не сможете загрузить новый код, если ESP выполняет другой код.

Вы также не сможете выполнить никакие другие команды, пока плата выполняет код. Если приглашение (>>>) не отображается, это означает, что плата выполняет код. Нажмите CTRL+C для остановки выполнения кода, и приглашение (>>>) появится.

Отключение/скрытие расширения Pymakr

Когда вы не используете Pymakr, может быть полезно отключить/скрыть команды Pymakr в нижней панели. Это особенно полезно, если вы программируете платы ESP с помощью расширения PlatformIO. Одновременное включение обоих расширений может вызвать проблемы с загрузкой кода и подключением к плате.

Чтобы скрыть команды Pymakr, перейдите в расширения и найдите расширение Pymakr среди установленных расширений. Затем нажмите Disable.

Отключение расширения Pymakr в VS Code

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

Заключение

В этом руководстве вы узнали, как использовать VS Code с расширением Pymakr для программирования ESP32 и ESP8266 с помощью MicroPython. Это отличный вариант, особенно для тех, кто уже привык программировать платы ESP с помощью VS Code.

Мы надеемся, что это руководство было для вас полезным. Вот другие связанные руководства, которые могут вас заинтересовать: