- Potrebni materiali:
- Informacije o strojni opremi ESP32:
- Programiranje ESP32
- Priprava ID-ja za Arduino:
- Programiranje ESP32 z Arduino IDE:
Internet je s pametnimi telefoni dosegel skoraj vsak žep, ocenjuje se, da internet uporablja približno 3,2 milijarde ljudi, presenetljivo pa približno 8,4 milijarde naprav. To pomeni, da so elektronske naprave povezane z internetom več kot dvakrat več prebivalstva, ki uporablja internet, in stvari okoli nas so vsak dan pametnejše. Glavni razlog je razcvet interneta stvari, ki je splošno znan kot IOT, prav tako se ocenjuje, da bomo do konca leta 2020 imeli 20,4 milijarde naprav, povezanih z internetom. Torej je čas, da se pripravimo in dvignemo rokave za sodelovanje s projekti IOT, če želimo nadaljevati s tem razvojem. Sreča za nas je, da so nam odprtokodne platforme, kot sta Arduino in Espressif Systems, stvari zelo olajšale.
Espressif Systems je lansiral ESP8266-01 že dolgo nazaj, ki je številnim ljubiteljem odprl vrata, da vstopijo v svet IOT, od takrat se skupnost močno razvija in veliko izdelkov je prišlo na trg. Zdaj je lansiranje ESP32 Espressif stvari postavilo na novo raven. Ta majhen poceni 8 $ modul je dvojedrni 32-bitni CPU z vgrajenim Wi-Fi in dual-mode Bluetooth z zadostno količino 30 I / O nožic za vse osnovne elektronske projekte. Vse te funkcije so zelo enostavne za uporabo, saj jih je mogoče programirati neposredno iz Arduino IDE. Dovolj vznemirljivo… Poglejmo torej globoko, da začnemo z ESP32.
Potrebni materiali:
- Modul ESP32
- Arduino IDE
- Programski kabel (kabel micro USB)
- Kamen duše iz MCU (hecam se)
Informacije o strojni opremi ESP32:
Oglejmo si modul ESP32. Je nekoliko večji od modula ESP8266-01 in je prijazen do plošče, saj je večina glav zatičev razbitih kot vhodno / izhodni zatiči, obrnjeni drug proti drugemu, kar je super. Razbijmo ploščo na majhne dele, da bomo vedeli namen vsakega segmenta
Kot vidite, je jedro modula ESP-WROOM-32, ki je 32-bitni mikroprocesor. Ima tudi nekaj gumbov in LED, ki so razloženi spodaj.
Vtičnica Micro-USB: Vtičnica micro USB se uporablja za povezavo ESP32 z računalnikom prek kabla USB. Uporablja se za programiranje modula ESP in tudi za serijsko odpravljanje napak, saj podpira serijsko komunikacijo
Gumb EN: gumb EN je gumb za ponastavitev modula ESP. S pritiskom na ta gumb boste ponastavili kodo, ki deluje na modulu ESP
Gumb za zagon: ta gumb se uporablja za prenos programa iz Arduina v modul ESP. Pritisnite ga, ko kliknete ikono za nalaganje v Arduino IDE. Ko pritisnete gumb za zagon skupaj z gumbom EN, ESP preklopi v način nalaganja vdelane programske opreme. S tem načinom se ne igrajte, če ne veste, kaj počnete.
Rdeča LED: Rdeča LED na plošči se uporablja za prikaz napajanja. Med napajanjem plošče sveti rdeče.
Modra LED: Modra LED na plošči je priključena na zatič GPIO. Lahko ga vklopite ali izklopite s programiranjem. V nekaterih kitajskih kloniranih deskah, kot je moja, je ta led lahko tudi v rdeči barvi.
I / O zatiči: Tu se je zgodil velik razvoj. Za razliko od ESP8266 imamo pri ESP32 dostop do vseh vhodno / izhodnih zatičev modula prek izhodnih zatičev. Ti zatiči omogočajo digitalno branje / pisanje, analogno branje / pisanje, PWM, IIC, SPI, DAC in še veliko več. Več bomo o tem kasneje. Če pa vas zanima, se lahko naučite skozi opis pin na obrazcu ESP32.
ESP-WROOM-32: To je srce modula ESP32. Gre za 32-bitni mikroprocesor, ki so ga razvili sistemi Espressif. Če ste bolj tehnična oseba, lahko preberete podatkovni list ESP-WROOM-32. Spodaj sem navedel tudi nekaj pomembnih parametrov.
ESP32 |
|
Specifikacija |
Vrednost |
Število jeder |
2. |
Arhitektura |
32-bitni |
Frekvenca CPU |
|
Wifi |
DA |
Bluetooth |
DA |
Oven |
512 KB |
FLASH |
16 MB |
GPIO zatiči |
36 |
Komunikacijski protokoli |
SPI, IIC, I2S, UART, CAN |
ADC kanali |
18 kanalov |
Resolucija ADC |
12-bitni |
DAC kanali |
2. |
Ločljivost DAC |
8-bitni |
Za zdaj so to vse informacije, ki jih moramo vedeti o strojni opremi. Poglobili se bomo med premikanjem z različnimi projekti, ki uporabljajo ESP32.
Programiranje ESP32
Kot smo že omenili v tej vadnici, bomo ESP32 programirali z uporabo Arduino IDE, saj ima močno podporo skupnosti. ESP32 pa lahko programirate tudi z drugo programsko opremo, ki jo izvaja ESP Toolchain.
Ta vadnica bo pojasnila tudi samo uvod v uporabo platforme Windows. Če ste z drugih platform, sledite spodnjim povezavam
- Navodila za Mac
- Navodila za Debian / Ubuntu Linux
- Navodila za Fedoro
- Navodila za openSUSE
Priprava ID-ja za Arduino:
1. KORAK: Začnimo. Prvi korak bi bil prenos in namestitev Arduino IDE. To lahko enostavno storite tako, da sledite povezavi https://www.arduino.cc/en/Main/Software in brezplačno prenesete IDE. Če ga že imate, se prepričajte, da je v najnovejši različici.
2. KORAK: Nato nadaljujte s to povezavo za prenos GIT in prenos se bo samodejno začel z imenom »Git-2.16.2«. Počakajte, da se prenos konča.
3. KORAK: Ko je prenos končan, odprite datoteko exe in namestite GIT v računalnik. Za nadaljevanje namestitve kliknite Naprej za vse možnosti, ne da bi karkoli spremenili.
KORAK 4: Poiščite ime »GIT GUI« in poiščite tistega, ki smo ga pravkar namestili. Ne odpirajte GIT bash. Privzeto bo GIT GUI nameščen na pogon C v imeniku programskih datotek
5. KORAK: Zaženite aplikacijo GIT GUI. Nato izberite » Kloniraj izhod iz repozitorija «.
6. KORAK: Pojavi se naslednje okno, v katerem morate storiti naslednje.
Pod Prilepi izvorno lokacijo: https://github.com/espressif/arduino-esp32.git
Pod Prilepi imenik ciljev : / hardware / espressif / esp32
lahko najdete s klikom na File -> Preferences v Arduino IDE
Moj je C: / Users / Aswinth / Documents / Arduino , zato bo moj ciljni imenik C: / Users / Aswinth / Documents / Arduino / hardware / Espressif / esp32 . Ko sem bil prilepljen, je bil zaslon videti všeč, kot je prikazano spodaj
7. KORAK: Po zagotovitvi pravilnih lokacijskih poti kliknite na kloniraj in dobili boste naslednji zaslon.
8. KORAK: Znova poiščite » Git Bash « in ga odprite. Dobili boste naslednje okno.
KORAK 9: Zdaj vnesite » cd« in nato spet prilepite svoj ciljni imenik. Moja je bila po lepljenju videti spodaj tako. Nato pritisnite Enter.
KORAK 10: Zdaj prilepite posodobitev podmodula git --init –recursive in pritisnite Enter, da dobite naslednji zaslon.
KORAK 11: Zdaj odprite “/ hardware / espressif / esp32 / tools” in nato dvokliknite datoteko get.exe . Počakajte, da se postopek konča. Ko končate, boste v imeniku videli naslednje datoteke
To je to, zdaj je naš Arduino IDE pripravljen na delo z ESP32. Pojdimo naprej in preverimo, ali deluje.
Programiranje ESP32 z Arduino IDE:
1. KORAK: Povežite ploščo ESP32 z računalnikom prek kabla micro-USB. Prepričajte se, da rdeča dioda LED visoko sveti na modulu, da zagotovite napajanje.
2. KORAK: Zaženite Arduino IDE in se pomaknite do Orodja -> Plošče in izberite ploščo ESP32Dev, kot je prikazano spodaj
3. KORAK: Odprite upravitelja naprav in preverite, na katero pristanišče je povezan vaš ESP32. Moj je povezan s COM 8, kot je prikazano spodaj
4. KORAK: Vrnite se v Arduino IDE in pod Orodja -> Vrata izberite vrata, na katera je povezan vaš ESP. Ko ste izbrani, bi morali videti nekaj takega v spodnjem levem kotu IDE.
5. KORAK: Naložimo program Blink, da preverimo, ali smo sposobni programirati naš modul ESP32. Ta program mora utripati LED v presledku 1 sekunde.
int LED_BUILTIN = 2; void setup () {pinMode (LED_BUILTIN, IZHOD); } void loop () {digitalWrite (LED_BUILTIN, HIGH); zamuda (1000); digitalWrite (LED_BUILTIN, LOW); zamuda (1000); }
Program je zelo podoben utripajoči kodi Arduino, zato jih ne razlagam podrobno. Toda ena sprememba je ta, da je tu v ESP32 LED na krovu priključen na pin št. 2, medtem ko bo za Arduino povezan s pinom številka 13.
KORAK 6: Če želite naložiti kodo, kliknite nalaganje in konzola Arduino bo prikazala naslednje, če vse deluje po pričakovanjih.
Opomba: Za nekatere module boste med nalaganjem morda morali držati gumb za zagon, da se izognete napakam.
To je to, da smo uspešno naložili prvo kodo na našo ploščo ESP32. Moj modul z utripanjem LED je prikazan spodaj
Lahko poskusite z drugimi primeri programov, ki so na voljo v Datoteka -> Primer -> ESP32 za delo z drugimi funkcijami ESP32. Če ste imeli kakršne koli težave pri pridobivanju tega dela, poizvedbo objavite v spodnjih oddelkih za komentarje. Forum lahko uporabite tudi za tehnično pomoč.