Мазмұны:

ESP32 -ге кіріспе: 10 қадам
ESP32 -ге кіріспе: 10 қадам

Бейне: ESP32 -ге кіріспе: 10 қадам

Бейне: ESP32 -ге кіріспе: 10 қадам
Бейне: Lesson 34: Using MCP9808 Temperature Sensor with TM1637 screen | Arduino Step By Step Course 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

Реттелетін сағат 80 МГц -тен 240 МГц -ке дейін

Жұмыс кернеуі: 3.3 VDC

Оның SRAM көлемі 512 КБ

448KB ROM мүмкіндіктері

Оның сыртқы флэш -жады 32 Мб (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 (аты) мен сигнал күшін сақтау үшін қолданылатын екі айнымалысы бар.

Жолдық желіSSID = «»; int forceSignal = -9999;

8 -қадам: Орнату

Setup () функциясында біз құрылғымыздың WiFi әрекет ету режимін анықтаймыз. Бұл жағдайда мақсат қол жетімді желілерді іздеу болғандықтан, біз құрылғыны «станция» ретінде жұмыс істейтін етіп баптаймыз.

void setup () {// Serial Monitor Serial.begin (115200) жүйесіне кіру үшін серияны инициализациялау;

// WiFi режимін WiFi.mode (WIFI_STA) станциясы ретінде конфигурациялау; // WIFI_STA - станция режимін көрсететін тұрақты мән

// егер ол бұрыннан WiFi қосылған болса, кіру нүктесінен ажырату.disconnect (); кешіктіру (100);

// Serial.println («Орнатылды»);}

9 -қадам: ілмек

Цикл () функциясында біз қол жетімді желілерді іздейміз, содан кейін журналды табылған желілерде басып шығарамыз. Бұл желілердің әрқайсысы үшін біз сигнал күші жоғары желіні табу үшін салыстыру жүргіземіз.

void loop () {// Serial.println («қарап шығуды бастау»); // қол жетімді желілерді қарап шығуды орындайды

int n = WiFi.scanNetworks ();

Serial.println («Сканерленді»);

// кез келген желіні тапқаныңызды тексеріңіз if (n == 0) {Serial.println («Желі табылмады»); } басқа {networkSSID = «»; күшіSignal = -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 / t АРНА:»); 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

Ұсынылған: