Sisukord:

ESP32 sissejuhatus: 10 sammu
ESP32 sissejuhatus: 10 sammu

Video: ESP32 sissejuhatus: 10 sammu

Video: ESP32 sissejuhatus: 10 sammu
Video: arduino esp32 lesson. Супер простое управление теплицей по wifi с помощью библиотеки GyverPortal 2024, Juuli
Anonim
Image
Image
Põhijooned
Põhijooned

Selles artiklis räägime ESP32 -st, mida pean ESP8266 vanemaks vennaks. Mulle väga meeldib see mikrokontroller, kuna sellel on WiFi. Lihtsalt selleks, et teil oleks enne ESP olemasolu idee, kui vajate WiFi kasutamiseks Arduinot, peate Wifi -adapteri ostmiseks kulutama 200–300 dollarit. Võrgukaabli adapter pole nii kallis, kuid WiFi jaoks on see alati olnud ja on endiselt kallis. Kuid õnneks on Espressif Systems käivitanud ESP ja lahendab meie elu.

Mulle meeldib selle vorminguga ESP32, millel on USB -port. Seda NodeMCU skeemi on lihtne manipuleerida, kuna see ei vaja elektroonikat. Lihtsalt ühendage kaabel, lülitage seade sisse ja programmeerige see. See töötab nagu Arduino.

Igatahes räägime täna ESP32 üldistest aspektidest ja sellest, kuidas seadistada Arduino IDE rohkem seda tüüpi seadmeid programmeerima. Samuti teeme programmi, mis otsib võrke ja näitab, milline neist on võimsam.

Samm: põhifunktsioonid

Kiip koos sisseehitatud WiFi-ga: standard 802.11 B / G / N, mis töötab vahemikus 2,4 kuni 2,5 GHz

Töörežiimid: klient, pääsupunkt, jaam + juurdepääsupunkt

Kahetuumaline mikroprotsessor Tensilica Xtensa 32-bitine LX6

Reguleeritav kell 80MHz kuni 240MHz

Tööpinge: 3,3 VDC

Selle SRAM on 512KB

Omadused 448KB ROM

Sellel on väline välkmälu 32 MB (4 megabaiti)

Maksimaalne vool tihvti kohta on 12 mA (soovitatav on kasutada 6 mA)

Sellel on 36 GPIO -d

GPIO -d PWM / I2C ja SPI funktsioonidega

Sellel on Bluetooth v4.2 BR / EDR ja BLE (Bluetooth Low Energy)

Samm: ESP32, ESP8266 ja Arduino R3 võrdlus

ESP32, ESP8266 ja Arduino R3 võrdlus
ESP32, ESP8266 ja Arduino R3 võrdlus

Samm: ESP32 tüübid

ESP32 tüübid
ESP32 tüübid

ESP32 sündis koos paljude õdede -vendadega. Täna kasutan esimest vasakult, Espressifit, kuid on mitmeid kaubamärke ja tüüpe, sealhulgas sisseehitatud Oled-ekraan. Erinevused on aga kõik ühesugused: Tensilica LX6, 2 Core.

4. samm: WiFi-sõlmMCU-32S ESP-WROOM-32

WiFi-sõlmMCU-32S ESP-WROOM-32
WiFi-sõlmMCU-32S ESP-WROOM-32

See on ESP diagramm, mida me oma koostes kasutame. See on kiip, millel on palju atraktiivsust ja jõudu. Need on mitmed tihvtid, mille valite, kas nad soovivad töötada digitaalse analoogina, analoog -digitaalena või isegi siis, kui see töötab uksena digitaalselt.

Samm: Arduino IDE seadistamine (Windows)

Arduino IDE seadistamine (Windows)
Arduino IDE seadistamine (Windows)
Arduino IDE seadistamine (Windows)
Arduino IDE seadistamine (Windows)

Siin on, kuidas konfigureerida Arduino IDE, et saaksime ESP32 jaoks kompileerida:

1. Laadige failid alla lingi kaudu:

2. Pakkige fail lahti ja kopeerige sisu järgmisele teele:

C: / Kasutajad / [YOUR_USER_NAME] / Dokumendid / Arduino / riistvara / espressif / esp32

Märkus. Kui katalooge "espressif" ja "esp32" pole, looge need lihtsalt normaalselt.

3. Avage kataloog

C: / Kasutajad / [YOUR_USER_NAME] / Dokumendid / Arduino / riistvara / espressif / esp32 / tools

Käivitage fail "get.exe".

4. Pärast "get.exe" lõppu ühendage ESP32, oodake draiverite installimist (või installige käsitsi).

Valmis, valige lihtsalt tööriistadetahvlilt ESP32 plaat ja koostage oma kood.

Samm: WiFi -skannimine

Siin on näide selle kohta, kuidas otsida saadaolevaid WiFi-võrke ESP-32 lähedalt, samuti nende signaalitugevust. Iga skaneerimisega saame ka teada, milline võrk on parima signaalitugevusega.

Samm: kood

Esiteks lisame raamatukogu "WiFi.h", on vaja lubada meil töötada oma seadme võrgukaardiga.

#include "WiFi.h"

Siin on kaks muutujat, mida kasutatakse võrgu SSID (nimi) ja signaali tugevuse salvestamiseks.

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

8. samm: seadistamine

Funktsioonis setup () määratleme meie seadme WiFi käitumisrežiimi. Sel juhul, kuna eesmärk on saadaolevate võrkude otsimine, konfigureerime oma seadme töötama "jaamana".

void setup () {// Initsialiseeri Serial, et sisse logida Serial Monitor Serial.begin (115200);

// WiFi töörežiimi seadistamine jaama WiFi -režiimiks (WIFI_STA); // WIFI_STA on jaamarežiimi tähistav konstant

// katkesta juurdepääsupunktist ühendus, kui see on juba ühendatud WiFi.disconnect (); viivitus (100);

// Serial.println ("Seadistus tehtud");}

9. samm: silmus

Funktsioonis loop () otsime saadaolevad võrgud ja seejärel prindime logi leitud võrkudes. Kõigi nende võrkude puhul võrdleme suurima signaalitugevusega võrku.

void loop () {// Serial.println ("skannimise algus"); // kontrollib saadaolevaid võrke

int n = WiFi.scanNetworks ();

Serial.println ("Skaneerimine teostatud");

// kontrollige, kas olete võrgu leidnud, kui (n == 0) {Serial.println ("Võrku ei leitud"); } else {networkSSID = ""; tugevusSignaal = -9999; Seeriatrükk (n); Serial.println ("võrgud leitud / n"); for (int i = 0; i <n; ++ i) {// printige seeriamonitorile kõik leitud võrgud Serial.print ("SSID:"); Serial.println (WiFi. SSID (i)); // võrgu nimi (ssid) Serial.print ("SIGNAL:"); Seeriaprint (WiFi. RSSI (i)); // signaali tugevus Serial.print ("\ t / tCHANNEL:"); Serial.print ((int) WiFi.kanal (i)); Serial.print ("\ t / tMAC:"); Serial.print (WiFi. BSSIDstr (i)); Serial.println ("\ n / n"); if (abs (WiFi. RSSI (i)) <abs (tugevusSignaal)) {tugevusSignaal = WiFi. RSSI (i); networkSSID = WiFi. SSID (i); Serial.print ("NETWORK WEST BEST SIGNAL FOUND: ("); Serial.print (networkSSID); Serial.print (") - SIGNAL: ("); Serial.print (strongSignal); Serial.println (")"); } viivitus (10); }} Serial.println ("\ n ----------------------------------------- ------------------------------------------- / n ");

// intervall 5 sekundit uue skaneerimise viivituse tegemiseks (5000); }

"Kui (abs (WiFi. RSSI (i)))"

Pange tähele, et ülaltoodud väites kasutame abs (), see funktsioon võtab arvu absoluutväärtuse (st mitte negatiivse). Meie puhul tegime seda, et leida võrdlusest väikseim väärtus, sest signaali intensiivsus on antud negatiivse arvuna ja mida lähemal nullile, seda parem signaal.

10. samm: failid

Laadige kõik minu failid alla aadressilt www.fernandok.com

Soovitan: