Агуулгын хүснэгт:

ESP32 -ийн танилцуулга: 10 алхам
ESP32 -ийн танилцуулга: 10 алхам

Видео: ESP32 -ийн танилцуулга: 10 алхам

Видео: ESP32 -ийн танилцуулга: 10 алхам
Видео: CYPRESS SEMICONDUCTOR Semper™ NOR Flash Memory | New Product Brief 2024, Долдугаар сарын
Anonim
Image
Image
Гол онцлог
Гол онцлог

Энэ нийтлэлд бид ESP8266 -ийн ах гэж үздэг ESP32 -ийн талаар ярих болно. Энэ микроконтроллер нь WiFi -тэй болохоор надад үнэхээр таалагддаг. ESP -ийг ашиглахаас өмнө танд WiFi хэрэгтэй бол Arduino хэрэгтэй бол Wifi адаптер худалдаж авахын тулд 200-300 доллар зарцуулах шаардлагатай болно. Сүлжээний кабелийн адаптер нь тийм ч үнэтэй биш боловч WiFi -ийн хувьд үргэлж үнэтэй байсаар ирсэн. Гэхдээ аз болоход Espressif Systems нь ESP -ийг ажиллуулж, бидний амьдралыг шийдэж байна.

USB форматтай энэ форматтай ESP32 надад таалагддаг. Энэхүү NodeMCU схемийг удирдахад хялбар, учир нь түүнд ямар ч электрон төхөөрөмж хэрэггүй. Зүгээр л кабелийг залгаарай, төхөөрөмжийг асаагаад програмчлаарай. Энэ нь яг Arduino шиг ажилладаг.

Юутай ч өнөөдөр бид ESP32 -ийн ерөнхий талууд болон Arduino IDE -ийг илүү олон төрлийн төхөөрөмжийг програмчлах талаар хэрхэн тохируулах талаар ярилцах болно. Мөн бид сүлжээг хайж, аль нь илүү хүчирхэг болохыг харуулах програм хийх болно.

Алхам 1: Гол онцлогууд

Суурилуулсан WiFi бүхий чип: стандарт 802.11 B / G / N, 2.4-ээс 2.5 ГГц хүртэл ажилладаг

Үйл ажиллагааны горим: үйлчлүүлэгч, нэвтрэх цэг, станц + хандалтын цэг

Хоёр цөмт микропроцессор Tensilica Xtensa 32 битийн LX6

80MHz -ээс 240MHz хүртэл тохируулах цаг

Ашиглалтын хүчдэл: 3.3 VDC

Энэ нь 512KB хэмжээтэй SRAM -тэй

448KB ROM -ийн онцлог шинж чанарууд

Энэ нь 32Mb (4 мегабайт) гадаад флаш санах ойтой

Нэг зүү тутамд хамгийн их гүйдэл 12 мА байна (6 мА ашиглахыг зөвлөж байна)

Энэ нь 36 GPIO -той

PWM / I2C ба SPI функцтэй GPIO

Энэ нь Bluetooth v4.2 BR / EDR болон BLE (Bluetooth бага энерги)

Алхам 2: ESP32, ESP8266 ба Arduino R3 -ийн харьцуулалт

ESP32, ESP8266 ба Arduino R3 -ийн харьцуулалт
ESP32, ESP8266 ба Arduino R3 -ийн харьцуулалт

Алхам 3: ESP32 -ийн төрөл

ESP32 -ийн төрөл
ESP32 -ийн төрөл

ESP32 нь олон ах, эгч нартай төрсөн. Өнөөдөр би зүүн талын эхнийх нь Espressif-ийг ашиглаж байна, гэхдээ Oled дэлгэцийг багтаасан хэд хэдэн брэнд, төрөл байдаг. Гэсэн хэдий ч ялгаа нь бүгд ижил чип юм: Tensilica LX6, 2 Core.

Алхам 4: WiFi NodeMCU-32S ESP-WROOM-32

WiFi NodeMCU-32S ESP-WROOM-32
WiFi NodeMCU-32S ESP-WROOM-32

Энэ бол бидний угсралтад ашигладаг ESP диаграм юм. Энэ бол маш их сэтгэл татам, хүч чадалтай чип юм. Эдгээр нь дижитал аналог, аналог дижитал эсвэл хаалгыг дижитал хэлбэрээр ажиллуулахыг хүсч байгаа эсэхээс үл хамааран таны сонгосон хэд хэдэн зүү юм.

Алхам 5: Arduino IDE -ийг тохируулах (Windows)

Arduino IDE -ийг тохируулах (Windows)
Arduino IDE -ийг тохируулах (Windows)
Arduino IDE -ийг тохируулах (Windows)
Arduino IDE -ийг тохируулах (Windows)

ESP32 -ийг эмхэтгэхийн тулд Arduino IDE -ийг хэрхэн тохируулахыг энд харуулав.

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 самбарыг сонгоод кодоо эмхэтгээрэй.

Алхам 6: WiFi скан хийх

ESP-32-ийн ойролцоо байгаа WiFi сүлжээг хэрхэн хайх, мөн тус бүрийн дохионы хүчийг хэрхэн яаж хайх жишээ энд байна. Скан хийх бүрт бид аль сүлжээ хамгийн сайн дохионы хүч чадалтай болохыг олж мэдэх болно.

Алхам 7: Код

Эхлээд "WiFi.h" номын санг оруулъя, энэ нь төхөөрөмжийнхөө сүлжээний карттай ажиллах боломжийг бидэнд олгох болно.

#"WiFi.h" оруулах

Сүлжээний SSID (нэр) болон дохионы хүчийг хадгалахад ашиглах хоёр хувьсагчийг энд оруулав.

String networkSSID = ""; int forceSignal = -9999;

Алхам 8: Тохиргоо

Setup () функц дээр бид төхөөрөмжийнхөө WiFi горимыг тодорхойлох болно. Энэ тохиолдолд боломжит сүлжээг хайх зорилго байгаа тул бид төхөөрөмжөө "станц" болгон ажиллахаар тохируулах болно.

void setup () {// Serial Monitor Serial.begin (115200) руу нэвтрэхийн тулд Serial -ийг эхлүүлэх;

// WiFi -ийн ажиллах горимыг WiFi.mode (WIFI_STA) болгон тохируулах; // WIFI_STA бол станцын горимыг харуулдаг тогтмол үзүүлэлт юм.

// WiFi холбогдсон бол хандалтын цэгээс салга.disconnect (); саатал (100);

// Serial.println ("Тохируулга хийгдсэн");}

Алхам 9: Гогцоо

Loop () функц дээр бид боломжтой сүлжээг хайж, дараа нь олсон сүлжээн дэх бүртгэлийг хэвлэх болно. Эдгээр сүлжээ бүрийн хувьд бид хамгийн өндөр дохионы хүчийг олохын тулд харьцуулалт хийх болно.

void loop () {// Serial.println ("скан эхлүүлэх"); // боломжтой сүлжээг скан хийж гүйцэтгэдэг

int n = WiFi.scanNetworks ();

Serial.println ("Скан хийсэн");

// хэрэв та ямар нэгэн сүлжээ олсон эсэхийг шалгана уу (n == 0) {Serial.println ("Сүлжээ олдсонгүй"); } өөр {networkSSID = ""; хүч дохио = -9999; Цуваа.хэвлэх (n); Serial.println ("сүлжээ олдсон / n"); for (int i = 0; i <n; ++ i) {// олсон сүлжээ бүрийг цуваа дэлгэц дээр хэвлэх Serial.print ("SSID:"); Serial.println (WiFi. SSID (i)); // сүлжээний нэр (ssid) Serial.print ("SIGNAL:"); Цуваа.хэвлэх (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 (forceSignal)) {forceSignal = WiFi. RSSI (i); networkSSID = WiFi. SSID (i); Serial.print ("ШИЛДЭГ СИГНАЛ НЭГДСЭН СҮЛЖЭЭ: ("); Serial.print (networkSSID); Serial.print (") - SIGNAL: ("); Serial.print (forceSignal); Serial.println (")"); } саатал (10); }} Serial.println ("\ n ----------------------------------------- ------------------------------------------- / n ");

// шинэ сканнердах хугацааг 5 секундын интервал (5000); }

"Хэрэв (abs (WiFi. RSSI (i))")

Дээрх мэдэгдэлд бид abs () ашигладаг бөгөөд энэ функц нь тооны абсолют утгыг (өөрөөр хэлбэл сөрөг биш) авдаг болохыг анхаарна уу. Манай тохиолдолд харьцуулалтын хамгийн бага утгыг олохын тулд үүнийг хийсэн, учир нь дохионы эрч хүчийг сөрөг тоогоор өгч, тэг рүү ойртох тусам дохио илүү сайн болно.

Алхам 10: Файлууд

Миний бүх файлыг www.fernandok.com дээрээс татаж аваарай

Зөвлөмж болгож буй: