Esp 01 dijagram ožičenja. Wifi modul baziran na ESP8266 čipu. USB-to-TTL pretvarač koji koristi DTR konektor

... Općenito, ovaj materijal nije ograničen samo na jednu Arduino temu.

Tema ESP8266 prilično je teška. Ali, ako radite s ovim Wi-Fi modulima u Arduino IDE razvojnom okruženju, ulazni prag pada na razinu prihvatljivu za prosječnog Arduino korisnika. I ne samo Arduino tip, nego svaka osoba koja ima želju zbrčkati nešto na temu IoT (Internet of Things), a da ne troši puno vremena na čitanje dokumentacije za čip i proučavanje API-ja za te module.

Ovaj video u potpunosti duplicira materijal predstavljen u članku ispod.

Pa, već znamo kako spojiti ESP8266 i staviti ga u način rada za programiranje, a sada prijeđimo na nešto korisnije.

Odmah ću reći da nakon što programiramo modul u Arduino razvojnom okruženju, uništavamo izvorni firmware i više nećemo moći raditi s modulom pomoću AT naredbi. Osobno me ovo ne čini hladnim/vrućim, ali ako nekome treba, pred kraj članka pokazat ću vam kako flashati nativni firmware natrag u modul ili neku vrstu bootloadera poput NodeMcu.

Za početak preuzmite sa službene web stranice Najnovija verzija Arduino IDE, uključen ovaj trenutak ovo je 1.6.7. Starije verzije poput 1.0.5. neće pristajati jer jednostavno nemaju potrebnu funkcionalnost, a ples uz tamburu nas ne zanima, zar ne?

Pokrećemo razvojno okruženje i odmah idemo na File/Settings:

Http://arduino.esp8266.com/stable/package_esp8266com_index.json

Zatim idite na Tools/Board:/Board Manager...:

Pred nama će se pojaviti prozor upravitelja ploče, pomičite se kroz njega do samog dna i ako je sve ispravno napravljeno vidjet ćemo nešto poput ovoga:

Kliknite kursor na natpis " esp8266 po Zajednica ESP8266"nakon toga imamo gumb "Instaliraj", izaberemo željenu verziju, uzmem najnoviju, danas je 2.1.0 i instaliram je. Razvojno okruženje će preuzeti datoteke koje su mu potrebne (oko 150 megabajta) i nasuprot natpis " esp8266 po Zajednica ESP8266 Pojavit će se "INSTALLED", odnosno instalirano:

Pomičemo se nizom popisa ploča i vidimo da imamo mnogo različitih ESP-ova na popisu, uzmite "Generic ESP8266 Module":

Idite na “Alati” i odaberite željeni COM port (za mene je to COM32) Arduino ili USB UART konverter, zatim postavite Brzinu slanja: “115200”:

Postavljamo brzinu na 74880 i "NL & CR" i ponovno ga isključimo i uključimo napajanje i on će odgovoriti s nekim informacijama o otklanjanju pogrešaka:

Imajte na umu da 74880 nije glavna brzina ESP8266, ona samo šalje informacije o otklanjanju pogrešaka. Ako modul ne šalje ništa na konzolu, onda je nešto možda pogrešno spojeno.

Prema zadanim postavkama, brzina bi trebala biti 115200, ali u nekim slučajevima može biti 9600 i drugima... Pa pokušajte pronaći.

Nakon odabira željene brzine šaljemo modul “AT” i on bi trebao odgovoriti da je sve u redu. Naredba "AT+GMR" prikazuje informacije o firmveru.

Prije nego počnete bljeskati ESP8266 Arduino IDE Savjetujem vam da pročitate članak do kraja.

Sada pokušajmo flashati ESP8266 preko Arduino IDE. Stavili smo modul u način rada za programiranje (napisao sam kako to učiniti u prethodnom članku).

Dodajmo standardnu ​​LED lampicu:

// Autor: g. PodelkinTs youtube.com/RazniePodelki // posebno za geektimes.ru/post/271754/ #define TXD 1 // GPIO1/TXD01 void setup() ( pinMode(TXD, OUTPUT); ) void loop() ( digitalWrite(TXD, HIGH); kašnjenje(1000); digitalWrite(TXD, LOW); kašnjenje(1000); )

bljesnuo? Dakle, sve je učinjeno ispravno. Odakle mi da je LED spojena na prvi pin? U prethodnom članku nalazi se slika s pinoutima različitih modula, a tu je i oznaka portova kada se koristi Arduino bootloader (pinovi su označeni ružičastom bojom).

Treperenje LED diode je naravno dobro, ali moramo instalirati neku vrstu web poslužitelja ili početi kontrolirati LED diodu barem pomoću gumba u pregledniku, zar ne? Ali o tome ću vam pričati neki drugi put.

A sada kako vratiti izvorni firmware, i kako čak i flashati modul s bootloaderima trećih strana. Za ESP8266 postoji takav program kao što je NodeMCU Flasher, koji je izvorno namijenjen treptanju NodeMCU pokretačkog programa. No, kako se pokazalo, savršeno bljeska drugi firmware.

Članku ću priložiti arhivu s ovim programom i firmverom radi praktičnosti, ali uvijek možete preuzeti nova verzija NodeMCU Flasher.

U mapi “nodemcu-flasher-master” nalaze se 2 mape Win64 i Win32 i ovisno o bitnoj dubini vašeg OS-a odaberite onu koja vam je potrebna. Zatim u mapi Release pokrenite “ESP8266Flasher.exe” i pogledajte sučelje programa:

Odaberite željeni COM port i idite na karticu "Config", uklonite križić pored "INTERNAL://NODEMCU" i stavite ga jednu točku niže, kao na snimci zaslona:

(Ako želite flashati NodeMCU bootloader, uklonite križić tamo gdje nije bio i stavite ga tamo gdje je bio, to jest blizu "INTERNAL://NODEMCU").

Zatim kliknemo na zupčanik i izaberemo gdje se nalazi naš firmware, firmware je obično u *.bin formatu (u priloženoj arhivi to je “v0.9.5.2 AT Firmware.bin” koji se nalazi u glavnoj mapi), i također odaberite “0x00000” kao i više.

Ponovno se vraćamo na karticu "Rad", stavljamo modul u način rada za programiranje i kliknemo "Flash":

To je to, modul je počeo bljeskati, nakon bljeskanja, ne zaboravite ponovno pokrenuti modul i voila, bljeskao je s firmwareom koji nam je potreban.

Provjeravamo AT naredbom “AT+GMR” jesmo li sve dobro napravili:

Kao što vidite, sve je prošlo glatko.

Stječe sve veću popularnost, a Arduino već preuzima inicijativu - dodaje ove Wi-Fi module na popis podržanih ploča.
Ali kako ga spojiti na Arduino? Je li uopće moguće nekako bez Arduina? Upravo o tome će biti riječi u današnjem članku.

Gledajući unaprijed, reći ću da će biti drugi članak, praktičniji, na temu firmvera i programiranja modula ESP8266 u Arduino IDE razvojnom okruženju. Ali prvo o svemu.

Ovaj video u potpunosti duplicira materijal predstavljen u članku.



Trenutno postoji mnogo varijanti ovog modula, evo nekih od njih:

A ovdje je pinout ESP01, ESP03, ESP12:


*Ovu sliku možete pogledati u dobra kvaliteta Uključeno, Isključeno. web stranica pighixxx.com.

Osobno mi se najviše sviđa verzija ESP07. Barem zbog činjenice da postoji metalni zaslon (štiti mikro krugove od vanjskih smetnji, čime se osigurava stabilniji rad), vlastita keramička antena i priključak za vanjsku antenu. Ispada povezivanjem s njim vanjska antena, na primjer poput bikvadrat, tada možete postići dobar raspon. Osim toga, postoji dosta ulazno/izlaznih portova, tzv. GPIO (General Purpose Input Output - ulazno/izlazni portovi Opća namjena), po analogiji s Arduino - pinovi.

Vratimo se našim Wi-Fi modulima i Arduinu. U ovom članku ću pogledati povezivanje ESP8266 (model ESP01) na Arduino Nano V3.

Ali, ova informacija bit će relevantan za većinu ESP8266 modula i također za razne Arduino ploče, na primjer najpopularnije Arduino UNO.

Nekoliko riječi o ESP01 nogama:

Vcc I GND(na gornjoj slici su 8 i 1) - hrana, po nozi Vcc može se podnijeti, sudeći prema dokumentaciji, od 3 do 3,6 V, A GND- uzemljenje (minus snaga). Vidio sam kako je jedna osoba spojila ovaj modul na dvije AA baterije (napon napajanja je u ovom slučaju bio otprilike 2,7 V) i modul je bio operativan. Ali ipak, programeri su naveli raspon napona u kojem bi modul trebao zajamčeno raditi; ako koristite drugi, to je vaš problem.

Pažnja! Ovaj modul je baziran na 3.3V logici, dok je Arduino uglavnom 5V logika. 5 V može lako oštetiti ESP8266, pa ga je potrebno napajati odvojeno od Arduina.

- Moj Arduino ima nogu na kojoj piše 3,3 V, zašto je ne upotrijebiti?

Vjerojatno ćete pomisliti. Činjenica je da je ESP8266 prilično energično gladan modul, te u vršnim udarima može trošiti struje do 200 mA, a gotovo niti jedan Arduino nije sposoban standardno isporučiti takvu struju, s iznimkom Arduino Due, u kojem struja duž linije od 3,3 V može doseći 800 mA, što je dosta, u drugim slučajevima savjetujem vam da koristite dodatni stabilizator od 3,3 V, na primjer AMS1117 3,3 V. Ima ih dosta i u Kini i kod nas.

Noga RST 6 - namijenjen je hardveru za ponovno pokretanje modula, kratkotrajnom primjenom niske logičke razine na njega, modul će se ponovno pokrenuti. Iako sam to zanemario u videu, ipak vam savjetujem "pritisnite" ovu nogu s otpornikom od 10 kOhm na plus napajanja, kako bih postigao bolju stabilnost u radu modula, inače bih se restartao i na najmanju smetnju.

Noga CP_PD 4 (ili na drugi način EN) - služi, opet, za "žičano" povezivanje modula u način rada za uštedu energije, u kojem troši vrlo malo struje. Pa opet - Ne bi škodilo "pritisnuti" ovu nogu otpornikom od 10 kOhm na plus Pitalova U videu sam glupo kratko spojio ovu nogu na Vcc, jer nisam imao takav otpornik pri ruci.

Noge RXD0 7 TXD0 2 - hardverski UART, koji se koristi za bljeskanje, ali nitko ne zabranjuje korištenje ovih priključaka kao GPIO (GPIO3 odnosno GPIO1). Iz nekog razloga, GPIO3 nije označen na slici, ali je u podatkovnoj tablici:

Usput, do noge TXD0 2 LED dioda “Connect” je spojena i svijetli kada je logička razina na GPIO1 niska ili kada modul šalje nešto putem UART-a.

GPIO0 5 - ne samo da može biti I/O port, već i staviti modul u način rada za programiranje. To se postiže spajanjem ovog priključka na nisku logičku razinu ("pritiskom" na GND) i napajanjem modula. U videu to radim s običnim gumbom. Nakon treptanja ne zaboravite izvući kratkospojnik/pritisnuti gumb (nije potrebno držati gumb tijekom treptanja; kada se uključi, modul prelazi u način programiranja i ostaje u njemu do ponovnog pokretanja).

GPIO2 3 - ulazni/izlazni priključak.

I još jedna važna točka, svaki GPIO Wi-Fi modula može sigurno isporučiti struju do 6mA, da ga ne spali, obavezno postavite otpornike u seriju s uključenim ulazno/izlaznim portovima... Zapamtite Ohmov zakon R = U/I = 3.3V / 0.006 A = 550 Ohm, tj. na 560 Ohma. Ili ga zanemariti, a zatim se pitati zašto ne radi.

U ESP01 svi GPIO-i podržavaju PWM, tako da na naša četiri GPIO-a, odnosno GPIO0-3, možete spojiti motorni drajver, ala L293 / L298, i upravljati dva motora, npr. brodova, ili napraviti RGB Wi-Fi kako god . Da, da, ovaj modul ima puno stvari na brodu, a za jednostavne projekte Arduino violinist nije potreban, samo za flashanje. A ako koristite ESP07, onda su općenito priključci gotovo isti kao i oni u Uno-u, što vam omogućuje da pouzdano radite bez Arduina. Istina, postoji jedan neugodan trenutak, ESP01 uopće nema analogne priključke, a ESP07 ima samo jedan, nazvan ADC. To naravno otežava rad s analognim senzorima. U ovom slučaju pomoći će Arduino analogni multiplekser.

Čini se da je sve objašnjeno pinoutom, a evo dijagrama za spajanje ESP8266 na Arduino Nano:

Vidite li kratkospojnik na RST i GND pinovima na Arduino Nano? Ovo je neophodno kako Arduino ne bi ometao firmware modula; u slučaju spajanja ESP8266 pomoću Arduina, to je preduvjet.

Također, ako se spojite na Arduino, RX modula mora ići na RX arduina, TX - TX. To je zato što je čip pretvarača već spojen na Arduino pinove u križnom uzorku.

Također je važan otpornički razdjelnik koji se sastoji od otpornika od 1 kOhm i 2 kOhm (može se napraviti od dva otpornika od 1 kOhm spajanjem u seriju) duž RX linije modula. Jer Arduino je 5 V logika, a modul je 3.3. Ispada da je ovo primitivan pretvarač razine. Mora biti tu, jer noge RXD TXD modula nisu tolerantne na 5 V.

Pa, možete u potpunosti bez Arduina spajanjem ESP8266 putem običnog USB-UART pretvarača. U slučaju spajanja na Arduino, u biti koristimo standardni pretvarač usb sučelja i uart, zaobilazeći mozak. Pa zašto trošiti dodatni novac ako uopće možete bez Arduina? Samo u ovom slučaju spajamo RXD modula na TXD pretvarača, TXD - RXD.

Ako ste lijeni da se mučite s vezama, petljate s otpornicima i stabilizatorima, tu su gotova NodeMcu rješenja:

Ovdje je sve puno jednostavnije: priključite kabel u računalo, instalirajte upravljačke programe i program, samo nemojte zaboraviti upotrijebiti kratkospojnik/gumb na GPIO0 za prebacivanje modula u način rada firmvera.

Pa, to je vjerojatno sve s teorijom, članak se pokazao prilično dugim, a praktični dio, ala firmware i programiranje modula, objavit ću malo kasnije.

Mnogi su korisnici već obratili pažnju na čip ESP8266-12, koji je objavio Espressif. Cijena mu je znatno jeftinija u odnosu na standardnu ​​Bluetooth adaptersku ploču, a unatoč manjim dimenzijama ima znatno veće mogućnosti. Sada svi kućni hobisti imaju priliku raditi Wi-Fi mreže u dva načina odjednom, odnosno spojite računalo na bilo koju pristupnu točku ili ga uključite kao takvu točku.

S druge strane, morate ispravno shvatiti da takve ploče nisu samo štitovi namijenjeni samo za Wi-Fi komunikaciju. Sam ESP8266 je mikrokontroler koji ima svoja UART, GPIO i SPI sučelja, odnosno može se koristiti kao potpuno autonomna oprema. Nakon izlaska ovog čipa mnogi su ga nazvali pravom revolucijom, a s vremenom će se ovakvi uređaji početi ugrađivati ​​iu većinu jednostavne vrste tehnologiju, ali zasad je uređaj relativno nov i za njega ne postoji stabilan firmware. Mnogi stručnjaci diljem svijeta pokušavaju izmisliti vlastiti firmware, jer njihovo postavljanje na ploču zapravo nije teško, ali unatoč raznim poteškoćama, uređaj se već može nazvati sasvim prikladnim za rad.

Trenutačno se razmatraju samo dvije mogućnosti prijave ovog modula:

  • Korištenje pločice u kombinaciji s dodatnim mikrokontrolerom ili računalom koje će upravljati modulom preko UART-a.
  • Neovisno pisanje firmvera za čip, što vam omogućuje da ga kasnije koristite kao samodostatan uređaj.

Sasvim je prirodno da bismo trebali uzeti u obzir neovisni firmware u ovom slučaju nećemo.

Gledajući jednostavnost korištenja i dobre karakteristike, mnogi ljudi među mnogim mikrokontrolerima daju prednost modelu ESP8266. Povezivanje i ažuriranje firmvera ovog uređaja je izuzetno jednostavan i pristupačan, a proizvodi se na istom hardveru na kojem se oprema spaja na računalo. Odnosno i preko USB-TTL konvertera ili, ako netko više voli druge opcije povezivanja, može i preko RPi i Arduina.

Kako provjeriti?

Da biste provjerili funkcionalnost novokupljenog uređaja, morat ćete koristiti poseban stabilizirani izvor napona od 3,3 volta. Odmah je vrijedno napomenuti da je stvarni raspon napona napajanja ovog modula od 3 do 3,6 volti, a opskrba povećanim naponom odmah će dovesti do činjenice da ćete jednostavno oštetiti svoj ESP8266. Nakon takve situacije, firmware i drugi softver mogu početi raditi neispravno, pa ćete morati popraviti uređaj ili ga nekako popraviti.

Za određivanje funkcionalnosti ovog modela mikrokontrolera potrebno je samo spojiti tri pina:

  • CH_PD i VCC spojeni su na napajanje od 3,3 volta.
  • GND se spaja na masu.

Ako ne koristite ESP-01, već neki drugi modul, a on već u početku ima izlaz GPIO15, tada ćete ga u tom slučaju morati dodatno spojiti na masu.

Ako se tvornički firmver normalno pokrenuo, onda u ovom slučaju možete vidjeti i tada će plavo svjetlo zatreptati nekoliko puta. Međutim, vrijedi napomenuti da nemaju svi uređaji serije ESP8266 crveni indikator napajanja. Firmware na nekim uređajima ne predviđa da crveni indikator svijetli ako ga modul nema (osobito se to odnosi na model ESP-12).

Nakon povezivanja s vašim bežična mreža aktivirat će se nova pristupna točka koja će se zvati ESP_XXXX i bit će vidljiva s bilo kojeg uređaja koji ima pristup Wi-Fi-ju. U ovom slučaju, naziv pristupne točke izravno ovisi o proizvođaču firmvera koji koristite i stoga može biti nešto drugačije.

Ako se točka ipak pojavi, možete nastaviti s eksperimentiranjem, u protivnom ćete morati ponovno provjeriti napajanje, kao i ispravnost spojeva GND i CH_PD, a ako je sve ispravno spojeno, najvjerojatnije još uvijek pokušavate koristite pokvareni modul ili na Jednostavno ima instaliran firmware s nestandardnim postavkama.

Kako ga brzo spojiti?

Standardni komplet potreban za spajanje ovog modula uključuje sljedeće:

  • sam modul;
  • matična ploča bez lemljenja;
  • kompletan set žensko-muških žica namijenjenih matičnoj ploči ili poseban DUPONT M-F kabel;
  • USB-TTL pretvarač baziran na PL2303, FTDI ili nekom sličnom čipu. Najbolja opcija je ako se RTS i DTR također izlaze na USB-TTL adapter, jer zahvaljujući tome možete postići prilično brzo učitavanje firmware-a iz nekog UDK-a, Arduino IDE-a ili Sminga, a da čak i ne morate ručno prebacivati ​​GPIO0 na masu.

