3 mënyra të thjeshta të programimit të një moduli ESP8266 12X: 5 hapa (me fotografi)
3 mënyra të thjeshta të programimit të një moduli ESP8266 12X: 5 hapa (me fotografi)
Anonim
3 Mënyra të thjeshta të programimit të një moduli ESP8266 12X
3 Mënyra të thjeshta të programimit të një moduli ESP8266 12X

Nëse nuk jeni të njohur me mikrokontrolluesin ESP8266, me të vërtetë mendoj se keni humbur! Këto gjëra janë të pabesueshme: ato janë të lira, të fuqishme dhe më e mira nga të gjitha kanë WiFi të integruar! ESP8266 filloi udhëtimin e tyre si një shtesë WiFi në bord për bordet më tradicionale Arduino, por menjëherë pas kësaj, komuniteti kuptoi fuqinë e tyre dhe shtoi mbështetje të jetë në gjendje të programojë drejtpërdrejt me Arduino IDE.

Këto ditë nëse jeni duke kërkuar të përdorni një ESP8266 për projektin tuaj, unë do të rekomandoja përdorimin e një bordi zhvillimi të tillë si Wemos D1 Mini* (2.50 dollarë të dorëzuar !!) ose Adafruit Feather Huzzah. Këto borde kanë të gjitha kunjat e përdorshëm të shpërthyer, janë lehtësisht të programueshëm përmes lidhësit të tyre mikro USB dhe kanë një rregullator të integruar 3.3V. Por, çfarë nëse dëshironi të përdorni një ESP8266 në një projekt me një PCB të personalizuar? Mënyra më e lehtë është të përdorni një modul ESP12, dhe në këtë Instructable unë do t'ju tregoj disa mënyra të thjeshta të programimit të tyre.* = Lidhja e Filialit

Hapi 1: Shikoni videon

Këtu është një video me të gjitha informacionet e përmbajtura në Instructable nëse ju pëlqen ta kontrolloni. Në kanalin tim unë bëj shumë punë me ESP8266s kështu që kanali im në përgjithësi ndoshta ia vlen të shikoni nëse ju interesojnë ato lloj gjërash!

Hapi 2: Hapi paraprak: Konfigurimi për Programimin e ESP8266

Image
Image

Nëse nuk keni përdorur kurrë më parë ESP8266 ose Arduino, do të na duhet pak konfigurim i softuerit. Unë kam një video të dedikuar për këtë. Longshtë vetëm 5 minuta e gjatë dhe kalon nëpër gjithçka që ju nevojitet për të konfiguruar.

Nëse videot nuk janë me të vërtetë gjërat tuaja, shikoni mësimin 2 të Klasës mbresëlënëse të IoT të Becky, ai kalon gjithçka që ju nevojitet gjithashtu.

Para se të kaloni në seksionin tjetër, duhet të jeni në gjendje të ngarkoni një skicë të thjeshtë në një ESP8266 (siç është shembulli i ndezjes i përmendur si në video ashtu edhe në mësimin e Bekit)

Hapi 3: Metoda 1: Programuesi Pin "Frog"

Metoda 1
Metoda 1

Kjo është ndoshta mënyra më e lehtë për të programuar një modul ESP12. Ju në thelb thjesht futni modulin në tabelë dhe pastaj ai sillet saktësisht si një nga bordet e zhvillimit të përmendur më parë. Zgjodha bordin Wemos D1 Mini nga tabelat e lëshuara kur programoni. Ka disavantazhe të kësaj metode:

  • Programuesi është pak i shtrenjtë nëse jeni duke bërë vetëm disa dërrasa.
  • Bordet mund të programohen vetëm në këtë mënyrë para se të ngjiten në PCB -në tuaj

Ai që bleva është nga Aliexpress, por besoj se stilisti origjinal është një përdorues në Tindie i quajtur Fred. Ato ishin shitur në atë kohë, kështu që unë përfundova duke shkuar me atë Aliexpress, por do t'i lidh të dyja.

  • Programuesi i modulit E-Pop Aliexpress Pop-in*
  • Programuesi i modulit Fred's Frog Pin ESP

* = Lidhja e Filialit

Hapi 4: Metoda 2: Përdorimi në thelb i çdo konvertuesi USB në serial

Metoda 2: Përdorimi në thelb i çdo konvertuesi USB në serial
Metoda 2: Përdorimi në thelb i çdo konvertuesi USB në serial
Metoda 2: Përdorimi në thelb i çdo konvertuesi USB në serial
Metoda 2: Përdorimi në thelb i çdo konvertuesi USB në serial
Metoda 2: Përdorimi në thelb i çdo konvertuesi USB në serial
Metoda 2: Përdorimi në thelb i çdo konvertuesi USB në serial

Për metodën tjetër, ne do të vendosim manualisht modulin ESP në modalitetin e programimit dhe më pas do të përdorim në thelb çdo konvertues USB në serial për të programuar ESP8266, madje edhe atë PL2303* që kushton 50 gradë.

Funksionimi normal:

Para se të fillojmë me programimin, së pari duhet të hedhim një vështrim se cilat komponentë të jashtëm i nevojiten ESP8266. Për funksionimin normal, një modul ESP-12 ka nevojë për sa vijon

  • EN, RST dhe GPIO 0 duhet të tërhiqen lart duke përdorur një rezistencë 10K
  • GPIO 15 duhet të tërhiqet në Tokë duke përdorur një rezistencë 10K
  • Furnizimi me energji 3.3V i aftë për rreth 250mA rrymë (rekomandohet një kapak midis VCC dhe GND)

Me konfigurimin e mësipërm, ESP8266 kur ndizet do të jetë në modalitetin normal të funksionimit, kështu që do të ekzekutojë çdo skicë që keni programuar në të. Ju mund të blini dërrasa shpërthyese për modulet ESP-12* që janë vërtet të dobishme për testimin e konfigurimeve të ndryshme. Modulet kanë konfigurimin e rezistorëve për kunjat EN dhe GPIO 15, kështu që do t'ju duhet akoma të shtoni rezistencën tërheqëse për RST dhe GPIO 0,

Aktivizimi i mënyrës së programimit:

Për ta futur atë në modalitetin e programimit, GPIO 0 duhet të tërhiqet poshtë kur ESP fillon. Mënyra më e lehtë për ta bërë këtë është shtimi i butonave në GPIO 0 dhe pinit RST që lidhen me tokën kur shtypen. Pastaj për të aktivizuar modalitetin e blicit, ju thjesht

  • Mbani të shtypur butonin GPIO 0
  • Shtypni butonin RST
  • Pastaj lëshoni të dy butonat

Ju nuk keni nevojë ta kryeni këtë sekuencë në çdo kohë të veçantë gjatë procesit të ngarkimit ose ndonjë gjë tjetër, pasi ESP të jetë në modalitetin e programimit do të qëndrojë atje deri në rivendosjen tjetër, kështu që thjesht kryeni hapat në çdo kohë para ngarkimit.

Programimi me një përshtatës USB në serial:

Aktivizimi i modalitetit të programit është vetëm gjysma e betejës, tani ne duhet të programojmë në të vërtetë modulin. Shumica e përshtatësve USB në serial nuk mund të sigurojnë rrymë të mjaftueshme në ESP8266, kështu që rekomandohet që të furnizoni ESP8266 duke përdorur një burim të jashtëm 3.3V.

Për të lidhur programuesin ju duhet të lidhni kunjat e mëposhtëm (treguar gjithashtu në një imazh më lart):

  • Lidhni TX të programuesit me RX të ESP8266 (Nuk është një gabim shtypi, lidhjet përmbysen)
  • Lidhni RX të programuesit me TX të ESP8266
  • Lidhni Tokën e programuesit me Tokën e ESP8266

Për të ngarkuar skicën tuaj, bëni hapat e mëposhtëm:

  • Zgjidhni numrin e portit të përshtatësit tuaj serik (Mjete-> Port)
  • Aktivizoni modalitetin e programimit në ESP8266 siç përshkruhet më sipër
  • Klikoni në butonin e ngarkimit. (Nëse dështon, kontrolloni dy herë instalimet tuaja dhe provoni ta vendosni përsëri bordin tuaj në modalitetin e programimit)
  • Klikoni butonin e rivendosjes kur ngarkimi të ketë përfunduar

Këtu janë cilësimet e tabelës që kam përdorur kur ngarkoj duke përdorur këtë metodë:

  • Bordi: Moduli Generic ESP8266
  • Mënyra e ndezjes: DIO
  • Madhësia e blicit: 4M (3M Spiffs)
  • Metoda e Rivendosjes: Kk
  • Frekuenca e blicit: 40 MHz
  • Shpejtësia e ngarkimit: 115200

Gjëja e fundit që duhet të theksohet është përcaktimi LED_BUILIN për një modul të përgjithshëm ESP8266 që tregon në pin 1, por LED i integruar i një moduli ESP12 është i lidhur me pin 2 (activeshtë aktiv shumë i ulët, vetëm si një FYI). Pra, nëse jeni duke testuar një skicë të mbyllur sytë, do t'ju duhet të përdorni numrin 2 në vend të LED_BUILTIN

* = Lidhja e Filialit

Hapi 5: Metoda 3: Programuesi i rivendosjes automatike duke përdorur një NodeMCU

Metoda 3: Programuesi i rivendosjes automatike duke përdorur një NodeMCU
Metoda 3: Programuesi i rivendosjes automatike duke përdorur një NodeMCU
Metoda 3: Programuesi i rivendosjes automatike duke përdorur një NodeMCU
Metoda 3: Programuesi i rivendosjes automatike duke përdorur një NodeMCU

Nëse keni përdorur ndonjë bord të zhvillimit ESP do të keni vënë re se në thelb të gjitha ato nuk kërkojnë që ju të aktivizoni manualisht modalitetin e programimit duke përdorur butonat, kështu që si e bëjnë këtë?

Shumica e çipave USB me seri kanë kunja shtesë që nxjerrin sinjale në faza të ndryshme të procesit të ngarkimit dhe me përdorimin e disa qarqeve të jashtme është e mundur të shkaktohet niveli i ulët i GPIO 0 dhe rivendosjet e kërkuara. RuiMoteiro ka një udhëzues për këtë temë duke përdorur një bord FTDI dhe ESP8266.

Por unë mendoj se ka një qasje më të thjeshtë për këtë, dhe ajo që është edhe më e mirë është se ka një shans të mirë që ju tashmë keni gjithçka që ju nevojitet për ta bërë atë! Ju mund të përdorni një bord zhvillimi ESP8266 siç është NodeMCU si programues*.

Cili është avantazhi i përdorimit të një NodeMCU?

Përparësitë kryesore të përdorimit të NodeMCU si programues janë si më poshtë:

  • Mund ta fuqizoni ESP8266 direkt nga kunjat 3V të NodeMCU
  • Do të trajtojë rivendosjen/aktivizimin automatik të mënyrës së programimit
  • Kushton rreth 2.50 dollarë të dorëzuar (dhe mund të përdoret si bord i zakonshëm dev kur nuk programoni të tjerët!)

Ju mund të përdorni të njëjtën qasje me çdo tabelë që ekspozon pinin e aktivizimit të çipit të ESP8266.

Si punon?

Unë e mora idenë për këtë nga një YouTuber i quajtur Mika Kurkela, në videon e tij ai po përdorte NodeMCU për të programuar një modul ESP-01, por ne mund të përdorim të njëjtën ide për modulin ESP12.

Në thelb ne do të çaktivizojmë ESP8266 në NodeMCU duke e detyruar pinin EN të ulët, kjo do të parandalojë nisjen e modulit ESP8266 në NodeMCU. Atëherë do të lidhim të gjitha kunjat përkatëse të bordit NodeMCU me ESP8266 tonë të jashtëm.

Instaloni atë

Për ta lidhur atë, do t'ju duhet instalime elektrike standarde ESP8266 siç tregohet në hapin e mëparshëm dhe më pas për të shtuar lidhjet e mëposhtme (treguar edhe në imazhin e mësipërm):

  • Lidhni 3V të NodeMCU me VCC të ESP8266
  • Lidhni GND me GND
  • Lidhni TX të NodeMCU me TX të ESP8266 (Kjo është e ndryshme nga hapi i mëparshëm)
  • Lidhni RX të NodeMCU me RX të ESP8266
  • Lidhni D3 të NodeMCU me GPIO 0 të ESP8266 (D3 është GPIO 0 e ESP8266)
  • Lidhni RST të NodeMCU me RST të ESP8266
  • Lidhni EN të NodeMCU me GND

Ngarko një skicë

Pasi të keni lidhur ESP8266, duhet të bëni sa më poshtë:

  • Zgjidhni numrin e portit të NodeMCU (Tools-> Port)
  • Zgjidhni llojin e bordit "NodeMCU 1.0 (Moduli ESP12-E)"
  • Klikoni ngarkimin

Dhe kjo eshte! Do të aktivizojë automatikisht modalitetin e programimit dhe do të rivendoset automatikisht kur të përfundojë ngarkimi, kështu që do të fillojë ekzekutimin e skicës.

Duke e përdorur këtë në modelet e bordit tuaj

Në mënyrë që të përdorni këtë metodë në modelet e bordit tuaj, ju thjesht duhet të shpërtheni kunjat e mëposhtme:

  • Toke
  • GPIO 0
  • KQV -ja
  • TX
  • RX
  • RST

Dhe kur doni të programoni bordet tuaja, lidhni atë si më sipër.

Shpresojmë se do ta gjeni të dobishëm këtë udhëzues, nëse keni ndonjë pyetje, mos ngurroni të pyesni!

* = Lidhja e Filialit

Recommended: