Sadržaj:

3 jednostavna načina programiranja ESP8266 12X modula: 5 koraka (sa slikama)
3 jednostavna načina programiranja ESP8266 12X modula: 5 koraka (sa slikama)

Video: 3 jednostavna načina programiranja ESP8266 12X modula: 5 koraka (sa slikama)

Video: 3 jednostavna načina programiranja ESP8266 12X modula: 5 koraka (sa slikama)
Video: Extract GPS location in Arduino with NEO-6m or NEO-7M module 2024, Novembar
Anonim
3 jednostavna načina programiranja ESP8266 12X modula
3 jednostavna načina programiranja ESP8266 12X modula

Ako niste upoznati s mikrokontrolerom ESP8266, zaista osjećam da ste propustili! Ove stvari su nevjerojatne: jeftine su, moćne i najbolje od svega što imaju ugrađeni WiFi! ESP8266 je započeo svoje putovanje kao dodatak WiFi-u za tradicionalnije Arduino ploče, ali je ubrzo zajednica shvatila njihovu moć i dodala podršku da biste mogli direktno programirati s Arduino IDE -om.

Ovih dana, ako želite koristiti ESP8266 za svoj projekt, preporučio bih vam upotrebu razvojne ploče kao što je Wemos D1 Mini* (isporučeno 2,50 USD !!) ili Adafruit Feather Huzzah. Ove ploče imaju razbijene sve upotrebljive pinove, lako se programiraju preko njihovog mikro USB konektora i imaju ugrađen regulator od 3,3 V. Ali šta ako želite da koristite ESP8266 u projektu sa prilagođenom štampanom pločom? Najlakši način je korištenje ESP12 modula, a u ovom uputstvu pokazat ću vam nekoliko jednostavnih načina programiranja.* = Affiliate Link

Korak 1: Pogledajte video

Evo videozapisa sa svim podacima koji se nalaze u Instructable -u ako to želite provjeriti. Na svom kanalu puno radim s ESP8266s pa moj kanal općenito možda vrijedi pogledati ako vas takve stvari zanimaju!

Korak 2: Predkorak: Postavljanje za programiranje ESP8266

Image
Image

Ako nikada prije niste koristili ESP8266 ili Arduino, morat ćemo malo postaviti softver. Za to imam namjenski video. Traje samo 5 minuta i prolazi kroz sve što vam je potrebno za postavljanje.

Ako vam videozapisi baš i ne odgovaraju, pogledajte lekciju 2 Beckyne odlične IoT klase, koja obuhvaća i sve što vam je potrebno.

Prije nego što prijeđete na sljedeći odjeljak, trebali biste moći učitati jednostavnu skicu na ESP8266 (kao što je primjer treptaja koji se spominje i u videu i u Beckynoj lekciji)

Korak 3: Metoda 1: Pin -programer "Žaba"

Metoda 1
Metoda 1

Ovo je vjerovatno najjednostavniji način programiranja ESP12 modula. U osnovi jednostavno ubacite modul u ploču, a zatim će se ponašati točno kao jedna od ranije spomenutih razvojnih ploča. Odabrao sam Wemos D1 Mini ploču s padajućih ploča pri programiranju. Postoje nedostaci ove metode:

  • Programer je malo skup ako napravite samo nekoliko ploča.
  • Ploče se mogu programirati samo na ovaj način prije nego što budu lemljene na vašu PCB

Ovaj koji sam kupio je sa Aliexpress -a, ali vjerujem da je originalni dizajner korisnik Tindie -a po imenu Fred. Tada su bili rasprodani pa sam na kraju otišao s Aliexpressom, ali povezat ću se na oboje.

  • Aliexpress Pop-in ESP modul programator*
  • Fred's Frog Pin ESP Module Programmer

* = Partnerska veza

Korak 4: Metoda 2: Korištenje u osnovi bilo kojeg USB -serijskog pretvarača

Metoda 2: Korištenje u osnovi bilo kojeg USB -serijskog pretvarača
Metoda 2: Korištenje u osnovi bilo kojeg USB -serijskog pretvarača
Metoda 2: Korištenje u osnovi bilo kojeg USB -serijskog pretvarača
Metoda 2: Korištenje u osnovi bilo kojeg USB -serijskog pretvarača
Metoda 2: U osnovi se koristi bilo koji USB u serijski pretvarač
Metoda 2: U osnovi se koristi bilo koji USB u serijski pretvarač

Za sljedeću metodu ručno ćemo staviti ESP modul u način programiranja, a zatim koristiti u osnovi bilo koji USB na serijski pretvarač za programiranje ESP8266, čak i ovaj PL2303* koji košta 50 c isporučenih radova!

Normalan rad:

Prije nego počnemo s programiranjem, prvo moramo pogledati koje vanjske komponente ESP8266 treba za pokretanje. Za normalan rad, ESP-12 modulu je potrebno sljedeće

  • EN, RST i GPIO 0 potrebno je povući visoko pomoću 10K otpornika
  • GPIO 15 treba povući na uzemljenje pomoću 10K otpornika
  • Napajanje od 3,3 V koje podržava struju od oko 250 mA (preporučuje se kapa između VCC i GND)

S gornjom konfiguracijom, ESP8266 će se, kad je uključen, nalaziti u normalnom načinu rada, pa će pokretati sve skice koje ste na njega programirali. Možete kupiti ploče za razbijanje za ESP-12 module* koje su zaista korisne za testiranje različitih postavki. Moduli imaju otpornike postavljene za EN i GPIO 15 pinove, pa ćete i dalje morati dodati pull-up otpornik za RST i GPIO 0,

Omogućavanje načina programiranja:

Da biste ga prebacili u način programiranja, GPIO 0 treba spustiti pri pokretanju ESP -a. Najlakši način za to je dodavanje gumba u GPIO 0 i RST pina koji se na pritisak spajaju na masu. Zatim jednostavno omogućite način rada bljeskalice

  • Držite pritisnuto dugme GPIO 0
  • Pritisnite dugme RST
  • Zatim otpustite oba dugmeta

Ne morate izvoditi ovu sekvencu u bilo koje određeno vrijeme tokom procesa otpremanja ili bilo čega drugog, nakon što je ESP u načinu programiranja, ostat će tamo do sljedećeg resetiranja, pa samo izvedite korake bilo kada prije postavljanja.

Programiranje sa USB na serijski adapter:

Omogućavanje programskog moda je samo pola uspjeha, sada moramo programirati modul. Većina USB -serijskih adaptera ne može osigurati dovoljno struje za ESP8266, pa se preporučuje da napajate ESP8266 pomoću vanjskog izvora od 3,3 V.

Za povezivanje programatora morate spojiti sljedeće pinove (također prikazane na gornjoj slici):

  • Spojite TX programera na RX na ESP8266 (Nije tipkarska greška, veze su obrnute)
  • Spojite RX programera na TX na ESP8266
  • Spojite masu programatora na masu ESP8266

Da biste učitali svoju skicu, učinite sljedeće:

  • Odaberite broj porta vašeg serijskog adaptera (Alati-> Port)
  • Omogućite način programiranja na vašem ESP8266 kako je gore opisano
  • Pritisnite dugme za otpremanje. (Ako ne uspije, provjerite ožičenje i pokušajte ponovo postaviti ploču u način programiranja)
  • Pritisnite dugme za poništavanje kada se učitavanje završi

Evo postavki ploče koje sam koristio prilikom postavljanja na ovaj način:

  • Ploča: Generički modul ESP8266
  • Režim blica: DIO
  • Veličina blica: 4M (3M Spiffs)
  • Način resetiranja: ck
  • Frekvencija blica: 40MHz
  • Brzina otpremanja: 115200

Posljednje što treba napomenuti je definicija LED_BUILIN za generički ESP8266 modul koja pokazuje na pin 1, ali ugrađena LED dioda ESP12 modula je povezana na pin 2 (i ona je aktivna nisko kao FYI). Dakle, ako testirate treptajuću skicu, morat ćete koristiti broj 2 umjesto LED_BUILTIN

* = Partnerska veza

Korak 5: Metoda 3: Automatsko resetiranje programera pomoću NodeMCU -a

Metoda 3: Automatsko resetiranje programera pomoću NodeMCU -a
Metoda 3: Automatsko resetiranje programera pomoću NodeMCU -a
Metoda 3: Automatsko resetiranje programera pomoću NodeMCU -a
Metoda 3: Automatsko resetiranje programera pomoću NodeMCU -a

Ako ste koristili bilo koju razvojnu ploču za ESP, primijetili ste da u osnovi sve od njih ne zahtijevaju da ručno omogućite način programiranja pomoću gumba, pa kako to rade?

Većina USB -a na serijske čipove ima dodatne pinove koji emituju signale u različitim fazama procesa otpremanja, a upotrebom nekih spoljnih kola moguće je pokrenuti nisku vrijednost GPIO 0 i potrebno je resetiranje. RuiMoteiro ima instrukcije o ovoj temi koristeći FTDI ploču i ESP8266.

Ali mislim da postoji jednostavniji pristup ovome, a ono što je još bolje je velika šansa da već imate sve što vam je potrebno da to učinite! Kao programer možete koristiti razvojnu ploču ESP8266, poput NodeMCU -a*.

Koja je prednost korištenja NodeMCU -a?

Glavne prednosti korištenja NodeMCU -a kao programera su sljedeće:

  • ESP8266 možete napajati izravno sa 3V pinova NodeMCU -a
  • Rukovat će automatskim resetiranjem/omogućavanjem načina programiranja
  • Dostava košta oko 2,50 USD (i može se koristiti kao redovna razvojna ploča kada ne programirate druge!)

Ovaj isti pristup možete koristiti sa bilo kojom razvojnom pločom koja izlaže pin za omogućavanje čipa ESP8266.

Kako to radi?

Ideju o tome dobio sam od YouTubera koji se zove Mika Kurkela, u svom videu je koristio NodeMCU za programiranje ESP-01 modula, ali istu ideju možemo koristiti i za ESP12 modul.

U osnovi ćemo onemogućiti ESP8266 na NodeMCU prisiljavanjem EN pina na nisko, što će spriječiti pokretanje ESP8266 modula na NodeMCU. Zatim ćemo spojiti sve relevantne pinove NodeMCU ploče na naš vanjski ESP8266.

Ožičenje

Da biste ga povezali, trebat će vam standardno ožičenje ESP8266 kao što je prikazano u prethodnom koraku, a zatim dodati sljedeće veze (također prikazane na gornjoj slici):

  • Spojite 3V NodeMCU -a na VCC na ESP8266
  • Spojite GND na GND
  • Spojite TX NodeMCU -a na TX ESP8266 (ovo se razlikuje od prethodnog koraka)
  • Povežite RX NodeMCU -a sa RX -om ESP8266
  • Spojite D3 NodeMCU -a na GPIO 0 ESP8266 (D3 je GPIO 0 na ESP8266)
  • Spojite RST NodeMCU -a na RST ESP8266
  • Spojite EN NodeMCU -a na GND

Otpremanje skice

Nakon što povežete ESP8266, morate učiniti sljedeće:

  • Odaberite broj porta NodeMCU (Alati-> Port)
  • Odaberite vrstu ploče "NodeMCU 1.0 (ESP12-E modul)"
  • Kliknite na upload

I to je to! Automatski će omogućiti način programiranja i automatski će se poništiti po završetku postavljanja, pa će započeti izvršavanje skice.

Koristeći ovo u dizajnu ploča

Da biste koristili ovu metodu u dizajnu ploča, jednostavno morate izvaditi sljedeće pinove:

  • Ground
  • GPIO 0
  • VCC
  • TX
  • RX
  • RST

A kad želite programirati ploče, povežite ih kao što je gore navedeno.

Nadamo se da vam je ovaj Instructable koristan, ako imate pitanja, slobodno pitajte!

* = Partnerska veza

Preporučuje se: