Turinys:

Atkurti arba atnaujinti ESP8266 (ESP-01) modulio programinę-aparatinę įrangą naudojant „Arduino UNO“: 7 žingsniai
Atkurti arba atnaujinti ESP8266 (ESP-01) modulio programinę-aparatinę įrangą naudojant „Arduino UNO“: 7 žingsniai

Video: Atkurti arba atnaujinti ESP8266 (ESP-01) modulio programinę-aparatinę įrangą naudojant „Arduino UNO“: 7 žingsniai

Video: Atkurti arba atnaujinti ESP8266 (ESP-01) modulio programinę-aparatinę įrangą naudojant „Arduino UNO“: 7 žingsniai
Video: Как управлять несколькими реле ESP8266 ESP01 | УдаленныйXY | ФЛПрог 2024, Liepa
Anonim
Atkurti arba atnaujinti programinę-aparatinę įrangą ESP8266 (ESP-01) modulyje naudojant „Arduino UNO“
Atkurti arba atnaujinti programinę-aparatinę įrangą ESP8266 (ESP-01) modulyje naudojant „Arduino UNO“
Atkurti arba atnaujinti programinę-aparatinę įrangą ESP8266 (ESP-01) modulyje naudojant „Arduino UNO“
Atkurti arba atnaujinti programinę-aparatinę įrangą ESP8266 (ESP-01) modulyje naudojant „Arduino UNO“
Atkurti arba atnaujinti ESP8266 (ESP-01) modulio programinę-aparatinę įrangą naudojant „Arduino UNO“
Atkurti arba atnaujinti ESP8266 (ESP-01) modulio programinę-aparatinę įrangą naudojant „Arduino UNO“
Atkurti arba atnaujinti programinę-aparatinę įrangą ESP8266 (ESP-01) modulyje naudojant „Arduino UNO“
Atkurti arba atnaujinti programinę-aparatinę įrangą ESP8266 (ESP-01) modulyje naudojant „Arduino UNO“

Naudotas ESP-01 modulis iš pradžių buvo su senesne „AI Thinker“programine įranga, kuri riboja jo galimybes, nes daugelis naudingų AT komandų nepalaikomos.

Apskritai yra gera idėja atnaujinti savo programinę -aparatinę įrangą, kad būtų pataisytos klaidos. Be to, atsižvelgiant į funkcijas, reikalingas ESP moduliui, gali prireikti išsamesnio palaikomų AT komandų rinkinio. Šioje pamokoje taip pat paaiškinta, kaip atkurti ar atnaujinti originalią „Espressif“programinę -aparatinę įrangą, jei atsitiktinai sugadinsite savo ESP programinę įrangą, pvz., Per klaidingas AT komandas. Taip atsitiko, kai bandžiau pakeisti numatytąjį duomenų perdavimo spartą nuo 115200 iki 9600. Naudojau šią komandą (pagal greitą „Google“paiešką):

AT+IPR = 9600

Tai uždėjo ESP-01 modulį. Nebeveikė jokios AT komandos, kurios paskatino mane atlikti daugiau tyrimų ir po daugelio valandų pagaliau radau būdą, kaip atkurti savo ESP-01 ir įdiegti naujausią suderinamą programinę įrangą. Taigi nusprendžiau, kad verta pasidalyti visu procesu.

Įspėjimas: Remdamasis savo patirtimi, labai patarčiau nenaudoti komandos AT+IPR, kad pakeistumėte savo duomenų perdavimo spartą, nes greičiausiai reikės iš naujo paleisti programinę-aparatinę įrangą. Tačiau yra daug įvairių ESP-01 modulio variantų su skirtingais blykstės dydžiais ir gamyklos programinės įrangos versija, todėl jūsų patirtis gali skirtis.

ESP-01 modulis neatitinka 5 V įtampos ir reikalauja 3,3 V įtampos, kad jį maitintų, bet taip pat turi tinkamai veikti loginiu lygmeniu. Norint bendrauti su kompiuteriu, moduliui papildomai reikia USB į nuoseklųjį keitiklį. Taigi, užuot naudojęs įtampos keitiklį ir USB į nuoseklųjį adapterį, nusprendžiau pasirinkti paprastesnį sprendimą. Kadangi jau turiu „Arduino UNO“, pastarąjį naudojau ESP-01 moduliui įjungti ir užmegzti ryšį tarp ESP-01 ir kompiuterio, veiksmingai veikiančio kaip nuoseklusis tiltas.

Prekės

  1. ESP-01 modulis
  2. „Arduino UNO“(su USB kabeliu)
  3. „DuPont“jungiamieji laidai
  4. Bandomoji Lenta

1 žingsnis: laidų jungtys

Laidų jungtys
Laidų jungtys
Laidų jungtys
Laidų jungtys
Laidų jungtys
Laidų jungtys

Laidų jungtis su „Arduino UNO“ir „ESP-01“moduliais galima lengvai sujungti naudojant trumpiklius ir duonos lentą. Ryšiai tarp „Arduino“kūrimo plokštės ir ESP modulio aprašyti lentelėje. RX ir TX jungtys šiuo atveju nėra atvirkštinės, nes ryšys vyksta ne tarp „Arduino“ir ESP modulio, bet tarp ESP ir kompiuterio. Taigi, šiuo atveju „Arduino UNO“plokštė yra naudojama kaip nuoseklusis tiltas per savo įmontuotą USB į nuoseklųjį keitiklį.

RX kaiščių jungtis tarp „Arduino“plokštės ir ESP modulio turėtų būti atliekama per įtampos skirstytuvą, nes ESP-01 veikia 3,3 V logikos lygiu, o gavęs 5 V logikos lygį iš „Arduino UNO“gali sugadinti ESP modulį. Galite sukurti paprastą 3,3 V įtampos skirstytuvą naudodami tik 2 rezistorius, kaip parodyta paveikslėlyje. Pasirinktinai galite naudoti loginio lygio keitiklį.

Atsargiai: mano sąrankai tiesiog prijungiau RX kaiščius (nepatartina!) Ir viskas veikė, bet jei nuspręsite atsisakyti loginio lygio konvertavimo, tęskite savo rizika!

Norėdami sukurti bendrą įžeminimo jungtį, „Arduino UNO“įžeminimo kaištis yra prijungtas prie ESP modulio įžeminimo kaiščio.

„Arduino UNO“naudojamas tiekti 3,3 V maitinimą tiesiai į ESP modulio VCC kaištį. Prijunkite 3,3 V kaištį prie duonos lentos, naudodami jungiamąjį laidą, nes 3,3 V bus naudojamas ne tik ESP VCC kaiščiui, bet ir ESP CH_PD kaiščiui, kad būtų įjungtas ESP lustas.

Arduino UNO „RESET“kaištis yra prijungtas prie „Ground“, kad būtų išvengta bet kokio per „Arduino“įkelto kodo, kad kodas būtų siunčiamas iš kompiuterio į ESP-01.

Lentelės paveikslėlyje parodytas visas jungčių rinkinys, skirtas programinės įrangos mirksėjimui, tačiau šiuo metu nesujunkite ESP atstatymo ir GPIO_0 kaiščių, nes kitame žingsnyje mes perskaitysime tik programinės įrangos informaciją.

2 veiksmas: patikrinkite programinės aparatinės įrangos versiją

Patikrinkite programinės aparatinės įrangos versiją
Patikrinkite programinės aparatinės įrangos versiją

Norėdami rasti ESP-01 programinės įrangos versiją, „Arduino IDE“serijos monitoriuje įveskite:

AT+GMR

Pastaba: Visos AT komandos turi būti įvestos didžiosiomis raidėmis be tarpų.

Čia yra mano ESP-01 nuoseklioji išvestis (jūsų ESP modulis gali neparodyti tos pačios informacijos, nes tai priklauso nuo konkretaus modelio ir išleidimo datos):

