Что понадобится
- Плата ESP32 DevKit и USB-кабель.
- Сеть Wi-Fi на 2,4 ГГц: сети 5 ГГц ESP32 не видит.
- В Arduino IDE — пакет плат esp32 от Espressif (менеджер плат).
Как подключить
Ничего подключать не нужно: Wi-Fi встроен в сам модуль ESP32. В BloX выберите в списке плат ESP32 DevKit, а в блоке «WiFi подключиться к» впишите имя своей сети и пароль.
Программа из блоков
Соберите в BloX такую программу — или нажмите «Открыть в BloX», и она появится в редакторе готовой.
Код C++, который BloX собирает из этих блоков, — его можно скопировать в Arduino IDE:
#include <WiFi.h>
void setup() {
Serial.begin(115200);
WiFi.begin("MyWiFi", "password123");
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println();
Serial.println(WiFi.localIP());
}
void loop() {
if ((WiFi.status() == WL_CONNECTED)) {
Serial.println(String("Wi-Fi на связи"));
} else {
Serial.println(String("Связь потеряна"));
}
delay(2000);
}
Как это работает
Блок «WiFi подключиться к» добавляет в «Настройку» подключение и ожидание: пока сеть не ответила, в монитор порта печатаются точки, а потом — IP-адрес, который плате выдал роутер. Поэтому перед ним стоит «Serial начать скорость 115200»: без него печатать некуда.
В цикле блок «WiFi подключён?» каждые две секунды проверяет связь. Отключите роутер — появится «Связь потеряна». Монитор порта открывайте на скорости 115200.
Как загрузить в ESP32
Для ESP32 в Arduino IDE сначала ставят пакет плат: «Инструменты» → «Плата» → «Менеджер плат», поиск «esp32», пакет от Espressif. Затем код из BloX («Код C++») вставляют в скетч, выбирают плату ESP32 Dev Module и порт и нажимают «Загрузить». Если загрузка зависает на «Connecting…», зажмите на плате кнопку BOOT.
В симуляторе Wi-Fi тоже работает: нажмите «Проверить в симуляторе» и поставьте на схему «Точку доступа Wi-Fi» с тем же именем сети и паролем, что в блоке. Отодвиньте точку подальше от платы — сигнал ослабнет, и связь пропадёт.
Попробуйте сами
- Выведите в цикле IP-адрес блоком «WiFi IP адрес».
- Подключите светодиод: горит — связь есть, мигает — нет.
- Загляните в раздел WiFi / IoT: там блоки веб-сервера — с ними плата отвечает браузеру.