Daftar Isi:

Pengantar ESP32: 10 Langkah
Pengantar ESP32: 10 Langkah

Video: Pengantar ESP32: 10 Langkah

Video: Pengantar ESP32: 10 Langkah
Video: MEMULAI ESP32 TUTORIAL MENAMBAHKAN BOARD ESP32 KE IDE ARDUINO, INTAL DRIVER, DAN MEMPROGRAM ESP32 2024, Juli
Anonim
Image
Image
Fitur Utama
Fitur Utama

Pada artikel ini kita akan berbicara tentang ESP32, yang saya anggap sebagai kakak dari ESP8266. Saya sangat menyukai mikrokontroler ini karena memiliki WiFi. Supaya Anda punya ide, sebelum ESP ada, jika Anda membutuhkan Arduino untuk memiliki WiFi, Anda harus mengeluarkan antara $200 dan $300 untuk membeli adaptor Wifi. Adaptor untuk kabel jaringan tidak terlalu mahal, tetapi untuk WiFi selalu mahal dan masih mahal. Tapi untungnya, Sistem Espressif telah meluncurkan ESP dan menyelesaikan hidup kita.

Saya suka ESP32 dengan format ini yang memiliki port USB. Skema NodeMCU ini mudah dimanipulasi karena tidak membutuhkan elektronik apapun. Cukup colokkan kabel, nyalakan perangkat dan programkan. Ia bekerja seperti Arduino.

Bagaimanapun, hari ini kita akan berbicara tentang aspek umum ESP32 dan cara mengkonfigurasi Arduino IDE untuk memprogram lebih banyak perangkat jenis ini. Kami juga akan membuat program yang mencari jaringan dan menunjukkan mana yang lebih kuat.

Langkah 1: Fitur Utama

Chip dengan WiFi internal: standar 802.11 B / G / N, beroperasi di kisaran 2,4 hingga 2,5 GHz

Mode operasi: Klien, Titik Akses, Stasiun + Titik Akses

Mikroprosesor inti ganda Tensilica Xtensa 32-bit LX6

Jam yang dapat disesuaikan dari 80MHz hingga 240MHz

Tegangan operasi: 3,3 VDC

Ini memiliki SRAM 512KB

Fitur ROM 448KB

Ini memiliki memori flash eksternal 32Mb (4 megabyte)

Arus maksimum per pin adalah 12mA (disarankan untuk menggunakan 6mA)

Ini memiliki 36 GPIO

GPIO dengan fungsi PWM / I2C dan SPI

Memiliki Bluetooth v4.2 BR / EDR dan BLE (Bluetooth Low Energy)

Langkah 2: Perbandingan Antara ESP32, ESP8266 dan Arduino R3

Perbandingan Antara ESP32, ESP8266 dan Arduino R3
Perbandingan Antara ESP32, ESP8266 dan Arduino R3

Langkah 3: Jenis ESP32

Jenis ESP32
Jenis ESP32

ESP32 lahir dengan banyak saudara. Hari ini saya menggunakan yang pertama dari kiri, Espressif, tetapi ada beberapa merek dan tipe, termasuk Oled display built-in. Namun, perbedaannya adalah semua chip yang sama: Tensilica LX6, 2 Core.

Langkah 4: WiFi NodeMCU-32S ESP-WROOM-32

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

Ini adalah diagram ESP yang kami gunakan dalam perakitan kami. Ini adalah chip yang memiliki banyak daya tarik dan kekuatan. Mereka adalah beberapa pin yang Anda pilih apakah mereka ingin berfungsi sebagai analog digital, analog digital atau bahkan jika itu berfungsi sebagai pintu digital.

Langkah 5: Konfigurasi Arduino IDE (Windows)

Konfigurasi Arduino IDE (Windows)
Konfigurasi Arduino IDE (Windows)
Konfigurasi Arduino IDE (Windows)
Konfigurasi Arduino IDE (Windows)

Berikut cara mengkonfigurasi Arduino IDE agar dapat kita compile untuk ESP32:

1. Unduh file melalui tautan:

2. Buka zip file dan salin konten ke jalur berikut:

C: / Pengguna / [YOUR_USER_NAME] / Dokumen / Arduino / perangkat keras / espressif / esp32

Catatan: Jika tidak ada direktori "espressif" dan "esp32", buat saja seperti biasa.

3. Buka direktori

C: / Pengguna / [YOUR_USER_NAME] / Dokumen / Arduino / perangkat keras / espressif / esp32 / alat

Jalankan file "get.exe".

4. Setelah "get.exe" selesai, pasang ESP32, tunggu driver diinstal (atau instal secara manual).

Siap, sekarang pilih saja papan ESP32 di "alat >> papan" dan kompilasi kode Anda.

Langkah 6: Pemindaian WiFi

Berikut adalah contoh cara mencari jaringan WiFi yang tersedia di dekat ESP-32, serta kekuatan sinyal masing-masing. Dengan setiap pemindaian, kami juga akan mengetahui jaringan mana yang memiliki kekuatan sinyal terbaik.

Langkah 7: Kode

Pertama mari kita sertakan perpustakaan "WiFi.h", akan perlu untuk memungkinkan kita bekerja dengan kartu jaringan perangkat kita.

#sertakan "WiFi.h"

Berikut adalah dua variabel yang akan digunakan untuk menyimpan SSID (nama) jaringan dan kekuatan sinyal.

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

Langkah 8: Pengaturan

Dalam fungsi setup (), kita akan menentukan mode perilaku WiFi perangkat kita. Dalam hal ini, karena tujuannya adalah untuk mencari jaringan yang tersedia, kami akan mengonfigurasi perangkat kami agar berfungsi sebagai "stasiun".

void setup(){ // Inisialisasi Serial untuk login Serial Monitor Serial.begin(115200);

// mengonfigurasi mode pengoperasian WiFi sebagai stasiun WiFi.mode(WIFI_STA);//WIFI_STA adalah konstanta yang menunjukkan mode stasiun

// putuskan sambungan dari titik akses jika sudah terhubung WiFi.disconnect(); penundaan(100);

// Serial.println("Pengaturan selesai");}

Langkah 9: Putaran

Dalam fungsi loop (), kami akan mencari jaringan yang tersedia dan kemudian mencetak log di jaringan yang ditemukan. Untuk masing-masing jaringan ini kami akan membuat perbandingan untuk menemukan jaringan dengan kekuatan sinyal tertinggi.

void loop(){ // Serial.println("scan start"); // melakukan pemindaian jaringan yang tersedia

int n = WiFi.scanNetworks();

Serial.println("Pemindaian dilakukan");

//periksa apakah Anda telah menemukan jaringan apa pun if (n == 0) { Serial.println("Tidak ada jaringan yang ditemukan"); } else { networkSSID = ""; kekuatanSignal= -9999; Serial.print(n); Serial.println("jaringan ditemukan\n"); for (int i = 0; i < n; ++i) { //cetak pada monitor serial setiap jaringan yang ditemukan Serial.print("SSID: "); Serial.println(WiFi. SSID(i)); //nama jaringan (ssid) Serial.print("SIGNAL: "); Serial.print(WiFi. RSSI(i)); //kekuatan sinyal 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(strengthSignal)) { strengthSignal = WiFi. RSSI(i); networkSSID = WiFi. SSID(i); Serial.print("JARINGAN DENGAN SINYAL TERBAIK DITEMUKAN: ("); Serial.print(networkSSID); Serial.print() - SIGNAL: ("); Serial.print(strengthSignal); Serial.println(")"); } penundaan(10); } } Serial.println("\n----------------------------------------------------- -------------------------------------------\n");

// interval 5 detik untuk melakukan penundaan pemindaian baru(5000); }

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

Perhatikan bahwa dalam pernyataan di atas kita menggunakan abs(), fungsi ini mengambil nilai absolut (yaitu tidak negatif) dari bilangan tersebut. Dalam kasus kami, kami melakukan ini untuk menemukan nilai terkecil dalam perbandingan, karena intensitas sinyal diberikan sebagai angka negatif dan semakin mendekati nol semakin baik sinyalnya.

Langkah 10: File

Unduh semua file saya di: www.fernandok.com

Direkomendasikan: