Wifi esp wroom 32 esp32

ESP32 Series of Modules

Powerful Wi-Fi+Bluetooth/Bluetooth LE modules
that target a wide variety of AIoT applications,
ranging from low-power sensor networks to the
most demanding tasks.

You are here

Features

Wi-Fi & Bluetooth Dual Mode

The integration of Wi-Fi, Bluetooth and Bluetooth LE ensures that a wide range of applications can be targeted, and that our modules are truly versatile. Using Wi-Fi ensures connectivity within a large radius, while using Bluetooth allows the user to easily detect a module (with low-energy beacons), and connect it to a smartphone.

High Integration

With in-built antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power management modules, our chips add priceless functionality and versatility to your applications with minimal PCB requirements.

Configurability and Customization

ESP32 modules can be ordered with different antenna configurations (e.g. PCB antenna, antenna connector) and flash sizes, so that they correspond to the needs of different applications. ESP32 modules also offer manufacturing customizations with pre-programmed application firmware, custom data and pre-provisioned cloud certificates.

Application-Ready

All ESP32 Series of modules have a wide operating temperature range of -40°C to 105°C, and are suitable for commercial application development with a robust 4-layer design that is fully compliant with FCC, CE-RED, SRRC, IC, KCC & TELEC standards.

Comparison of Parameters

ESP32-WROOM Series

These are ESP32-D0WD-based modules with integrated flash. These modules are well suited for Wi-Fi and Bluetooth/Bluetooth LE-based connectivity applications and provide a solid dual-core performance.

ESP32-WROVER Series

The ESP32-WROVER series is based on ESP32-D0WD SoC, having also integrated flash memory and SPIRAM. It achieves a fine dual-core performance, and is well suited for applications requiring more memory, such as AIoT and gateway applications.

ESP32-MINI Series

The ESP32-MINI series is based on ESP32-U4WDH and has integrated flash memory, thus providing a cost-effective solution for simple Wi-Fi and Bluetooth/Bluetooth LE-based connectivity applications.

Источник

ESP32 WROOM DevKit v1: распиновка, схема подключения и программирование

ESP32 DevKit — это универсальная платформа для разработки IoT-решений.

Программирование на C++

Для начала работы с платформой ESP32 DevKit на языке C++ скачайте и установите на компьютер интегрированную среду разработки Arduino IDE.

По умолчанию среда IDE настроена только на AVR-платы. Для платформы ESP32 DevKit добавьте в менеджере плат поддержку платформ на модуле ESP32.

После выполненных действий плата ESP32 DevKit готова к программированию через Arduino IDE.

Подробности о функциях и методах работы ESP32 на языке C++ читайте на ESP32 Arduino Core.

Примеры работы для Arduino

ESP32 может подключиться к Wi-Fi сети, создать собственную точку доступа, представляться сервером и клиентом, формировать GET и POST запросы. Также микроконтроллер имеет два АЦП и датчик Хола.

Читайте также:  Приточная установка ballu air master bmac 150 wi fi

Пример WebClient

GET-запрос по URL -адресу в Интернете.

// библиотека для работы с HTTP-протоколом #include // вводим имя и пароль точки доступа const char* ssid = "WIFINAME"; const char* password = "WIFIPASSWORD"; void setup() { // иницилизируем монитор порта Serial.begin(115200); // запас времени на открытие монитора порта — 5 секунд delay(5000); // подключаемся к Wi-Fi сети WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(1000); Serial.println("Connecting to Wi-Fi.."); } Serial.println("Connected to the Wi-Fi network"); } void loop() { // выполняем проверку подключения к беспроводной сети if ((WiFi.status() == WL_CONNECTED)) { // создаем объект для работы с HTTP HTTPClient http; // подключаемся к тестовому серверу с помощью HTTP http.begin("http://httpbin.org/"); // делаем GET запрос int httpCode = http.GET(); // проверяем успешность запроса if (httpCode > 0) { // выводим ответ сервера String payload = http.getString(); Serial.println(httpCode); Serial.println(payload); } else { Serial.println("Error on HTTP request"); } // освобождаем ресурсы микроконтроллера http.end(); } delay(10000); }

После подключения к Wi-Fi микроконтроллер напишет в COM порт ответ от сервера.

Пример Analog WebServer

ESP32 имеет 15 аналоговых пинов. Выведем через веб-интерфейс значения с 36, 39 и 34 пина.

// подключяем библиотеку для работы с Wi-Fi server #include // вводим имя и пароль точки доступа const char* ssid = "WIFINAME"; const char* password = "WIFIPASSWORD"; // инициализируем сервер на 80 порте WiFiServer server(80); // заводим буфер и счетчик для буфера char lineBuf[80]; int charCount = 0; void setup() { // инициализируем монитор порта Serial.begin(115200); // запас времени на открытие монитора порта — 5 секунд delay(5000); // инициализируем аналоговые пины pinMode(36, INPUT); pinMode(39, INPUT); pinMode(34, INPUT); Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); // подключаем микроконтроллер к Wi-Fi сети WiFi.begin(ssid, password); while(WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("Wi-Fi connected"); Serial.println("IP-address: "); Serial.println(WiFi.localIP()); // запускаем сервер server.begin(); } void loop() { // анализируем канал связи на наличие входящих клиентов WiFiClient client = server.available(); if (client) { Serial.println("New client"); memset(lineBuf, 0, sizeof(lineBuf)); charCount = 0; // HTTP-запрос заканчивается пустой строкой boolean currentLineIsBlank = true; while (client.connected()) { client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println("Connection: close"); client.println(); // формируем веб-страницу String webPage = ""; webPage += ""; webPage += " "; webPage += " \"viewport\" content=\"width=device-width,"; webPage += " initial-scale=1\">"; webPage += " "; webPage += " 

ESP32 - Web Server

"
; webPage += "

"; webPage += " AnalogPin 36 = "; webPage += analogRead(36); webPage += "
"
; webPage += " AnalogPin 39 = "; webPage += analogRead(39); webPage += "
"
; webPage += " AnalogPin 34 = "; webPage += analogRead(34); webPage += "
"
; webPage += "

"
; webPage += ""; client.println(webPage); break; } // даем веб-браузеру время для получения данных delay(1); // закрываем соединение client.stop(); Serial.println("client disconnected"); } }

Когда микроконтроллер подключится к Wi-Fi сети, в монитор порта будет выведен IP-адрес веб-страницы с данными. Получить к ней доступ можно из локальной сети, перейдя по указанному IP-адресу. Скопируйте IP-адрес из монитора порта и вставьте в адресную строку браузера. Если вы подключены к той же локальной сети, что и ESP32, то вы увидите веб-интерфейс.

Создадим WEB-сервер на порту 80. С помощью веб-интерфейса будем мигать светодиодами на 16 и 17 пинах.

// подключяем библиотеку для работы с Wi-Fi server #include // указываем пины, к которым подключены светодиоды #define LED_GREEN 16 #define LED_RED 17 // вводим имя и пароль точки доступа const char* ssid = "WIFINAME"; const char* password = "WIFIPASSWORD"; // инициализируем сервер на 80 порте WiFiServer server(80); // создаем буфер и счетчик для буфера char lineBuf[80]; int charCount = 0; void setup() { // запас времени на открытие монитора порта — 5 секунд delay(5000); // инициализируем контакты для светодиодов pinMode(LED_GREEN, OUTPUT); pinMode(LED_RED, OUTPUT); // инициализируем монитор порта Serial.begin(115200); // подключаемся к Wi-Fi сети Serial.println(); Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); while(WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("Wi-Fi connected"); Serial.println("IP-address: "); // пишем IP-адрес в монитор порта Serial.println(WiFi.localIP()); server.begin(); } void loop() { // анализируем канал связи на наличие входящих клиентов WiFiClient client = server.available(); if (client) { Serial.println("New client"); memset(lineBuf, 0, sizeof(lineBuf)); charCount = 0; // HTTP-запрос заканчивается пустой строкой boolean currentLineIsBlank = true; while (client.connected()) { if (client.available()) { char c = client.read(); Serial.write(c); // считываем HTTP-запрос lineBuf[charCount] = c; if (charCount  sizeof(lineBuf) - 1) { charCount++; } // на символ конца строки отправляем ответ if (c == '\n' && currentLineIsBlank) { // отправляем стандартный заголовок HTTP-ответа client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); // тип контента: text/html client.println("Connection: close"); // после отправки ответа связь будет отключена client.println(); // формируем веб-страницу String webPage = ""; webPage +=""; webPage +=" "; webPage +=" \"viewport\" content=\"width=device-width,"; webPage +=" initial-scale=1\">"; webPage +=" "; webPage +=" 

ESP32 - Web Server

"
; webPage +="

LED #1"; webPage +=" \"on1\">"; webPage +=" "; webPage +="  "; webPage +=" \"off1\">"; webPage +=" "; webPage +=" "; webPage +="

"
; webPage +="

LED #2"; webPage +=" \"on2\">"; webPage +=" "; webPage +="  "; webPage +=" \"off2\">"; webPage +=" "; webPage +=" "; webPage +="

"
; webPage +=""; client.println(webPage); break; } if (c == '\n') { // анализируем буфер на наличие запросов // если есть запрос, меняем состояние светодиода currentLineIsBlank = true; if (strstr(lineBuf, "GET /on1") > 0) { Serial.println("LED 1 ON"); digitalWrite(LED_GREEN, HIGH); } else if (strstr(lineBuf, "GET /off1") > 0) { Serial.println("LED 1 OFF"); digitalWrite(LED_GREEN, LOW); } else if (strstr(lineBuf, "GET /on2") > 0) { Serial.println("LED 2 ON"); digitalWrite(LED_RED, HIGH); } else if (strstr(lineBuf, "GET /off2") > 0) { Serial.println("LED 2 OFF"); digitalWrite(LED_RED, LOW); } // начинаем новую строку currentLineIsBlank = true; memset(lineBuf, 0, sizeof(lineBuf)); charCount = 0; } else if (c != '\r') { // в строке попался новый символ currentLineIsBlank = false; } } } // даем веб-браузеру время, чтобы получить данные delay(1); // закрываем соединение client.stop(); Serial.println("client disconnected"); } }

При переходе по IP-адресу из монитора порта, выводится веб-страница с кнопками.

Программирование на JavaScript

Для старта с платформой Wi-Fi Slot на языке JavaScript скачайте и установите интегрированную среду разработки — Espruino Web IDE.

Источник

ESP32

ESP32 is capable of functioning reliably in industrial environments, with an operating temperature ranging from –40°C to +125°C. Powered by advanced calibration circuitries, ESP32 can dynamically remove external circuit imperfections and adapt to changes in external conditions.

Engineered for mobile devices, wearable electronics and IoT applications, ESP32 achieves ultra-low power consumption with a combination of several types of proprietary software. ESP32 also includes state-of-the-art features, such as fine-grained clock gating, various power modes and dynamic power scaling.

ESP32 is highly-integrated with in-built antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power management modules. ESP32 adds priceless functionality and versatility to your applications with minimal Printed Circuit Board (PCB) requirements.

ESP32 can perform as a complete standalone system or as a slave device to a host MCU, reducing communication stack overhead on the main application processor. ESP32 can interface with other systems to provide Wi-Fi and Bluetooth functionality through its SPI / SDIO or I2C / UART interfaces.

Источник

ESP32

ESP32 is capable of functioning reliably in industrial environments, with an operating temperature ranging from –40°C to +125°C. Powered by advanced calibration circuitries, ESP32 can dynamically remove external circuit imperfections and adapt to changes in external conditions.

Engineered for mobile devices, wearable electronics and IoT applications, ESP32 achieves ultra-low power consumption with a combination of several types of proprietary software. ESP32 also includes state-of-the-art features, such as fine-grained clock gating, various power modes and dynamic power scaling.

ESP32 is highly-integrated with in-built antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power management modules. ESP32 adds priceless functionality and versatility to your applications with minimal Printed Circuit Board (PCB) requirements.

ESP32 can perform as a complete standalone system or as a slave device to a host MCU, reducing communication stack overhead on the main application processor. ESP32 can interface with other systems to provide Wi-Fi and Bluetooth functionality through its SPI / SDIO or I2C / UART interfaces.

Источник

Оцените статью
Adblock
detector