Съдържание:
- Стъпка 1: Основни характеристики
- Стъпка 2: Сравнение между ESP32, ESP8266 и Arduino R3
- Стъпка 3: Видове ESP32
- Стъпка 4: WiFi NodeMCU-32S ESP-WROOM-32
- Стъпка 5: Конфигуриране на Arduino IDE (Windows)
- Стъпка 6: WiFi сканиране
- Стъпка 7: Код
- Стъпка 8: Настройка
- Стъпка 9: Цикъл
- Стъпка 10: Файлове
Видео: Въведение в ESP32: 10 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
В тази статия ще говорим за ESP32, който считам за по -голям брат на ESP8266. Много харесвам този микроконтролер, защото има WiFi. Само за да имате представа, преди да съществува ESP, ако имате нужда от Arduino, за да имате WiFi, ще трябва да похарчите между $ 200 и $ 300, за да закупите Wifi адаптер. Адаптерът за мрежов кабел не е толкова скъп, но за WiFi винаги е бил и все още е скъп. Но за щастие Espressif Systems стартира ESP и решава живота ни.
Харесва ми ESP32 с този формат, който има USB порт. Тази схема на NodeMCU е лесна за манипулиране, тъй като не се нуждае от никаква електроника. Просто включете кабела, включете устройството и го програмирайте. Работи точно като Arduino.
Както и да е, днес ще говорим за общите аспекти на ESP32 и как да конфигурирате Arduino IDE за програмиране на повече устройства от този тип. Също така ще направим програма, която търси в мрежите и показва коя е по -мощна.
Стъпка 1: Основни характеристики
Чип с вграден WiFi: стандартен 802.11 B / G / N, работещ в диапазона от 2.4 до 2.5GHz
Режими на работа: Клиент, точка за достъп, станция + точка за достъп
Двуядрен микропроцесор Tensilica Xtensa 32-битов LX6
Регулируем часовник от 80MHz до 240MHz
Работно напрежение: 3.3 VDC
Той има SRAM от 512KB
Разполага с 448KB ROM
Има външна флаш памет от 32Mb (4 мегабайта)
Максималният ток на щифт е 12mA (препоръчително е да се използва 6mA)
Разполага с 36 GPIO
GPIO с PWM / I2C и SPI функции
Той има Bluetooth v4.2 BR / EDR и BLE (Bluetooth с ниска енергия)
Стъпка 2: Сравнение между ESP32, ESP8266 и Arduino R3
Стъпка 3: Видове ESP32
ESP32 е роден с много братя и сестри. Днес използвам първия отляво, Espressif, но има няколко марки и видове, включително вграден дисплей Oled. Разликите обаче са един и същ чип: Tensilica LX6, 2 Core.
Стъпка 4: WiFi NodeMCU-32S ESP-WROOM-32
Това е диаграмата на ESP, която използваме в нашия монтаж. Това е чип, който има много привлекателност и мощ. Те са няколко пина, които избирате дали искат да работят като цифров аналогов, аналогов цифров или дори ако това работи вратата като цифрова.
Стъпка 5: Конфигуриране на Arduino IDE (Windows)
Ето как да конфигурирате Arduino IDE, така че да можем да компилираме за ESP32:
1. Изтеглете файловете чрез връзката:
2. Разархивирайте файла и копирайте съдържанието по следния път:
C: / Потребители / [YOUR_USER_NAME] / Документи / Arduino / хардуер / espressif / esp32
Забележка: Ако няма директория "espressif" и "esp32", просто ги създайте нормално.
3. Отворете директорията
C: / Потребители / [YOUR_USER_NAME] / Документи / Arduino / хардуер / espressif / esp32 / инструменти
Стартирайте файла "get.exe".
4. След като "get.exe" приключи, включете ESP32, изчакайте драйверите да бъдат инсталирани (или инсталирайте ръчно).
Готови, сега просто изберете платката ESP32 в "Tools >> board" и компилирайте кода си.
Стъпка 6: WiFi сканиране
Ето пример за това как да търсите налични WiFi мрежи близо до ESP-32, както и силата на сигнала на всяка от тях. При всяко сканиране ще открием и коя мрежа има най -добра сила на сигнала.
Стъпка 7: Код
Първо нека включим библиотеката „WiFi.h“, ще е необходимо да ни позволите да работим с мрежовата карта на нашето устройство.
#include "WiFi.h"
Ето две променливи, които ще се използват за съхраняване на SSID (име) на мрежата и силата на сигнала.
Низов networkSSID = ""; int strongSignal = -9999;
Стъпка 8: Настройка
Във функцията setup () ще дефинираме режима на поведение на WiFi на нашето устройство. В този случай, тъй като целта е да търсим налични мрежи, ние ще конфигурираме нашето устройство да работи като „станция“.
void setup () {// Инициализиране на Serial за влизане в Serial Monitor Serial.begin (115200);
// конфигуриране на режима на работа на WiFi като станция WiFi.mode (WIFI_STA); // WIFI_STA е константа, показваща режима на станцията
// прекъсване на връзката с точката за достъп, ако вече е свързана WiFi.disconnect (); забавяне (100);
// Serial.println ("Настройката е извършена");}
Стъпка 9: Цикъл
Във функцията loop () ще търсим наличните мрежи и след това ще отпечатаме дневника в намерените мрежи. За всяка от тези мрежи ще направим сравнението, за да намерим тази с най -висока сила на сигнала.
void loop () {// Serial.println ("начало на сканиране"); // извършва сканиране на наличните мрежи
int n = WiFi.scanNetworks ();
Serial.println ("Сканиране извършено");
// проверяваме дали сте намерили мрежа if (n == 0) {Serial.println ("Няма намерена мрежа"); } else {networkSSID = ""; сила на сигнала = -9999; Serial.print (n); Serial.println ("намерени мрежи / n"); for (int i = 0; i <n; ++ i) {// отпечатайте на сериен монитор всяка от намерените мрежи Serial.print ("SSID:"); Serial.println (WiFi. SSID (i)); // име на мрежата (ssid) Serial.print ("SIGNAL:"); Serial.print (WiFi. RSSI (i)); // сила на сигнала Serial.print ("\ t / tCHANNEL:"); Serial.print ((int) WiFi.channel (i)); Serial.print ("\ t / tMAC:"); Serial.print (WiFi. BSSIDstr (i)); Serial.println ("\ n / n"); if (abs (WiFi. RSSI (i)) <abs (strongSignal)) {strongSignal = WiFi. RSSI (i); networkSSID = WiFi. SSID (i); Serial.print ("МРЕЖА С НАЙ -ДОБРИЯ СИГНАЛ, НАМЕРЕН: ("); Serial.print (networkSSID); Serial.print (") - SIGNAL: ("); Serial.print (strongSignal); Serial.println (")"); } забавяне (10); }} Serial.println ("\ n ----------------------------------------- -------------------------------------------\н");
// интервал от 5 секунди за извършване на ново забавяне на сканиране (5000); }
"Ако (abs (WiFi. RSSI (i))"
Обърнете внимание, че в горното изявление използваме abs (), тази функция приема абсолютната стойност (т.е. не отрицателна) на числото. В нашия случай направихме това, за да намерим най -малката от стойностите в сравнението, тъй като интензитетът на сигнала се дава като отрицателно число и колкото по -близо до нула, толкова по -добър е сигналът.
Стъпка 10: Файлове
Изтеглете всичките ми файлове на: www.fernandok.com
Препоръчано:
Каска за безопасност Covid, част 1: Въведение в схемите на Tinkercad !: 20 стъпки (със снимки)
Covid Safety Helmet Част 1: Въведение в схемите на Tinkercad !: Здравей, приятелю! В тази поредица от две части, ние ще се научим как да използваме схемите на Tinkercad - забавен, мощен и образователен инструмент за научаване как работят схемите! Един от най -добрите начини да се научите е да го правите. Така че, първо ще проектираме нашия собствен проект:
Въведение в IR схемите: 8 стъпки (със снимки)
Въведение в IR схемите: IR е сложна технология, но много лесна за работа. За разлика от светодиодите или лазерите, инфрачервеният лъч не може да се види с човешкото око. В тази инструкция ще демонстрирам използването на инфрачервена връзка през 3 различни схеми
Игри !!! - Въведение: 5 стъпки
Игри !!! - Въведение: Здравейте! Ще ви науча как да създавате три различни игри на code.org. Под всеки урок за игри ще публикувам шаблон, който можете да ремиксирате и използвате, докато гледате видеоклипа ми. Надявам се да се забавлявате !! Ако искате просто да разгледате игрите ми в
Въведение в Python - Katsuhiko Matsuda & Edwin Cijo - Основи: 7 стъпки
Въведение в Python - Katsuhiko Matsuda & Edwin Cijo - Основи: Здравейте, ние сме 2 студенти в MYP 2. Искаме да ви научим основи как да кодирате Python. Той е създаден в края на 80 -те години на миналия век от Guido van Rossum в Холандия. Той е направен като наследник на езика ABC. Името му е " Python " защото когато
Въведение ESP32 Lora OLED дисплей: 8 стъпки
Въведение ESP32 Lora OLED дисплей: Това е друг видеоклип относно Въвеждането в ESP32 LoRa. Този път ще говорим конкретно за графичен дисплей (от 128x64 пиксела). Ще използваме библиотеката SSD1306 за показване на информация на този OLED дисплей и ще представим пример за