Ako koristite pretvarač od 5 volti, tada ćete u ovom slučaju morati kupiti dodatni stabilizator snage na bazi 1117 čipa ili neki sličan, kao i izvor napajanja (za standardni 1117, čak i obični 5- volt punjač za pametni telefon je sasvim prikladan). Preporuča se ne koristiti Arduino IDE ili USB-TTL kao izvor napajanja za ESP8266, već koristiti poseban, jer se time u konačnici možete riješiti mnogih problema.

Prošireni set za udoban i stalan rad modula zahtijeva upotrebu dodatnih otpornika, LED dioda i DIP prekidača. Osim toga, možete koristiti i jeftine USB monitor, što će vam omogućiti stalno praćenje količine potrošene struje, a također će pružiti malu zaštitu za USB sabirnicu od

Što nam je činiti?

Prije svega, vrijedi napomenuti činjenicu da se u ESP8266 kontrole mogu malo razlikovati ovisno o tome koji model koristite. Danas postoji dosta takvih modula, a prvo što trebate je identificirati model koji koristite i odlučiti se o njegovom rasporedu pinova. U ovoj uputi govorit ćemo o radu s ESP8266 ESP-01 V090 modulom, a ako koristite neki drugi model s GPIO15 pinom (HSPICS, MTDO), morat ćete ga povući na zemlju i za standardno pokretanje modul i za korištenje načina firmvera.

Nakon toga još jednom provjerite je li napon napajanja za spojeni modul 3,3 volta. Kao što je gore spomenuto, dopušteni raspon je od 3 do 3,6 volti, a ako se poveća, uređaj ne radi, ali napon napajanja može čak biti znatno niži od 3 volta navedenih u dokumentima.

Ako koristite 3,3-voltni USB-TTL pretvarač, spojite modul točno kao što je prikazano na lijevoj strani donje slike. Ako koristite isključivo USB-TTL od pet volti, obratite pozornost na desnu stranu slike. Mnogi mogu misliti da je pravi krug učinkovitiji zbog činjenice da koristi zasebni izvor napajanja, ali zapravo u slučaju USB-TTL aplikacije Za 5-voltni pretvarač, vrlo je preporučljivo napraviti i dodatni razdjelnik otpornika kako bi se osiguralo podudaranje logičkih razina od 3 volta i 5 volti ili jednostavno koristiti modul za pretvorbu razine.

Značajke povezivanja

Desna slika prikazuje spajanje UTXD (TX), kao i URXD (RX) ovog modula na pet voltnu TTL logiku, a takve postupke provodite isključivo na vlastitu odgovornost i odgovornost. Za ESP8266, opis kaže da modul učinkovito radi samo s 3,3-voltnom logikom. U velikoj većini slučajeva, čak i pri radu s pet voltnom logikom, oprema ne kvari, ali takve se situacije povremeno događaju, pa se takav spoj ne preporučuje.

Ako nemate priliku koristiti specijalizirani 3,3-voltni USB-TTL pretvarač, možete koristiti razdjelnik otpornika. Također je vrijedno napomenuti da je na desnoj slici stabilizator snage 1117 spojen bez dodatnog ožičenja i ovo je stvarno radna tehnologija, ali ipak je najbolje koristiti dijagram povezivanja 1117 s ožičenjem kondenzatora - morate ga provjeriti s podatkovnu tablicu ESP8266 za vaš stabilizator ili upotrijebite potpuno gotov jedan modul temeljen na bazi 1117.

Da biste pokrenuli modul, morate otvoriti krug GPIO0-TND, nakon čega možete uključiti napajanje. Vrijedno je napomenuti da sve treba učiniti upravo ovim redoslijedom, odnosno prvo se uvjeriti da GPIO0 "visi u zraku", a tek onda priključiti napajanje na CH_PD i VCC.

Kako se ispravno spojiti?

Ako možete odvojiti više od jedne večeri za ispravno povezivanje modula ESP8266, možete koristiti stabilniju opciju. Na gornjem dijagramu vidite opciju povezivanja s automatsko preuzimanje firmware.

Vrijedno je napomenuti da gornja slika ne prikazuje upotrebu besplatnih GPIO-a ili ADC-ova, a njihovo povezivanje izravno će ovisiti o tome što točno želite implementirati, ali ako želite osigurati stabilnost, ne zaboravite povući sve GPIO-e na napajanje i ADC-ove na uzemljenje pomoću pull-up otpornika.

Ako je potrebno, otpornici od 10k mogu se zamijeniti bilo kojim drugim u rasponu od 4,7k do 50k, isključujući GPIO15, budući da njegova vrijednost ne smije biti veća od 10k. Vrijednost kondenzatora koji izglađuje visokofrekventne pulsacije može biti malo drugačija.

Povezivanje RESET-a i GPIO16 pomoću otpornika dubokog mirovanja od 470 Ohma može postati neophodno kada se koristi odgovarajući način rada, budući da za izlazak iz načina dubokog mirovanja modul izvodi potpuno ponovno pokretanje primjenom niske razine na GPIO16. S odsutnošću ove veze Način dubokog mirovanja za vaš modul trajat će zauvijek.

Na prvi pogled može se činiti da su GPIO0, GPIO1 (TX), GPIO2, GPIO3 (RX) i GPIO15 zauzeti, pa ih nećete moći koristiti za svoje potrebe, ali zapravo to nije tako. Dovoljno visoka razina na GPIO0 i GPIO2, kao i niska razina na GPIO15, mogu biti potrebne samo za početno pokretanje modula, au budućnosti ih možete koristiti prema vlastitom nahođenju. Jedina stvar vrijedna pažnje je da ne zaboravite osigurati potrebne razine prije izvođenja potpunog resetiranja vaše opreme.

Također možete koristiti TX, RX kao alternativu GPIO1 i GPIO3, ali ne zaboravite da nakon pokretanja modula, svaki firmware počinje "povlačiti" TX, dok istovremeno šalje informacije o ispravljanju pogrešaka na UART0 brzinom od 74480, ali nakon što preuzimanje bude uspješno, mogu se koristiti ne samo kao UART0 za razmjenu podataka s drugim uređajem, već i kao standardni GPIO-ovi.

Za module koji imaju mali broj ožičenih pinova (na primjer, ESP-01), nema potrebe za spajanjem poništenih pinova, odnosno samo GND, CH_PD, VCC, GPIO0, GPIO2 i RESET su ožičeni na ESP-01 , i to je ono što vam treba trebat će se zategnuti. Nema potrebe za lemljenjem izravno na ESP8266EX čip i zatim povlačenjem golih pinova osim ako vam to stvarno ne treba.

Takvi dijagrami ožičenja korišteni su nakon velikog broja eksperimenata koje su proveli kvalificirani stručnjaci i prikupljeni iz mnoštva različitih informacija. Vrijedno je napomenuti da se čak ni takve sheme ne mogu smatrati idealnim, jer se mogu koristiti brojne druge, ne manje učinkovite opcije.

Povezivanje putem Arduina

Ako iz nekog razloga nemate 3,3 voltni USB-TTL pretvarač, tada se WiFi modul ESP8266 može spojiti preko Arduina s ugrađenim pretvaračem. Ovdje ćete najprije morati obratiti pozornost na tri glavna elementa:

  • Kada se koristi s ESP8266, Arduino Reset je inicijalno spojen na GND kako bi se spriječilo pokretanje mikrokontrolera, au ovom obliku se koristio kao transparentni USB-TTL pretvarač.
  • RX i TX nisu bili povezani "na raskrižju", već izravno - RX-RX (zeleno), TX-TX (žuto).
  • Sve ostalo je spojeno točno kako je gore opisano.

Što treba uzeti u obzir

Ovaj sklop također zahtijeva usklađivanje TTL razina od 5 volti na Arduinu, kao i 3,3 volta na ESP8266, ali može funkcionirati prilično dobro u svakom slučaju.

Kada je spojen na ESP8266, Arduino može biti opremljen regulatorom snage koji ne može podnijeti struju potrebnu za ESP8266, tako da ćete morati provjeriti podatkovnu tablicu za onaj koji koristite prije nego što ga aktivirate. Nemojte pokušavati spojiti bilo koje druge komponente koje troše energiju s ESP8266, jer to može uzrokovati kvar regulatora snage ugrađenog u Arduino.

Postoji još jedna shema povezivanja ESP8266 i Arduina koja koristi SoftSerial. Budući da je za biblioteku SoftSerial brzina porta 115200 previsoka i ne može jamčiti stabilan rad, ovaj način povezivanja se ne preporučuje, iako postoje neki slučajevi u kojima sve radi prilično stabilno.

Povezivanje preko RaspberryPi

Ako uopće nemate USB-TTL pretvarače, onda možete koristiti RaspberryPi. U ovom slučaju, za ESP8266, programiranje i povezivanje provode se gotovo identično, ali ovdje sve nije tako zgodno, a osim toga morat ćete koristiti i stabilizator snage od 3,3 volta.

Za početak spojimo RX, TX i GND našeg uređaja na ESP8266, a GND i VCC uzmemo s onog namijenjenog za 3,3 volta. Ovdje posebnu pozornost treba obratiti na to da je potrebno spojiti sve GND uređaje, odnosno RaspberryPi stabilizator i ESP8266. Ako stabilizator ugrađen u vaš model uređaja može izdržati do 300 miliampera dodatnog opterećenja, tada je u ovom slučaju povezivanje ESP8266 sasvim normalno, ali sve to radite samo na vlastitu odgovornost i rizik.

Postavljanje parametara

Nakon što ste shvatili kako spojiti ESP8266, trebate provjeriti jesu li upravljački programi za vaše uređaje ispravno instalirani, zbog čega je sustavu dodan novi virtualni serijski port. Ovdje ćete morati koristiti program - terminal serijskog porta. U principu, možete odabrati bilo koji uslužni program koji odgovara vašem ukusu, ali morate ispravno shvatiti da svaka naredba koju šaljete na serijski port mora imati znakove na kraju CR+LF na kraju.

Uslužni programi CoolTerm i ESPlorer prilično su rašireni, a potonji vam omogućuje da ne unosite sami ESP8266, a istovremeno olakšava rad s lua skriptama pod NodeMCU, tako da se može koristiti kao standardni terminal.

Za normalnu vezu s, morat ćete obaviti puno posla, budući da je firmware za ESP8266 uglavnom raznolik i aktivacija se može provesti na različite brzine. Da biste se odlučili za najbolju opciju, morat ćete proći kroz tri glavne opcije: 9600, 57600 i 115200.

Kako sortirati?

Za početak, spojite se na virtualni serijski priključak u terminalskom programu, postavljajući parametre na 9600 8N1, zatim izvršite potpuno ponovno pokretanje modula, isključite CH_PD (chip enable) iz napajanja, a zatim ga ponovno aktivirajte trzajem CH_PD. Također možete izvršiti kratko RESETIRANJE na masu kako biste resetirali modul i promatrali podatke u terminalu.

Prije svega, LED diode uređaja trebale bi izgledati točno onako kako je prikazano u postupku testiranja. Također biste trebali promatrati set u terminalu razni likovi, koji će završiti s spremnom linijom, a ako je nema, provodi se ponovno spajanje na terminal drugom brzinom, nakon čega slijedi ponovno pokretanje modula.

Kada vidite jednu od opcija brzine ovu liniju, modul se može smatrati spremnim za rad.

Kako ažurirati firmware?

Nakon što instalirate ESP8266, bit će potrebno samo nekoliko sekundi za povezivanje uređaja, a zatim možete početi ažurirati firmware. Za instaliranje novog softver trebate učiniti sljedeće.

Za početak preuzmite novu verziju firmvera sa službene web stranice, a također preuzmite posebna korisnost za firmware. Ovdje treba obratiti posebnu pozornost na ono što operacijski sustav instaliran na stroju s kojim radi ESP8266. Najbolje je uređaj spojiti na sustave starije od Windows 7.

Za standardne Windows operativne sustave optimalno bi bilo koristiti program pod nazivom XTCOM UTIL, koji je posebno zgodan za korištenje ako se firmware sastoji od samo jedne datoteke. Najbolja opcija za više platformi je uslužni program esptool, koji, međutim, zahtijeva python, kao i potrebu za određivanjem parametara putem naredbeni redak. Osim toga, ESP8266 vam omogućuje prikladno povezivanje glavnih funkcija s Flash Download Toolom, koji ima prilično velik broj postavki, kao i prikladnu tehnologiju za instaliranje firmvera iz nekoliko datoteka.

Zatim odspojite svoj terminalski program sa serijskog porta, a također potpuno odspojite CH_PD od napajanja, spojite GPIO0 modula na GND, nakon čega se CH_PD može vratiti natrag. U konačnici, samo pokrenite modularni firmware program i učitajte ga u ESP8266 relej.

U velikoj većini slučajeva firmware se učitava u modul brzinom od oko 115200, ali poseban način rada osigurava automatsku raspodjelu brzine, zbog čega se firmware može izvršiti brzinom većom od 9600, ažurirajući dostupne funkcije ESP8266. Arduino je korišten za povezivanje ili USB-TTL - ovdje ne igra posebnu ulogu, a ovdje maksimalna brzina već ovisi o duljini žica, korištenom pretvaraču i nizu drugih čimbenika.

Kineska tvrtka Espressif 2014. godine počela je s prodajom Wi-Fi modula temeljenih na ESP8266 čipovima. koji je odmah stekao veliku popularnost među radioamaterima zbog niske cijene i velikih mogućnosti. Danas postoji veliki broj različitih modula temeljenih na čipu ESP8266; u ovom ću članku govoriti o ESP-01.

Tehničke specifikacije

Napon napajanja: 3V ~ 3,6V
Maksimalna radna struja: 220mA
Radna frekvencija: 2,4 GHz
Načini rada: P2P (klijent), soft-AP (pristupna točka)
Broj GPIO-ova: 2.
Flash memorija: 1024 kb.
izlazna snaga u 802.11b načinu rada: +19,5dBm
podrška bežični standard: 802.11 b/g/n
Dimenzije: 24,8 mm x 14,3 mm x 8 mm

Opće informacije o ESP-01

U biti, čip ESP8266 je minijaturni mikrokontroler s Wi-Fi odašiljačem koji može raditi potpuno autonomno, bez dodatna naknada Arduino. Pomoću modula ESP-01 možete prenositi podatke o temperaturi, vlažnosti, uključiti relej i tako dalje. Za jednostavnu upotrebu čipa ESP8266, proizvođač je proizveo niz modula od ESP-01 do ESP-14. Prvi u ovoj seriji je modul ESP-01 (postoji i ESP-01S, o tome malo kasnije), koji je jedan od najpoznatijih zbog svoje cijene i malih dimenzija, samo 14,3 mm sa 24,8 mm. Ali ima dva nedostatka: ograničena količina programirani GPIO pinovi i njihov nezgodan položaj (nezgodan za raspored).


Modul ESP-01 je mala pločica crne boje na kojoj su smještena dva glavna čipa, mikrokontroler ESP8266 i flash memorija od 1 MB. U blizini je kvarcitni rezonator i tiskana antena. Ploča ima dvije LED diode, crvenu i plavu. Crvena LED dioda svijetli kada modul ima napajanje, a plava trepće kada se izvršavaju naredbe (crvena LED je uklonjena iz NSP-01S zbog konstantne potrošnje struje). Za spajanje modula ESP-01 predviđeno je osam pinova (dva reda po četiri pina, razmak od 2,54 mm), dva gotova su digitalni ulaz-izlaz, podržavajući modulaciju širine impulsa. Iako modul prema zadanim postavkama ima dvije GPIO pinove, možete koristiti druge dostupne pinove ako imate potreban alat za lemljenje.


Dodjela pinova
GND: Napajanje modula "-".
GPIO2:(Digitalni I/O programabilan)
GPIO0:(Digitalni I/O programabilan, također se koristi za načine pokretanja)
RX: UART prijem
TX: UART prijenos
CH_PD:(uključivanje/isključivanje, mora biti izlaz na 3,3 V izravno ili preko otpornika)
RST: resetirati, trebate ga povući na 3.3V
VCC: Napajanje modula “3.3V”.

Spajanje modula
Za rad modula ESP-01 potreban je izvor napajanja istosmjerna struja, koji bi trebao proizvoditi 3,3 V i struju od najmanje 250 mA. Nažalost, standardni stabilizator instaliran na Arduinu nije u stanju isporučiti potrebnu struju za rad ESP-01 (ako ipak odlučite spojiti ESP-01, očekujte nestabilan rad i stalno ponovno pokretanje). Osim toga, logički signal ovog modula dizajniran je za 3,3 V, odnosno napon od 3,3 V mora se primijeniti na RX pin, a napon od 3,3 V će se napajati iz TX pina (isto za ostale pinove ). Ako trebate spojiti modul na Arduino ili druge kontrolere koji izlaze 5 V na logički pin, morate koristiti otpornike ili modul logičke razine; ako se spojite izravno, modul neće uspjeti.

Pažnja! ESP-01 su vrlo kapriciozni kada je napajanje u pitanju, morate koristiti vanjski regulator napona od 3,3 V, ja ću koristiti USB adapter kao prvi primjer

Iz gornje tablice može se vidjeti da ESP-01 modul može raditi u nekoliko načina mirovanja, uz minimalnu potrošnju struje, poziva ih softver, osim zadnjeg “Power Off”, kako bi se omogućilo ovaj način rada, trebate instalirati kratkospojnik između GPIO16 i RST, primjer ću dati kasnije.

Instaliranje ESP8266 u Arduino IDE

Preuzmite Arduino IDE program s web stranice arduino.cc
Zatim trebate instalirati ESP ploču u Arduino IDE. Da biste to učinili, pokrenite Arduino IDE program i otvorite: Datoteka -> Postavke.
U novom otvoren prozor, u polju " Dodatne veze za PCB Manager:» dodaj vezu:

Http://arduino.esp8266.com/stable/package_esp8266com_index.json

U otvorenom prozoru potražite " esp8266 od ESP8266 zajednice y" i pritisnite " Instalirati". Instalacija će trajati nekoliko minuta, a zatim se prikazuje poruka " instalirano", kliknite " Zatvoriti«

kliknite " Alati -> Ploče -> Generis ESP8266 modul«.

Sada trebate spojiti ESP-01 modul na računalo putem posebnog USB adaptera na CH340G čipu


Podešavanje frekvencije procesora " CPU frekvencija: "80 MHz"", brzina" Brzina slanja: "115200"" i odaberite " Luka«.

Zatim prenosimo skicu koja će natjerati ESP8266 da trepće LED.

/* Testirano na Arduino IDE 1.8.5 Datum testiranja 15.6.2018. */ #define TXD 1 // GPIO1 / TXD01 void setup() ( pinMode(TXD, OUTPUT); ) void loop() ( digitalWrite(TXD, HIGH); delay(1000); digitalWrite(TXD, LOW); delay( 1000);)