Სარჩევი:
- ნაბიჯი 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 10:19
ამ სტატიაში ჩვენ ვაპირებთ ვისაუბროთ ESP32– ზე, რომელიც მე მიმაჩნია ESP8266– ის უფროს ძმად. მე ნამდვილად მომწონს ეს მიკროკონტროლი, რადგან მას აქვს WiFi. ასე რომ თქვენ გაქვთ იდეა, სანამ ESP არსებობს, თუ თქვენ გჭირდებათ Arduino WiFi– სთვის, თქვენ უნდა დახარჯოთ $ 200 - დან $ 300 - მდე Wifi ადაპტერის შესაძენად. ქსელის კაბელის ადაპტერი არც ისე ძვირია, მაგრამ WiFi– სთვის ის ყოველთვის ძვირი იყო და არის. საბედნიეროდ, Espressif Systems– მა დაიწყო ESP და წყვეტს ჩვენს ცხოვრებას.
მე მომწონს ESP32 ამ ფორმატით, რომელსაც აქვს USB პორტი. ამ NodeMCU სქემით ადვილია მანიპულირება, რადგან მას არ სჭირდება ელექტრონიკა. უბრალოდ შეაერთეთ კაბელი, ჩართეთ მოწყობილობა და დაპროგრამეთ. ის მუშაობს არდუინოს მსგავსად.
ყოველ შემთხვევაში, დღეს ჩვენ ვისაუბრებთ ESP32– ის ზოგად ასპექტებზე და იმაზე, თუ როგორ უნდა მოხდეს Arduino IDE– ს კონფიგურაცია, რათა დაპროგრამდეს მეტი ტიპის მოწყობილობა. ასევე ჩვენ შევქმნით პროგრამას, რომელიც მოიძიებს ქსელებს და აჩვენებს რომელი უფრო ძლიერია.
ნაბიჯი 1: ძირითადი მახასიათებლები
ჩიპი ჩაშენებული WiFi- ით: სტანდარტული 802.11 B / G / N, მუშაობს 2.4-დან 2.5GHz დიაპაზონში
ოპერაციის რეჟიმი: კლიენტი, წვდომის წერტილი, სადგური + წვდომის წერტილი
ორმაგი ბირთვიანი მიკროპროცესორი Tensilica Xtensa 32 ბიტიანი LX6
რეგულირებადი საათი 80 MHz– დან 240 MHz– მდე
სამუშაო ძაბვა: 3.3 VDC
მას აქვს SRAM 512 კბ
მახასიათებლები 448KB ROM
აქვს გარე ფლეშ მეხსიერება 32 მბ (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] / Documents / Arduino / hardware / espressif / esp32
შენიშვნა: თუ არ არსებობს დირექტორია "espressif" და "esp32", უბრალოდ შექმენით ისინი ნორმალურად.
3. გახსენით დირექტორია
C: / მომხმარებლები / [YOUR_USER_NAME] / Documents / Arduino / hardware / espressif / esp32 / tools
გაუშვით ფაილი "get.exe".
4. "get.exe" დასრულების შემდეგ შეაერთეთ ESP32, დაელოდეთ დრაივერების დაინსტალირებას (ან ხელით ინსტალაციას).
მზადაა, ახლა შეარჩიეთ ESP32 დაფა "ინსტრუმენტები >> დაფაში" და შეადგინეთ თქვენი კოდი.
ნაბიჯი 6: WiFi სკანირება
აქ არის მაგალითი იმისა, თუ როგორ უნდა მოძებნოთ ხელმისაწვდომი WiFi ქსელები ESP-32– ის მახლობლად, ასევე თითოეული მათგანის სიგნალის სიძლიერე. თითოეული სკანირებისას ჩვენ ასევე გავარკვევთ, რომელი ქსელის აქვს სიგნალის საუკეთესო სიძლიერე.
ნაბიჯი 7: კოდი
პირველ რიგში შევიტანოთ ბიბლიოთეკა "WiFi.h", საჭირო იქნება მოგვცეს საშუალება ვიმუშაოთ ჩვენი მოწყობილობის ქსელის ბარათზე.
#მოიცავს "WiFi.h"
აქ არის ორი ცვლადი, რომელიც გამოყენებული იქნება ქსელის SSID (სახელი) და სიგნალის სიძლიერის შესანახად.
სიმებიანი ქსელიSSID = ""; int powerSignal = -9999;
ნაბიჯი 8: დაყენება
Setup () ფუნქციაში ჩვენ განვსაზღვრავთ ჩვენი მოწყობილობის WiFi ქცევის რეჟიმს. ამ შემთხვევაში, ვინაიდან მიზანი არის არსებული ქსელების ძებნა, ჩვენ დავაკონფიგურირებთ ჩვენს მოწყობილობას, რომ იმუშაოს როგორც "სადგური".
void setup () {// სერიალის ინიციალიზაცია სერიული მონიტორის შესასვლელად 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 ("ქსელი არ მოიძებნა"); } else {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:"); 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 (powerSignal)) {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); }
"თუ (აბს (WiFi. RSSI (i))"
გაითვალისწინეთ, რომ ზემოთ მოცემულ განცხადებაში ჩვენ ვიყენებთ abs () -ს, ეს ფუნქცია იღებს რიცხვის აბსოლუტურ მნიშვნელობას (ანუ არა უარყოფითს). ჩვენს შემთხვევაში ჩვენ გავაკეთეთ ეს იმისათვის, რომ ვიპოვოთ შედარებით უმცირესი მნიშვნელობები, რადგან სიგნალის ინტენსივობა მოცემულია უარყოფით რიცხვში და რაც უფრო ახლოსაა ნულთან მით უკეთესი სიგნალია.
ნაბიჯი 10: ფაილები
ჩამოტვირთეთ ყველა ჩემი ფაილი აქ: www.fernandok.com
გირჩევთ:
Covid უსაფრთხოების ჩაფხუტი ნაწილი 1: შესავალი Tinkercad სქემებში!: 20 ნაბიჯი (სურათებით)
Covid უსაფრთხოების ჩაფხუტი ნაწილი 1: შესავალი Tinkercad სქემებში!: გამარჯობა მეგობარო! ამ ორ ნაწილის სერიაში ჩვენ ვისწავლით თუ როგორ გამოიყენოთ Tinkercad– ის სქემები - სახალისო, მძლავრი და საგანმანათლებლო ინსტრუმენტი სქემების მუშაობის შესასწავლად! სწავლის ერთ -ერთი საუკეთესო საშუალებაა ამის გაკეთება. ამრიგად, ჩვენ ჯერ შევქმნით ჩვენს საკუთარ პროექტს:
შესავალი IR სქემებში: 8 ნაბიჯი (სურათებით)
შესავალი IR სქემებში: IR არის ტექნოლოგიის რთული ნაწილი, მაგრამ მასთან მუშაობა ძალიან მარტივია. LED- ებისა და ლაზერებისაგან განსხვავებით, ინფრაწითელი არ ჩანს ადამიანის თვალით. ამ ინსტრუქციებში მე ვაჩვენებ ინფრაწითელი სისტემის გამოყენებას 3 სხვადასხვა სქემით. სქემები არ იქნება თქვენ
თამაშები !!! - შესავალი: 5 ნაბიჯი
თამაშები !!! - შესავალი: გამარჯობა! მე გასწავლით თუ როგორ უნდა შექმნათ სამი განსხვავებული თამაში code.org– ზე. თითოეული თამაშის გაკვეთილის ქვეშ, მე გამოვაქვეყნებ შაბლონს, რომლის რემიქსიც შეგიძლიათ და გამოიყენოთ ჩემი ვიდეოს ყურებისას. ვიმედოვნებ, გაერთეთ სასიამოვნო დროს !! თუ თქვენ გინდათ ჩემი თამაშების ნახვა
ESP32-CAM FPV Arduino Wifi კონტროლის ავზი WebApp Controller_p1_ შესავალი: 3 ნაბიჯი
ESP32-CAM FPV Arduino Wifi საკონტროლო ავზი WebApp Controller_p1_introduction: გამარჯობა, მე ვარ ტონი პამი. ამჟამად, მე ვიეტნამური STEAM მასწავლებელი ვარ და ასევე ჰობისტი. ბოდიში წინასწარ ჩემი ინგლისურისთვის. მე დავწერე ინსტრუქცია Arduino Bluetooth კონტროლირებადი ავზის შესაქმნელად, მაგრამ ის ვიეტნამურ ენაზეა. საცნობარო ბმული: P1. ARDUINO B
შესავალი ESP32 Lora OLED ეკრანი: 8 ნაბიჯი
შესავალი ESP32 Lora OLED ეკრანი: ეს არის კიდევ ერთი ვიდეო ESP32 LoRa– ს შესავლის შესახებ. ამჯერად, ჩვენ კონკრეტულად ვისაუბრებთ გრაფიკულ ჩვენებაზე (128x64 პიქსელით). ჩვენ გამოვიყენებთ SSD1306 ბიბლიოთეკას ამ OLED ეკრანზე ინფორმაციის საჩვენებლად და მაგალითის წარმოსადგენად