Mundarija:
- 1 -qadam: Asosiy xususiyatlar
- 2 -qadam: ESP32, ESP8266 va Arduino R3 o'rtasidagi taqqoslash
- 3 -qadam: ESP32 turlari
- 4-qadam: WiFi NodeMCU-32S ESP-WROOM-32
- 5 -qadam: Arduino IDE -ni sozlash (Windows)
- 6 -qadam: Wi -Fi orqali skanerlash
- 7 -qadam: kod
- 8 -qadam: sozlash
- 9 -qadam: halqa
- 10 -qadam: fayllar
Video: ESP32 -ga kirish: 10 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:27
Ushbu maqolada biz ESP8266 ning akasi deb hisoblaydigan ESP32 haqida gapiramiz. Menga bu mikrokontroller juda yoqadi, chunki u Wi -Fi tarmog'iga ega. Agar sizda ESP mavjud bo'lishidan oldin, agar sizda WiFi bo'lishi uchun Arduino kerak bo'lsa, siz Wi -Fi adapterini sotib olish uchun 200-300 dollar sarflashingiz kerak bo'ladi. Tarmoq kabelining adapteri unchalik qimmat emas, lekin WiFi uchun u har doim bo'lgan va hozir ham qimmat. Yaxshiyamki, Espressif Systems ESPni ishga tushirdi va hayotimizni hal qilmoqda.
Menga USB porti bo'lgan ushbu formatdagi ESP32 yoqadi. Ushbu NodeMCU sxemasini boshqarish oson, chunki u hech qanday elektronikaga muhtoj emas. Kabelni ulang, qurilmani quvvatlantiring va dasturlang. Bu xuddi Arduino kabi ishlaydi.
Yaxshiyamki, bugun biz ESP32 -ning umumiy jihatlari va Arduino IDE -ni boshqa turdagi qurilmalarni dasturlash uchun qanday sozlash haqida gaplashamiz. Shuningdek, biz tarmoqlarni qidiradigan va qaysi biri kuchliroq ekanligini ko'rsatadigan dastur tuzamiz.
1 -qadam: Asosiy xususiyatlar
O'rnatilgan WiFi-ga ega chip: standart 802.11 B / G / N, 2,4 dan 2,5 gigagertsgacha ishlaydi
Ish usullari: mijoz, kirish nuqtasi, stansiya + kirish nuqtasi
Ikki yadroli mikroprosessor Tensilica Xtensa 32 bitli LX6
Sozlanishi 80 MGts dan 240 MGts gacha
Ishlash kuchlanishi: 3.3 VDC
SRAM hajmi 512 KB
448KB hajmli ROM xususiyatlari
Tashqi flesh xotirasi 32 Mb (4 megabayt)
Har bir pin uchun maksimal oqim 12mA (6mA dan foydalanish tavsiya etiladi)
Unda 36 ta GPIO mavjud
PWM / I2C va SPI funktsiyalariga ega GPIO
Unda Bluetooth v4.2 BR / EDR va BLE (Bluetooth past energiya) mavjud.
2 -qadam: ESP32, ESP8266 va Arduino R3 o'rtasidagi taqqoslash
3 -qadam: ESP32 turlari
ESP32 ko'p aka -uka bilan tug'ilgan. Bugun men chapdan birinchi Espressif-dan foydalanmoqdaman, lekin bir nechta brendlar va turlar mavjud, shu jumladan o'rnatilgan Oled displeyi. Biroq, farqlar bir xil chip: Tensilica LX6, 2 Core.
4-qadam: WiFi NodeMCU-32S ESP-WROOM-32
Bu biz yig'ishda foydalanadigan ESP diagrammasi. Bu jozibadorlik va kuchga ega bo'lgan chip. Bu raqamli analog, analog raqamli yoki hatto eshik raqamli ishlayotgan bo'lsa ham, siz tanlagan bir nechta pinlar.
5 -qadam: Arduino IDE -ni sozlash (Windows)
Arduino IDE -ni ESP32 uchun kompilyatsiya qilish uchun qanday sozlash kerak:
1. Fayllarni havola orqali yuklab oling:
2. Faylni oching va tarkibini quyidagi yo'lga ko'chiring:
C: / Foydalanuvchilar / [YOUR_USER_NAME] / Hujjatlar / Arduino / apparat / espressif / esp32
Eslatma: "espressif" va "esp32" kataloglari bo'lmasa, ularni odatdagidek yarating.
3. Katalogni oching
C: / Foydalanuvchilar / [YOUR_USER_NAME] / Hujjatlar / Arduino / apparat / espressif / esp32 / vositalari
"Get.exe" faylini ishga tushiring.
4. "get.exe" tugagandan so'ng, ESP32 -ni ulang, drayverlarning o'rnatilishini kuting (yoki qo'lda o'rnatish).
Tayyor, endi "asboblar >> taxtasida" ESP32 kartasini tanlang va kodingizni kompilyatsiya qiling.
6 -qadam: Wi -Fi orqali skanerlash
Mana, ESP-32 yaqinidagi mavjud Wi-Fi tarmoqlarini, shuningdek ularning har birining signal kuchini izlashga misol. Har bir skanerlashda biz qaysi tarmoqning signal kuchi yaxshiroq ekanligini bilib olamiz.
7 -qadam: kod
Birinchidan, "WiFi.h" kutubxonasini o'z ichiga olaylik, bu bizga qurilmamizning tarmoq kartasi bilan ishlashga ruxsat berish kerak bo'ladi.
#"WiFi.h" ni qo'shing
Bu erda tarmoqning SSID (nomi) va signal kuchini saqlash uchun ishlatiladigan ikkita o'zgaruvchi.
String networkSSID = ""; int forceSignal = -9999;
8 -qadam: sozlash
O'rnatish () funktsiyasida biz qurilmamizning Wi -Fi rejimini aniqlaymiz. Bunday holda, maqsad mavjud tarmoqlarni qidirish bo'lgani uchun, biz qurilmamizni "stansiya" sifatida ishlashini sozlaymiz.
void setup () {// Serial Monitor Serial.begin (115200) tizimiga kirish uchun Serialni ishga tushiring;
// WiFi rejimini WiFi.mode (WIFI_STA) stantsiyasi sifatida sozlash; // WIFI_STA - bu stantsiya rejimini ko'rsatuvchi doimiy
// WiFi ulangan bo'lsa, kirish nuqtasidan uzing.disconnect (); kechikish (100);
// Serial.println ("O'rnatish bajarildi");}
9 -qadam: halqa
Loop () funktsiyasida biz mavjud tarmoqlarni qidiramiz va keyin jurnalni topilgan tarmoqlarda chop etamiz. Ushbu tarmoqlarning har biri uchun biz eng yuqori signal kuchiga ega bo'lgan tarmoqni topish uchun taqqoslashni amalga oshiramiz.
void loop () {// Serial.println ("skanerlashni boshlash"); // mavjud tarmoqlarni skanerlashni amalga oshiradi
int n = WiFi.scanNetworks ();
Serial.println ("Tekshirish bajarildi");
// agar biron -bir tarmoq topilganligini tekshiring, agar (n == 0) {Serial.println ("Tarmoq topilmadi"); } boshqa {networkSSID = ""; kuchSignal = -9999; Serial.print (n); Serial.println ("tarmoqlar / n topildi"); for (int i = 0; i <n; ++ i) {// topilgan har bir tarmoqni ketma -ket monitorda chop etish Serial.print ("SSID:"); Serial.println (WiFi. SSID (i)); // tarmoq nomi (ssid) Serial.print ("SIGNAL:"); Serial.print (WiFi. RSSI (i)); // signal kuchi Serial.print ("\ t / tCHANNEL:"); Serial.print ((int) WiFi.kanali (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); tarmoqSSID = WiFi. SSID (i); Serial.print ("ENG YAXSHI SIGNAL TOPLAMI BILAN TARMOQ: ("); Serial.print (networkSSID); Serial.print (") - SIGNAL: ("); Serial.print (forceSignal); Serial.println (")")); } kechiktirish (10); }} Serial.println ("\ n ----------------------------------------- ------------------------------------------- / n ");
// yangi ko'rish kechikishini bajarish uchun 5 soniya oralig'i (5000); }
"Agar (abs (WiFi. RSSI (i)))"
E'tibor bering, biz yuqoridagi ifodada abs () dan foydalanamiz, bu funksiya sonning mutlaq qiymatini oladi (ya'ni manfiy emas). Bizning holatimizda biz buni taqqoslashda eng kichik qiymatlarni topish uchun qildik, chunki signal intensivligi manfiy son sifatida berilgan va nolga qanchalik yaqin bo'lsa, signal shunchalik yaxshi bo'ladi.
10 -qadam: fayllar
Mening barcha fayllarimni www.fernandok.com saytidan yuklab oling
Tavsiya:
Kovid xavfsizlik dubulg'asi 1 -qism: Tinkerkad sxemalariga kirish !: 20 qadam (rasmlar bilan)
Kovid xavfsizlik dubulg'asi 1 -qism: Tinkerkad sxemalariga kirish !: Salom, do'stim! Bu ikki qismli seriyada biz Tinkerkad sxemalarini qanday ishlatishni bilib olamiz - bu sxemalar qanday ishlashini bilish uchun qiziqarli, kuchli va ta'limiy vosita! O'rganishning eng yaxshi usullaridan biri bu qilishdir. Shunday qilib, biz avval o'z loyihamizni ishlab chiqamiz: th
IR sxemalariga kirish: 8 qadam (rasmlar bilan)
IR sxemalariga kirish: IR - bu texnologiyaning murakkab qismi, lekin u bilan ishlash juda oson. LED yoki LAZERdan farqli o'laroq, infraqizil nurni inson ko'zlari bilan ko'rish mumkin emas. Bu yo'riqnomada men infraqizilni 3 xil sxemalar orqali ishlatishni ko'rsataman
O'yinlar !!! - Kirish: 5 qadam
O'yinlar !!! - Kirish: Salom! Men sizga code.org saytida uch xil o'yinni yaratishni o'rgataman. Har bir o'yin qo'llanmasida men shablonni joylashtiraman, uni siz remix qilishingiz va videomni ko'rayotganda ishlatishingiz mumkin. Umid qilamanki, vaqtingizni maroqli o'tkazasiz !! Agar siz mening o'yinlarimni shunchaki ko'rishni xohlasangiz
Tugmalar uchun "Metall tuynuklar" yordamida ESP32 sig'imli sensorli kirish: 5 qadam (rasmlar bilan)
Tugmalar uchun "Metall teshikli vilkalar" yordamida ESP32 sig'imli sensorli kirish: Men yaqinda ESP32 WiFi Kit 32 -ga asoslangan uchta tugmani kiritishni talab qiladigan loyihaning dizayn qarorlarini yakunlayotganimda, bitta muhim muammo shundaki, WiFi Kit 32 -da bitta mexanik tugmachaning yo'qligi, faqat uchta mexanik tugma, f
Kirish ESP32 Lora OLED displeyi: 8 qadam
Kirish ESP32 Lora OLED -displey: Bu ESP32 LoRa -ga kirish haqidagi boshqa video. Bu safar biz aniq grafik displey (128x64 piksel) haqida gaplashamiz. Biz ushbu OLED -displeyda ma'lumotlarni ko'rsatish uchun SSD1306 kutubxonasidan foydalanamiz va