Чем отличается эта плата от 30-пиновой версии? Разница между ними не существенна: на 38pin дополнительно выведены линии внутренней флэш-памяти прошивки. GPIO 6-11, на которые подключена системная флэш-память, не следует задействовать в проекте.
Вы сможете реализовать на модуле ESP32 разнообразные сетевые проекты:
- поднять веб-сервер и веб-клиент для обработки управляющих запросов;
- сделать приёмник для интернет-радио и музыкального стриминга, подключив внешний динамик к выходу с ЦАП;
- разработать беспроводную метеостанцию со встроенным датчиком температуры и сенсорным управлением;
- собрать мобильного робота с дистанционным управлением по Wi-Fi или Bluetooth BLE;
- и многое другое!
Распиновка
Ключевые особенности
- Поддержка Wi-Fi 802.11 b/g/n и Bluetooth 4.2 (Classic + BLE)
- 38 пинов — больше GPIO, ADC, сенсорных входов
- Совместимость с Arduino IDE, PlatformIO, ESP-IDF
- Компактный размер, подходит для макетных плат
Настройка ESP32 в Arduino IDE
Чтобы установить ESP32 в среду Arduino IDE, выполните следующее.
1) Откройте окно настроек в среде Arduino IDE. Выберите пункт меню «Файл > Настройки» («File > Preferences»).
2) В поле «Дополнительные ссылки для Менеджера плат» (Additional Boards Manager URLs) скопируйте адрес:
|
1 |
https://dl.espressif.com/dl/package_esp32_index.json |
Затем нажмите кнопку «OK». Примечание: если у вас уже есть ссылка для плат с чипом ESP8266, то вы можете разделить ссылки запятой.
3) Откройте менеджер плат. Нажмите «Инструменты > Плата > Менеджер плат» («Tools > Boards > Boards Manager»).
4) Введите в поиске «ESP32» и нажмите кнопку «Установка» (Install) для «ESP32 by Espressif Systems».
5) Готово. Дополнение должно установиться в течение нескольких минут.
6) Теперь можно залить тестовый скетч в нашу плату. Пройдите в меню «Инструменты > Плата» («Tools > Board») и выберите свою плату (в нашем случае это DOIT ESP32 DEVKIT V1):
7) Выберите порт в меню «Порт» («Port») (если вы не видите COM-порт в среде Arduino IDE, то вам необходимо установить драйвер для адаптера CP210x USB to UART Bridge VCP).
8) Откройте следующий пример «Файл > Примеры > WiFi (ESP32) > WiFi Scan» («File > Examples > WiFi (ESP32) > WiFi Scan»).
9) Откроется новый готовый пример. Нажмите кнопку «Загрузка» («Upload») в среде Arduino IDE. Подождите несколько секунд, пока код компилируется.
10) Ошибка: «A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header«, чтобы избавиться от этой ошибки надо в процессе программирования модуля держать кнопку «BOOT» зажатой. Если всё прошло, как ожидается, то вы должны увидеть сообщение «Done uploading» (Загрузка завершена).
11) Откройте окно последовательного COM-порта (Serial Monitor) среды Arduino IDE и настройте скорость передачи на 115 200 бод.
12) Нажмите кнопку «EN» на плате с микроконтроллером ESP32, после этого вы должны увидеть сети, доступные для ESP32.
Обмен данными между смартфоном и ESP32 через Bluetooth
1) Скачайте библиотеку BluetoothSerial и поместите ее в папку libraries директории Arduino.
2) Загрузите скетч ниже (при подачи “1” встроенный светодиод будет включаться, при “0” – выключаться). Не забудьте при загрузке зажать кнопку «BOOT», а после загрузки нажать кнопку «EN».
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
#include "BluetoothSerial.h" // заголовочный файл для последовательного Bluetooth будет добавлен по умолчанию в Arduino BluetoothSerial ESP_BT; // Объект для Bluetooth int incoming; //int LED_BUILTIN = 2; void setup() { Serial.begin(9600); // Запускаем последовательный монитор со скоростью 9600 ESP_BT.begin("ESP32_LED_Control"); // Задаем имя вашего устройства Bluetooth Serial.println("Bluetooth Device is Ready to Pair"); // По готовности сообщаем, что устройство готово к сопряжению pinMode (LED_BUILTIN, OUTPUT);// задаем контакт подключения светодиода как выходной } void loop() { if (ESP_BT.available()) // Проверяем, не получили ли мы что-либо от Bluetooth модуля { incoming = ESP_BT.read(); // Читаем, что получили Serial.print("Received:"); Serial.println(incoming); if (incoming == 49) // Если значение равно единице, включаем светодиод { digitalWrite(LED_BUILTIN, HIGH); ESP_BT.println("LED turned ON"); } if (incoming == 48) // Если значение равно нулю, выключаем светодиод { digitalWrite(LED_BUILTIN, LOW); ESP_BT.println("LED turned OFF"); } } delay(20); } |
3) Осуществляем поиск устройства Bluetooth с названием ESP32_LED_Control в настройках Bluetooth смартфона.
4) Открыв любое терминальное приложение Bluetooth (например: Bluetooth Terminal), мы сможем ввести и отправить “1” или “0” для управления встроенным светодиодом.
Скачать библиотеку BluetoothSerial (ZIP)
Скачать драйвер CP2102 (ZIP)
Скачать документацию (PDF)

