AT+GMR

AT versija: 0.25.0.0 (2015 m. Birželio 5 d. 16:27:16) SDK versija: 1.1.1 „Ai-Thinker Technology Co. Ltd.“2015 m. Birželio 23 d. 23:23:50 Gerai

Dabar, norėdami atnaujinti į naujausią oficialią „Espressif ESP8266EX“programinę -aparatinę įrangą, eikite į jos svetainės išteklių skiltį:

Pastaba: galimas programinės aparatinės įrangos sąrašas gali būti nesuderinamas su jūsų ESP-01 modeliu. Daugiau informacijos rasite šios instrukcijos pabaigoje esančiame skyriuje Trikčių šalinimas.

3 veiksmas: sąrankos paruošimas: prieš mirksi programinė įranga

Paruošimas sąrankai: prieš mirksi programinė įranga
Paruošimas sąrankai: prieš mirksi programinė įranga

Dabar paruošime „Arduino UNO“ESP-01 programinės įrangos mirksėjimo procedūrai.

Įsitikinkite, kad „Arduino RESET“laidas yra atjungtas nuo žemės. Be to, „Arduino UNO“TX ir RX laidai turi būti atjungti nuo ESP-01 modulio.

Atidarykite „Arduino IDE“ir viršutiniame meniu eikite į Failas> Pavyzdžiai> 01. Pagrindai> „BareMinimum“. Įkelkite eskizą į „Arduino UNO“. Šis tuščias eskizas užtikrins, kad su ESP moduliu nebūtų jokių trikdžių.

Iš naujo prijunkite RX ir TX kabelius tarp UNO ir ESP-01. Taip pat prijunkite UNO RESET kaištį prie žemės.

CH_PD arba CH_EN kaištis reiškia „Chip Power-Down“arba „Chip Enable“ir turi būti ištrauktas AUKŠTAS arba prijungtas prie 3,3 V, kad būtų įjungtas ESP lustas.

Šiems ESP kaiščiams reikalingi du papildomi jungiamieji kabeliai: GPIO_0 ir RESET.

GPIO_2 nenaudojamas ir paliekamas atjungtas.

ESP-01 reikia nustatyti programavimo režimu, kad į jį būtų galima įkelti kodą. Tačiau ESP-01 neturi reikiamos papildomos techninės įrangos, kad tai būtų galima tiesiogiai pasiekti, todėl visa tai reikia prijungti atskirai. Savo reikmėms aš nesivarginau naudoti jungiklių, o paprasčiausiai naudojau du trumpiklius-vyriškus-moteriškus kabelius, prijungtus prie ESP-01 modulio GPIO_0 ir RESET kaiščių, ir prijungiau juos prie bendrų „Arduino UNO“grunto kaiščių.

Prieš pradedant mirksėjimo procedūrą, GPIO_0 yra prijungtas prie „Ground“visai mirksėjimo procedūrai, kad būtų įjungtas programavimo režimas.

RESET kaištis sekundei prijungiamas prie „Ground“, o tada pašalinamas. Tai leidžia įkelti naują programinę -aparatinę įrangą.

4 veiksmas: atsisiųskite mirksėjimo įrankį ir programinę -aparatinę įrangą

Atsisiųskite mirksėjimo įrankį ir programinę -aparatinę įrangą
Atsisiųskite mirksėjimo įrankį ir programinę -aparatinę įrangą

Naudojama programinė įranga yra iš „Espressif“, kuris yra pirminis ESP8266 lusto gamintojas.

Eikite į: https://www.espressif.com/en/products/hardware/esp8266ex/resources, kad pasiektumėte oficialius įrankius ir AT programinės įrangos failus.

Skirtuke „Įrankiai“atsisiųskite „Flash“atsisiuntimo įrankius (ESP8266 ir ESP32), šiuo metu naujausias yra „V3.6.8“.

Skirtuke „AT“atsisiųskite naujausią suderinamą AT programinę įrangą, kuri yra ESP8266 AT Bin V1.6.2 mano ESP-01 modeliui. Tai priklauso nuo ESP-01 modelio, nes jis gali turėti skirtingą „flash“atminties dydį. Daugiau informacijos apie tai rasite programos „Flash“atsisiuntimo įrankiai skiltyje ATSTATOMA INFORMACIJA, spustelėję START, kad pradėtumėte mirksėti. Taigi, jei nesate tikri dėl blykstės dydžio ar pasirinktų programinės aparatinės įrangos failų, tiesiog paleiskite programą, kad gautumėte teisingą informaciją apie savo ESP modulį.

Po mirksėjimo galite naudoti AT komandas, norėdami išbandyti ir dirbti su ESP-01. Atsisiųskite oficialų ESP8266 AT instrukcijų rinkinį:

5 žingsnis: Mirksėjimo procedūra

Mirksėjimo procedūra
Mirksėjimo procedūra
Mirksėjimo procedūra
Mirksėjimo procedūra
Mirksėjimo procedūra
Mirksėjimo procedūra
Mirksėjimo procedūra
Mirksėjimo procedūra

Išskleiskite „Flash Download Tools“ZIP failą ir atidarykite exe failą. Jei naudojate „Windows“, būtinai paleiskite jį kaip administratorių. Pirmiausia atsidarys DOS langas, o po to-iššokantis langas. Pasirinkite ESP8266 atsisiuntimo įrankis. Bus atidarytas langas su keliomis konfigūruojamomis parinktimis.

Šiame etape žiūrėkite ekrano kopiją, kad pamatytumėte, kokias parinktis pasirinkti ir ką įvesti šešiabriaunių kodų langeliuose šalia kiekvieno pasirinkto programinės aparatinės įrangos failo.

Pastaba: pasirinkite programinės aparatinės įrangos failus ta pačia tvarka, nes „flash“procedūra atliekama nuosekliai. Blank.bin failą reikia pasirinkti tris kartus, kaip parodyta AT instrukcijų rinkinio ekrano kopijoje.

Norėdami rasti teisingus šešioliktainius kodus ar adresus, patikrinkite oficialų AT instrukcijų rinkinio dokumentą. Pridėjau lentelės, kurią naudoju ESP moduliui mirksėti, ekrano kopiją.

Tada tiesiog paspauskite START mygtuką ir stebėkite, kaip vyksta stebuklas. Mygtuko tekste bus rodoma „SYNC“, o skiltyje „DETECTED INFO“bus rodomos jūsų ESP modulio specifikacijos. Tada tekste bus rodoma ATSISIŲSTI, o eigos juosta suaktyvės, kai programinės aparatinės įrangos failai bus įkelti į ESP „flash“atmintį. Atlikus programinės aparatinės įrangos mirksėjimo procedūrą, pamatysite: FINISH.

Uždarykite „Flash Download Tools“programą. Tai būtina norint išlaisvinti nuoseklųjį prievadą, kad „Arduino IDE Serial Monitor“galėtų perimti.

Atjunkite ESP GPIO_0 kaištį nuo įžeminimo jungties. Tai išjungs programavimo režimą.

1 sekundę prijunkite RESET prie įžeminimo, tada atjunkite. Tai iš naujo nustatys modulį.

Atidarykite „Arduino IDE“. Viršutiniame meniu pasirinkite Įrankiai> Prievadas> pasirinkite tinkamą COM prievadą. Atidarykite serijinį monitorių ir pasirinkite „Tiek NL, tiek CR“ir pasirinkite 115200 duomenų perdavimo spartą, kuri yra numatytoji.

Tipas:

AT

Jei mirksėjimo procedūra buvo atlikta teisingai, atsakymas bus toks:

Gerai

Norėdami patikrinti naują programinę -aparatinę įrangą, įveskite:

AT+GMR

Čia yra mano ESP-01 serijinio monitoriaus išvestis:

AT+GMR

AT versija: 1.6.2.0 (2018 m. Balandžio 13 d. 11:10:59) SDK versija: 2.2.1 (6ab97e9) kompiliavimo laikas: 2018 m. Birželio 7 d. 19:34:26 Dėžutės versija („Wroom 02“): 1.6.2 Gerai

6 veiksmas: visam laikui pakeiskite „Baud“rodiklį

Visam laikui pakeiskite „Baud“rodiklį
Visam laikui pakeiskite „Baud“rodiklį

Ši dalis neprivaloma. Numatytoji duomenų perdavimo sparta yra 115200, bet jei norite pakeisti ją į kitą duomenų perdavimo spartą, galite tiesiog įvesti šią komandą „Arduino Serial Monitor“.

Pavyzdžiui, jei norite pakeisti į 9600 baudų spartą / 8 duomenų bitus / 1 sustabdymo bitą / nėra pariteto bitų / nėra srauto valdymo.

Įrašykite:

AT+UART_DEF = 9600, 8, 1, 0, 0

Atsakymas turėtų būti toks:

Gerai

Aukščiau pateikta komanda pakeičia duomenų perdavimo spartą visam laikui iki 9600, tačiau galite pasirinkti bet kurį standartinį duomenų perdavimo greitį.

7 žingsnis: trikčių šalinimas

Problemų sprendimas
Problemų sprendimas
Problemų sprendimas
Problemų sprendimas

Jei po sėkmingos programinės įrangos blykstės, pavyzdžiui, serijiniame monitoriuje, atsiranda kokių nors anomalijų, pasirinkus numatytąją 115200 duomenų perdavimo spartą ir įveskite: AT, bet nematote jokio atsakymo arba jei įvedate AT+GMR ir gaunate kitą kitos informacijos, išskyrus programinės aparatinės įrangos versijos informaciją, gali būti, kad mirksi netinkama programinė įranga. Tokiu atveju „Flash“atsisiuntimo įrankių programoje, paspaudus mygtuką START, kad būtų pradėta mirksėti programinė įranga, būsenos žalias mygtukas nuskaito „SYNC“ir tai yra etapas, kai ESP modulio informacija yra išgaunama ir pasiekiama skiltyje „Aptikta informacija“. Ši informacija yra labai svarbi norint nustatyti tinkamą programinę -aparatinę įrangą ir teisingus „flash“failus.

Štai mano ESP-01 modulis:

„Flash“pardavėjas:

E0h: N/A blykstės devID: 4014h QUAD; 8Mbit krištolas: 26Mhz

Jūsų ATSISAKOMA INFORMACIJA priklausys nuo ESP-01 modelio. Bet tai leis jums nustatyti teisingą blykstės dydį. Mano ESP jis yra 8 Mbit, kuris atitinka 1 MB. Taigi, tai reiškia, kad turėčiau pasirinkti 512 KB + 512 KB iš programinės įrangos failų. Tai taip pat reiškia, kad 1.7.0 arba 1.7.1 programinė įranga neveiks tinkamai mano ESP moduliui, ką aš taip pat patvirtinau, mirgindamas šią programinę įrangą ir išbandydamas. Be to, oficialioje „Espressif“išteklių svetainėje esančioje 1.7.0 ir 1.7.1 programinės įrangos aprašyme pateikiama tokia informacija: „Ribotas dėl AT bin failo dydžio, palaikomas tik„ 1024+1024 flash map “numatytas. 1024+1024 reiškia, kad jis skirtas ESP moduliui, kurio bendras blykstės dydis yra 2048 KB arba 2 MB.

Pastaba: jei jums įdomu, galite be jokių apribojimų pakeisti ankstesnę versiją arba atnaujinti skirtingas programinės įrangos versijas. Jei kas nors negerai, galite tiesiog vėl mirksėti naudodami skirtingus parametrus arba išbandyti kitą programinę -aparatinę įrangą.

Rekomenduojamas: