Vodič za početnike za programiranje ESP32 mikrokontrolera
Ako ste ikada istraživali svet mikrokontrolera, verovatno ste naišli na Arduino ploče.
ESP32 modeli su isti kao Arduino i RPi Pico ploče: to su mikrokontroleri korisni za bilo koji DIY projekat
Sa mnoštvom prvih i trećih strana ploča, serija Arduino ima puno sledbenika u DIY (Uradi Sam) zajednici. Tu je i Raspberry Pi Pico, novi mikrokontroler razvijen od strane kreatora najpopularnije serije SBC (Single-Board Computer). Međutim, postoji jednako impresivna porodica mikrokontrolera koju većina početnika – pa čak i tehničkih entuzijasta srednjeg nivoa – nije upoznata. Govorimo o ponudama Espressif Systems-a, posebno ESP32 ploči. U ovom članku ćemo preći preko svega što trebate znati pre nego što odaberete ovu fantastičnu razvojnu ploču za vaš sledeći projekat.
Šta je ESP32?
Na osnovnom nivou, većina ESP32 modela su isti kao Arduino i RPi Pico ploče: to su mikrokontroleri korisni za bilo koji DIY projekat koji uključuje složenu elektroniku, robotiku ili automatizaciju. Kao i njihovi rivali, ESP32 ne podržava potpuno razvijen desktop operativni sistem, a ugrađeni OS ESP32 zahteva programiranje uređaja pomoću koda u uređivaču/IDE-u kako bi se obavila određena funkcija.
Međutim, ESP32 je daleko moćniji (barem što se tiče mikrokontrolera) od svojih konkurenata, uz dodatak veće konfiguracije IO pinova. Plus, mnogi modeli ESP32 dolaze sa ugrađenim Bluetooth i Wi-Fi modulima, funkcijom koja je dostupna samo na skupljim verzijama Arduino i Pico ploča. Govoreći o ceni, ESP32 je daleko pristupačniji od drugih razvojnih ploča, a čak i najjeftinija verzija ESP32 će nadmašiti svoje rivale po procesorskim mogućnostima. Postoje neki modeli ESP32 koji nisu mikrokontroleri, kao što je Olimex SBC koji koristi FabGL biblioteku. Međutim, pošto njihovo pokrivanje izlazi iz okvira ovog članka, razmatraćemo samo ESP32 mikrokontrolere za ostatak vodiča.
Kako povezati ESP32 sa računarom preko serijske veze?
Pošto ESP32 nije samostalni uređaj, moraćete ga povezati sa računarom pre nego što možete izgraditi bilo šta značajno sa njim. Pošto je zvanični Arduino IDE prilično robustan i može se kalibrisati da radi sa ESP32, koristićemo ga za ceo vodič.
- Otvorite ovaj link u omiljenom web pretraživaču i preuzmite zip folder Arduino IDE-a.
- Kada se preuzimanje završi, raspakujte folder i pokrenite Arduino.exe sa administratorskim privilegijama.
- Ako Windows Defender Firewall prikaže upozorenje o ograničavanju pristupa vašoj privatnoj mreži, ignorišite ga pritiskom na dugme “Allow access”.
- Izaberite “Install” kada Windows Security zatraži vašu potvrdu za instalaciju Arduino USB drajvera.
- Sa pokrenutim Arduino IDE-om, vreme je da pristupite ESP32 sa vašeg sistema.
- Koristeći micro-USB to USB Type-A (ili Type-C) kabl, fizički povežite ESP32 sa računarom.
- Unutar Arduino IDE-a, kliknite na “File” i izaberite “Preferences”.
- Nalepite sledeću adresu u opciju “Additional boards manager URLs” i pritisnite “OK”.
- Izaberite “Tools” zaglavlje i postavite kursor iznad “Board” i potom “esp32” pre nego što odaberete vaš specifični mikrokontroler iz opcija.
- Ponovo kliknite na “Tools”, i ovog puta, izaberite serijski port koji se automatski pojavljuje ispod “Port” tab-a.
Iako je opcionalno, preporučujemo učitavanje “Example” skripte iz Arduino IDE-a na vaš ESP32 kako biste proverili da li je stvarno povezan sa računarom.
- 12. Iz “File” zaglavlja, postavite kursor iznad “Examples” i izaberite “AnalogReadSerial” iz sekcije “01.Basics”.
- 13. Kliknite na “Upload” dugme da pošaljete i izvršite skriptu na ESP32.
- 14. Držite dugme “Boot” na vašem ESP32 dok Arduino IDE izvršava skriptu na mikrokontroleru.
- 15. Ako IDE prikaže MAC adresu ESP32 i počne učitavanje programa, veza je uspešna.
Kako povezati ESP32 sa uređajem bežično?
Korišćenje Wi-Fi
Pošto ESP32 podržava Wi-Fi i Bluetooth konektivnost, ovaj članak ne bi bio potpun ako ne pokrijemo proceduru za bežično povezivanje ploče sa računarom.
- Kliknite na “File” i u “Examples” meniju, izaberite “SimpleWiFiServer” iz WiFi sekcije.
- Dodelite odgovarajuće vrednosti za *ssid i *password varijable tipa char.
- Pritisnite “Upload” i, kao i prošli put, držite dugme “Boot” na vašem ESP32 dok Arduino IDE završava pisanje koda na mikrokontroleru.
- Kada se u izlazu pojavi poruka “Hard resetting via RTS pin…”, pritisnite Ctrl+Shift+M da biste otvorili “Serial Monitor”.
- Osigurajte da je Baud rate isti kao broj u funkciji Serial.begin().
- Pritisnite dugme “RST” na vašem ESP32 na nekoliko sekundi.
- Ako ste ispravno uneli mrežne detalje, “Serial Monitor” će prikazati poruku “Wi-Fi connected” zajedno sa IP adresom vašeg ESP32.
Korišćenje Bluetooth
Naravno, Wi-Fi nije jedina opcija za bežičnu konektivnost za ESP32; možete jednostavno povezati mikrokontroler sa željenim uređajem, uključujući pametne telefone i tablete, putem Bluetooth-a.
- Kliknite na “File” opciju i izaberite “SerialToSerialBT” iz sekcije “BluetoothSerial” u Examples meniju.
- Kliknite na “Upload” na prozoru SerialToSerialBT i nastavite držati dugme “Boot” dok se kod ne prebaci na ESP32.
- Pritisnite Ctrl+Shift+M još jednom da bi se “Serial Monitor” pojavio pored izlaznog taba.
- Kao i prošli put, osigurajte da je Baud rate u “Serial Monitor” isti kao što je navedeno u skripti SerialToSerialBT.
- Pritisnite i držite dugme “RST” na ESP32 ploči na nekoliko sekundi.
- Pojaviće se poruka “Now you can pair it with Bluetooth!” u “Serial Monitor”.
- Sa tim, možete otvoriti Bluetooth postavke na svom pametnom telefonu i upariti ga sa uređajem koji se pojavljuje kao ESP32-BT-Slave.
Stavljanje svojih DIY veština na test sa moćnim ali pristupačnim ESP32
ESP32 je lako jedna od najuniverzalnijih razvojnih ploča u potrošačkom prostoru i prilično je jeftina uprkos solidnim specifikacijama. Ipak, nema ni približno toliko obrazovnih resursa kao prestižna Arduino porodica. Sami po sebi, mikrokontroleri zahtevaju značajnu količinu znanja iz programiranja i elektronike.
Kombinacija nedostatka tutorijala orijentisanih ka početnicima za ESP32 i visokog nivoa učenja povezanog sa mikrokontrolerima znači da je bolje za novajlije da se suzdrže od investiranja u ESP32 na početku. Umesto toga, trebali biste graditi jednostavne Raspberry Pi Pico i Arduino projekte kako biste se upoznali sa mikrokontrolerima, i postepeno raditi ka složenijim idejama koje uključuju ESP32 ploče (ili čak sve tri)!
Izvor: Xda-developers