Turinys:

ESP8266 ESP-12E UART belaidis WIFI skydo TTL keitiklis nesudėtingas: 5 žingsniai
ESP8266 ESP-12E UART belaidis WIFI skydo TTL keitiklis nesudėtingas: 5 žingsniai

Video: ESP8266 ESP-12E UART belaidis WIFI skydo TTL keitiklis nesudėtingas: 5 žingsniai

Video: ESP8266 ESP-12E UART belaidis WIFI skydo TTL keitiklis nesudėtingas: 5 žingsniai
Video: ESP8266 ESP-01 WIFI Serial Wireless Transceiver Module #shorts 2024, Birželis
Anonim
ESP8266 ESP-12E UART belaidis WIFI skydo TTL keitiklis nesudėtingas
ESP8266 ESP-12E UART belaidis WIFI skydo TTL keitiklis nesudėtingas

Šis vadovas skirtas padėti žmonėms, įsigijusiems „ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter“ir nežinantiems, kaip jį naudoti su „Arduino“.

Iš pradžių ši pamoka buvo parašyta portugalų kalba čia, Brazilijoje. Aš stengiausi viską parašyti anglų kalba. Taigi atleisk man už kai kurias klaidas, kurios gali atsirasti raštu.

Šios instrukcijos buvo suskirstytos taip:

1 žingsnis: Susipažinkite su „ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter for Arduino“

2 veiksmas: programinės aparatinės įrangos atnaujinimas naudojant „ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter“, skirtą „Arduino“

3 žingsnis: „Shiald“, „Shield“, „More“ir „Moer“? Ar tai svarbu?

4 žingsnis: „Shield Moer“- RX / TX nuoseklaus ryšio sprendimas

5 veiksmas: žiniatinklio serveris su „ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter for Arduino“

Rekomenduoju perskaityti visus veiksmus, kad kuo daugiau sužinotumėte apie šį skydą.

1 žingsnis: Susipažinkite su „ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter for Arduino“

Dėl ESP8266 ESP-12E UART belaidžio „WIFI Shield TTL Converter“(„Shield WiFi ESP8266“) lengva prijungti „Arduino“prie „WiFi“tinklų per ESP8266. Kai jį naudojate, nebereikia montuoti grandinės su keliais komponentais ir laidais, kad būtų galima sujungti ESP8266 su „Arduino“, tiesiog pritvirtinkite plokštę prie „Arduino“, nustatykite DIP jungiklio kelią pagal skydo darbo režimą ir užprogramuokite „Arduino“prisijungti prie „WiFi“tinklų. Be to, plokštę galima naudoti be „Arduino“, nes joje yra visi ESP-12E kištukai.

Skyde yra informacija, kad jį sukūrė asmuo, vardu WangTongze, ir kuriam priklauso jo teisės, yra „elecshop.ml“. Iš pradžių skydo kūrėjas bandė surinkti lėšų savo projektui per „Indiegogo“(kolektyvinio finansavimo svetainę), tačiau jam nepavyko surinkti pinigų.

ESP8266 modelio ESP-12E savybės:

- 32 bitų RISC architektūra- Procesorius gali veikti 80MHz / 160MHz- 32MB „flash“atmintyje- 64kB instrukcijoms- 96kB duomenims- Standartinis vietinis „WiFi“802.11b / g / n- Veikia AP, stoties arba AP + stoties režimu 11 skaitmeninių kaiščių- Turi 1 analoginį kaištį su 10 bitų skiriamąja geba- Skaitmeniniai kaiščiai, išskyrus D0, turi pertraukimą, PWM, I2C ir vieną laidą- Programuojamas per USB arba „WiFi“(OTA)- Suderinamas su „Arduino IDE“- Suderinamas su naudojamais moduliais ir jutikliais Arduino mieste

Žemiau galite perskaityti pagrindines šio skydo savybes:

- „Arduino Uno R3“dydis ir smeigtukas yra suderinami su „Arduino Uno“, „Mega 2560“, „Leonardo“ir jų dariniais.- Nedidelės „Arduino“versijos (pavyzdžiui, „Nano“ir „Pro Mini“) yra suderinamos, tačiau jungtys turi būti sudarytos per trumpiklius.- Skydui maitinti naudojama „Arduino“įtampa (5 V).- Turi AMS1117 3.3 V įtampos reguliatorių, todėl „Arduino“tiekiama 5 V įtampa sumažinama, kad apsaugotų skydą be išorinės energijos.- Jame yra įmontuotas loginio lygio keitiklis., todėl „Arduino TTL“lygis (5V) nepažeidžia ESP8266, kuris veikia su TTL 3.3V lygiu.- Jame yra 4 krypčių DIP jungiklis, skirtas pakeisti plokštės darbo režimus.- Galimi darbo režimai: „WiFi Shield“„Arduino“/ AT komandų siuntimas per „Arduino“/ programinės įrangos atnaujinimas per USB nuoseklųjį išorinį / autonominį keitiklį.- Jame yra orientaciniai šviesos diodai (PWR / DFU / AP / STA).- Kadangi jis yra skydo formato, jis leidžia įterpti kitus skydus ir modulius.- Jame yra mygtukas ESP-RST, kad būtų galima iš naujo nustatyti ESP8266.- Th ESP8266 ADC kaištis yra dviejų formų lentoje: pirmoji ant kaiščio, kurio skaitymo diapazonas yra nuo 0 iki 1 V, o antroji - nuo 0 iki 3.3 V diapazono.

Paveikslėlyje paryškintos pagrindinės skydo dalys:

Vaizdas
Vaizdas

A (Skaitmeniniai PINS): „Arduino“naudojamų smeigtukų seka.

B (ESP8266 PINS): ESP8266-12E ir atitinkami kaiščiai. Plokštės gale yra kaiščių nomenklatūra.

C (IŠORINIO SERIALINIO USB ADAPTERIO JUNGTIS): kaiščių seka, naudojama išoriniam nuosekliajam USB adapteriui prijungti, norint atnaujinti programinę įrangą arba derinti ESP8266.

D (SHIELD MAINTENANCE PINS): trijų kontaktų seka, nustatyta kaip tik techninė priežiūra ir naudojama siekiant patikrinti, ar įtampos reguliatorius teisingai gauna ir tiekia įtampą. JO NEGALIMA NAUDOTI PASIŪLYMO ŠALTINIO.

E (DIP PERJUNGIMAS Į VEIKIMO REŽIMŲ PAKEITIMĄ): keturių krypčių DIP jungiklis, skirtas darbo režimams keisti.

KONTAKTAS 1 (P1) ir KONTAKTAS 2 (P2): naudojamas ESP8266 RX (žymimas P1) ir TX (žymimas P2) prijungti prie „Arduino D0“(RX) ir D1 (TX) kaiščių. P1 ir P2 išjungtoje padėtyje išjungia RX ryšį iš ESP8266 į Arduino TX ir TX iš ESP8266 į Arduino RX.

CONTACT 3 (P3) ir CONTACT 4 (P4): naudojamas įjungti ir išjungti ESP8266 programinės įrangos atnaujinimo režimą. Norėdami įjungti programinės aparatinės įrangos rašymą / įkėlimą ESP8266, P3 ir P4 turi būti ON padėtyje. Kai P4 yra ON padėtyje, užsidegs DFU šviesos diodas, rodantis, kad ESP8266 yra įjungtas priimti programinę -aparatinę įrangą. Norėdami išjungti programinės aparatinės įrangos atnaujinimo režimą ir nustatyti normalų ESP8266 veikimą, tiesiog nustatykite P3 ir P4 į OFF.

PASTABA: visi 4 kontaktai išjungtoje padėtyje rodo, kad ESP8266 veikia įprastu režimu šalia „Arduino“

F (AD8 iš ESP8266): kaiščio priskyrimas ESP8266 ADC. Smeigtukas, veikiantis nuo 0 iki 1 V, ir kitas kaištis, veikiantis nuo 0 iki 3,3 V. Šie kaiščiai bus naudojami tik naudojant tik ESP8266 (autonominis režimas).

G (ESP8266 RESET): mygtukas, naudojamas ESP8266 iš naujo nustatyti. Kai keičiate DIP jungiklių padėtį, turite paspausti ESP-RST mygtuką.

H (ANALOGINIS PIN IR MAITINIMAS): „Arduino“naudojamų kaiščių seka.

Šis skydas turi DIP jungiklio kontaktų P1 ir P2 ypatybes ir šią ypatybę, iš tikrųjų jis sukelia daug abejonių žmonėms, kurie bando naudoti skydą.

Pasak skydo kūrėjo, prijungus jį prie „Arduino“, reikės tik 2 kaiščių. Šie kaiščiai būtų D0 ir D1 (atitinkamai „Arduino“RX ir TX), be to, DIP jungiklio P1 ir P2 kontaktai ant skydo turi būti įjungimo padėtyje.

Viename iš vienintelių Kinijos dokumentų, kuriuos gavau apie šį skydą, lentos kūrėjas sako:

P1 ir P2 yra bitų kodavimo įrenginiai ir naudojami nustatyti, ar ESP8266 serija yra prijungta prie „Arduino D0“ir „D1“.

Kitame dokumento skyriuje paminėta:

Ši išplėtimo plokštė palaiko „Arduino“serijos darbą, jungdama RX nuo ESP8266 iki TX iš „Arduino“ir TX iš ESP8266 prie „Arduino RX“.

„Arduino“D0 (RX) ir D1 (TX) kaiščiai atitinka vietinį serijinį / USB ryšį, todėl šie kaiščiai lieka užimti, kai siunčiame kodą į plokštę arba naudojame serijinį monitorių. Todėl, jei skydo P1 ir P2 kontaktai yra įjungtoje padėtyje, ESP8266 naudos „Arduino D0“ir „D1“ir nebus galima siųsti kodų ar naudoti serijos, nes jis bus užimtas. Be to, norint siųsti AT komandas į skydą, būtina, kad ESP8266 RX būtų prijungtas prie „Arduino RX“ir kad ESP8266 TX būtų prijungtas prie „Arduino TX“. Tai atsitiks tik tuo atveju, jei apversime jungtis, kaip parodyta paveikslėlyje žemiau:

Vaizdas
Vaizdas

Žiūrėk, aš sulenkiau skydo D0 ir D1 kontaktus ir prijungiau „Arduino D0“prie skydo D1, o „Arduino“- D1 prie skydo D0. Naudodamas ryšį tokiu būdu („Arduino“naudojamas kaip jungiamasis tiltas), galėjau siųsti AT komandas į ESP8266 ir patvirtinau tai, ką jau įsivaizdavau.

Standartinė skydo veikimo forma reikalauja, kad į skydą būtų įkeliamas kodas (pvz., Žiniatinklio serveris arba programinė įranga), o į „Arduino“būtų įkeliamas kitas kodas, kad būtų galima siųsti, gauti ir interpretuoti duomenis, gaunamus per vietinę seriją. Daugiau informacijos apie šią komunikacijos formą bus pateikta tolesniuose žingsniuose.

Bet kokiu atveju, ši skydo savybė netrukdo jo veikimui, nes paprastai mes imituojame seriją kituose „Arduino“skaitmeniniuose kaiščiuose, kad galėtume turėti savąją seriją. Be to, jei reikia siųsti AT komandas į skydą, galime jį prijungti prie „Arduino“per keturis kabelius arba naudoti nuoseklų USB keitiklį.

Galiausiai skydas buvo labai stabilus ir labai palengvino grandinių surinkimą. Aš išbandžiau su „Arduino Uno R3“ir „Mega 2560 R3“.

Kitame žingsnyje sužinosite, kaip atnaujinti / pakeisti skydo programinę -aparatinę įrangą.

2 veiksmas: programinės aparatinės įrangos atnaujinimas naudojant „ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter“, skirtą „Arduino“

Norėdami prijungti skydą prie kompiuterio, turite naudoti nuoseklųjį USB keitiklį. Jei neturite įprasto nuoseklaus USB keitiklio, galite naudoti „Arduino Uno R3“keitiklį kaip tarpinę priemonę. Rinkoje yra keletas serijinių USB keitiklių modelių, tačiau šiai pamokai naudoju PL2303HX TTL nuoseklaus USB keitiklio adapterį.

Norėdami atnaujinti skydą, naudokite:

ESP8266 „Flash“atsisiuntimo įrankiai

Naudojama programinė įranga yra tokia:

„Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a“programinė įranga

Atsisiuntę programą ir programinę -aparatinę įrangą, nukopijuokite abu į „Windows“šaknį (C diską).

Išpakuokite „flash_download_tools_v2.4_150924.rar“ir sukurkite aplanką FLASH_DOWNLOAD_TOOLS_v2.4_150924.

Naudojant „Arduino Uno R3“serijos USB keitiklį kaip tarpinį:

Kitas žingsnis yra prijungti skydą prie kompiuterio. Jei neturite standartinio serijinio USB keitiklio, galite naudoti „Arduino Uno R3“skydui ir kompiuteriui sujungti. Be „Arduino Uno R3“su USB kabeliu, jums reikės:

01 - ESP8266 ESP -12E UART belaidis WIFI skydas TTL keitiklis 04 - vyrų ir moterų jungiamieji kabeliai

PASTABA: Prieš montuodami „Arduino“prijungimo schemą, turite į lentą įkelti tuščią kodą, kad įsitikintumėte, jog nenaudojamas nuoseklusis USB keitiklis. Įkelkite žemiau esantį kodą į „Arduino“ir tęskite:

void setup () {// įdėkite čia savo sąrankos kodą, kad jis būtų paleistas vieną kartą:} void loop () {// įdėkite čia savo pagrindinį kodą, kad jis būtų paleistas pakartotinai:}

Vaizdas
Vaizdas

PASTABA: būkite atsargūs, kai prie „Arduino“pritvirtinate 3,3 V skydo kaištį.

Naudojant serijinį TTL USB keitiklio adapterį PL2303HX:

Be PL2303HX TTL nuoseklaus USB keitiklio adapterio, jums reikės šių elementų:

01 - ESP8266 ESP -12E UART belaidis WIFI skydas TTL keitiklis 04 - vyrų ir moterų jungiamieji kabeliai

Vaizdas
Vaizdas

PASTABA: PL2303 maitina 5V ir 3V3. Naudokite 3V3 maitinimą ir nekreipkite dėmesio į 5V kaištį

Atlikę vieną iš aukščiau pateiktų prijungimo schemų, tiesiog prijunkite USB kabelį (prie „Arduino“ir kompiuterio) arba nuoseklųjį USB keitiklį prie kompiuterio.

Tada eikite į „Valdymo skydą“sistemoje „Windows“, „Įrenginių tvarkytuvė“, o atidarytame lange eikite į „Uostai (COM ir LPT)“. Galite matyti prijungtą įrenginį ir COM prievado numerį, kuriam jis buvo priskirtas. Kaip pavyzdį aš prijungiau „Arduino“ir nuoseklų USB keitiklį prie kompiuterio, o žemiau esančiame paveikslėlyje galite pamatyti, kaip įrenginiai rodomi tvarkyklėje:

Vaizdas
Vaizdas

Jei naudojate PL2303HX ir „Windows“jo neatpažįsta, eikite į įrašą „Serial TTL USB Converter PL2303HX - Installation“sistemoje „Windows 10“, sužinokite, kaip tai išspręsti, ir grįžkite, kad tęstumėte.

Dabar eikite į aplanką FLASH_DOWNLOAD_TOOLS_v2.4_150924 ir paleiskite ESP_DOWNLOAD_TOOL_V2.4.exe:

Vaizdas
Vaizdas

Ant skydo padėkite DIP jungiklio P3 ir P4 kontaktus į ON padėtį ir paspauskite kortelėje esantį ESP-RST mygtuką, kad skydas įsijungtų į programinės įrangos atnaujinimo režimą:

Vaizdas
Vaizdas

Atidarę programą, panaikinkite žymės langelį „SpiAutoSet“, pasirinkite COM prievadą, pasirinkite „BAUDRATE“115200, panaikinkite žymės langelio, pažymėto „Atsisiuntimo kelio konfigūracija“, sukonfigūruokite kitas parinktis, kaip parodyta žemiau, ir spustelėkite „START“:

Vaizdas
Vaizdas

Jei ryšys su ESP8266 „WiFi Shield“yra tinkamas, informaciją matysite skiltyje „ATSISAKYTA INFORMACIJA“, „MAC adresas“ir „SYNC“:

Vaizdas
Vaizdas

PASTABA: Jei programa grąžina „FAIL“, patikrinkite, ar pasirinkote tinkamą COM prievadą, ar įjungtas DIP jungiklio P3 ir P4 klavišas, spustelėkite mygtuką ESP-RST, spustelėkite STOP ir dar kartą spustelėkite START.

Skiltyje „Atsisiuntimo kelio konfigūracija“pasirinkite atsisiųstą failą „Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware.bin“. Spustelėkite pirmojo laukelio „…“ir atsidariusiame lange eikite į aplanką, kuriame įdėjote programinę-aparatinę įrangą, ir pasirinkite failą „Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware.bin“. Lauke „ADDR“užpildykite poslinkį 0x00000 ir pažymėkite žymės langelį. Baigę turėsite toliau nurodytus nustatymus.

Vaizdas
Vaizdas

Dabar spustelėkite PRADĖTI, kad pradėtumėte procesą:

PASTABA: Jei naudojate „Arduino“serijos USB keitiklį kaip tarpinę priemonę tarp skydo ir kompiuterio, prieš spustelėdami START, spustelėkite skydo ESP-RST mygtuką. Jei naudojate įprastą nuoseklųjį USB keitiklį, ši procedūra nėra būtina

Vaizdas
Vaizdas

Palaukite, kol baigsis programinės aparatinės įrangos atnaujinimo procesas (procesas užtruks maždaug septynias minutes):

Vaizdas
Vaizdas

Baigę programinės aparatinės įrangos atnaujinimo procesą, uždarykite langus ESP_DOWNLOAD_TOOL_V2.4, grąžinkite DIP jungiklio P3 ir P4 kontaktus į OFF padėtį ir paspauskite skydo ESP-RST mygtuką, kad jis galėtų išeiti iš programinės įrangos atnaujinimo režimo.

Dabar atidarykite „Arduino IDE“, kad galėtumėte siųsti AT komandas į lentą, kad patikrintumėte, ar programinė įranga buvo atnaujinta teisingai ir ar plokštė reaguoja į komandas.

Atidarę IDE, eikite į meniu „Įrankiai“, tada parinktyje „Uostas“pasirinkite COM prievadą. Žemiau esančiame paveikslėlyje atkreipkite dėmesį, kad pasirinkau COM7 prievadą (jūsų prievadas tikriausiai bus kitoks):

Vaizdas
Vaizdas

Jums nereikia pasirinkti plokštės IDE, nes tai nesvarbu siunčiant AT komandas.

Atidarykite „Serial Monitor“ir poraštėje patikrinkite, ar nustatytas greitis 115200 ir ar pasirinktas „Both, NL and CR“:

Vaizdas
Vaizdas

Dabar įveskite komandą „AT“(be kabučių) ir įveskite „ENTER“arba spustelėkite „Siųsti“. Jei ryšys veikia, turėsite grąžinti pranešimą „Gerai“:

Vaizdas
Vaizdas

PASTABA: jei siunčiant komandą negaunama jokio grįžtamojo ryšio arba gaunama atsitiktinė simbolių eilutė, pakeiskite serijinio monitoriaus greitį nuo 115200 iki 9600 ir išsiųskite komandą dar kartą

„Serial Monitor“įveskite komandą „AT + GMR“(be kabučių) ir įveskite „ENTER“arba spustelėkite „Siųsti“. Jei gausite atsiliepimą, kaip parodyta žemiau, jūsų „ESP8266 WiFi Shield“buvo sėkmingai atnaujintas:

Vaizdas
Vaizdas

Jei norite pakeisti ryšio perdavimo spartą naudodami skydą 9600, įveskite komandą „AT + UART_DEF = 9600, 8, 1, 0, 0“(be kabučių) ir įveskite „ENTER“arba spustelėkite „Siųsti“. Jei gausite informaciją, kaip parodyta žemiau, pasikeitė ryšio greitis:

Vaizdas
Vaizdas

PASTABA: Keisdami skydo duomenų perdavimo spartą, monitoriaus serijos poraštėje taip pat turėtumėte pakeisti greitį nuo 115200 iki 9600. Tada dar kartą išsiųskite komandą „AT“(be kabučių) ir paspauskite „ENTER“arba spustelėkite „Siųsti“. Jei kaip atsakymą gausite „Gerai“, ryšys veikia

Jei norite naudoti skydą, kad „Arduino“priskirtumėte „WiFi“, idealus ryšio greitis yra 9600 baudų.

Kitame žingsnyje sužinosite, kokį skydą turite, nes rinkoje galima rasti bent tris skydus, kurie, atrodo, yra vienodi, tačiau iš tikrųjų šiose lentose yra keletas skirtumų, net ir klausimu darbas su „Arduino“bendraujant per vietinį serialą.

3 žingsnis: „Shiald“, „Shield“, „More“ir „Moer“? Ar tai svarbu?

Jei tai ESP8266 ESP-12E UART belaidis „WIFI Shield TTL Converter“, galima rasti bent tris plokštes, kurios, matyt, yra vienodos, tačiau iš tikrųjų šiose plokštėse yra keletas taškų, kurie skiriasi, net ir dirbant su „Arduino“per vietinį nuoseklųjį ryšį.

Toliau galite pamatyti, kuo lentos skiriasi, ir sužinoti, kuri yra jūsų.

„Shiald WiFi“ESP8266:

Vaizdas
Vaizdas

Atkreipkite dėmesį, kad šioje lentoje žodis Skydas rašomas „Shiald“, o žodis „daugiau“mažosiomis raidėmis turi „m“. Atliekant testus, kuriuos dariau ilgą laiką, lenta neparodė jokių jos veikimo trūkumų.

„Shield WiFi ESP8266“:

Vaizdas
Vaizdas

Atkreipkite dėmesį, kad šioje lentoje žodis „Skydas“parašytas teisingai, o žodžio „Daugiau“didžiosiomis raidėmis yra „M“. Veikimo srityje ši plokštė elgiasi taip pat, kaip ir „Shiald“versija, tai yra, plokštė nėra klaidinga.

Taigi jūs turite omenyje, kad „Shiald“ir „Shield“plokštės skiriasi tik PCB šilko klausimu?

Taip, šios dvi kortelės skiriasi tik dviejų žodžių rašymo klausimu. Abiejų plokščių grandinė yra ta pati ir abi puikiai veikia su „Arduino“arba atskirai (atskiras režimas). Atsižvelgiant į tai, kad „Arduino“yra įvestas teisingas kodas ir kad vienas iš skydų taip pat yra su tinkama programine įranga, pritvirtinus skydą prie „Arduino“ir prijungus USB kabelį, tiesiog padėkite DIP jungiklio P1 ir P2 kontaktus į ON padėtį ir bus palaikomas ryšys tarp vietinių nuosekliųjų (kaiščiai D0 ir D1) tarp plokščių.

Kai kurie sako, kad ši „Shiald“versija turi nestabilų belaidį ryšį, tačiau aš tvirtinu, kad nestabilumo visai nėra.

„Shield WiFi ESP8266“(„Moer“):

Vaizdas
Vaizdas

Atkreipkite dėmesį, kad šioje lentoje žodis „Skydas“parašytas teisingai, o žodis „Daugiau“- „Moer“, tai yra neteisingai. Deja, ši plokštė neveikia taip, kaip turėtų, ir jei ji yra prijungta prie „Arduino“(išjungus arba įjungus DIP jungiklio kontaktus) ir vartotojas bando įkelti kodą į „Arduino“, IDE bus rodomas klaidos pranešimas pakrovimas nepavyks.

Jei jūsų skydas yra tas, kuris parašytas Moer ir jums kilo problemų naudojant jį su „Arduino“naudojant vietinį nuoseklųjį ryšį, pereikite prie kito veiksmo ir sužinokite, kaip išspręsti problemą. Jei jūsų skydas NĖRA „Moer“, pereikite prie 5 veiksmo.

4 žingsnis: „Shield Moer“- RX / TX nuoseklaus ryšio sprendimas

Jei ši plokštė („Moer“) prijungta prie „Arduino“(išjungus arba įjungus DIP jungiklio kontaktus) ir vartotojas bando įkelti kodą į „Arduino“, IDE bus rodomas klaidos pranešimas, nes įkėlimas nepavyks. Taip yra dėl komponentų klaidos, naudojamos skydo konstrukcijoje.

Skydas, kurio konstrukcija ir veikimas yra teisingas, suvirino du N kanalo MOSFET ir yra identifikuojamas kaip J1Y. Vienas iš J1Y tranzistorių yra prijungtas prie ESP8266 RX, o kitas - prie ESP8266 TX. Žemiau esančiame paveikslėlyje galite pamatyti paryškintus du tranzistorius:

Vaizdas
Vaizdas

Šis J1Y tranzistorius yra BSS138, kurio tikslas yra sudaryti sąlygas 5 V loginio lygio grandinėms bendrauti su 3,3 V loginio lygio grandinėmis ir atvirkščiai. Kadangi ESP8266 loginis lygis yra 3,3 V, o „Arduino“- 5 V, norint užtikrinti nepriekaištingą ESP8266 veikimą, būtina naudoti loginio lygio keitiklį.

Skyde „Moer“plokštėje yra lituojami du tranzistoriai, identifikuoti kaip J3Y. Žemiau esančiame paveikslėlyje galite pamatyti paryškintus du tranzistorius:

Vaizdas
Vaizdas

J3Y tranzistorius yra S8050 NPN, o tokio tipo tranzistoriai dažniausiai naudojami stiprintuvų grandinėse. Dėl tam tikrų priežasčių, kai buvo pastatytas skydas „Moer“, jie naudojo tranzistorių J3Y, o ne loginį J1Y lygio keitiklį.

Tokiu būdu ESP8266 RX ir TX kaiščiai neveiks taip, kaip turėtų, todėl skydas neturės jokio serijinio ryšio su „Arduino“. Kadangi skydas bendrauja su „Arduino“per savąją seriją (kaiščiai D0 ir D1), jis kartu su „Arduino“kodo įkėlimu („Arduino“) niekada nebus sėkmingai užbaigtas, nes kai kuriais atvejais visada bus maždaug 2,8 V. RX ir „Arduino TX“arba pastovus 0 V, viskas dėl netinkamų tranzistorių.

Po visos šios informacijos aišku, kad vienintelis skydo „Moer“sprendimas yra J3Y tranzistorių pakeitimas J1Y tranzistoriais. Šiai procedūrai, be Moerio kantrybės skydo, jums reikės:

01 - Lituoklis01 - Tin01 - Žnyplės arba adatos replės01 - Suvirinimo siurblys02 - BSS138 (J1Y)

BSS138 (J1Y) tranzistorius naudojamas 3,3 V / 5 V loginio lygio keitiklyje.

PASTABA: Ši procedūra reikalauja, kad žinotumėte, kaip elgtis su lituokliu, ir kad turite mažiausiai suvirinimo patirties. Komponentai, kurie bus pašalinti ir kurie bus pakeisti, yra SMD komponentai ir reikalauja didesnio atsargumo bei kantrybės suvirinant įprastu lituokliu. Būkite atsargūs ir nepalikite lituoklio per ilgai prie tranzistoriaus gnybtų, nes tai gali juos sugadinti

Su karštu lituokliu pašildykite vieną iš tranzistoriaus gnybtų ir įdėkite šiek tiek alavo. Atlikite šią procedūrą kiekvienam iš dviejų tranzistorių gnybtų. Per didelis suvirinimas gnybtuose palengvins tranzistorių pašalinimą:

Vaizdas
Vaizdas

Dabar paimkite pincetus / reples, laikykite tranzistorių už šonų, pašildykite tranzistoriaus pusę, kurioje yra tik vienas gnybtas, ir priverskite tranzistorių aukštyn taip, kad gnybtas atsilaisvintų nuo lydmetalio. Vis dar su pincetu / replėmis, laikančiomis tranzistorių, pabandykite uždėti lituoklio galiuką prie kitų dviejų gnybtų ir priversti tranzistorių pakelti jį iki plokštelės atleidimo. Padarykite tai abiems tranzistoriams ir būkite labai atsargūs:

Vaizdas
Vaizdas

Nuimkite du J3Y IC iš skydo, tiesiog padėkite J1Y IC į vietą, laikykite jį su pincetu / replėmis ir šildykite kiekvieną skydo galą taip, kad skarda prisijungtų prie kontakto. Jei kontaktai yra mažai lydmetalio, šildykite kiekvieną ir padėkite daugiau skardos. Padarykite tai abiems tranzistoriams ir būkite labai atsargūs:

Vaizdas
Vaizdas

Po remonto jo skydas, kuris anksčiau neturėjo tiesioginio ryšio su „Arduino“, pradėjo jungtis prie plokštės per vietinę seriją (kaiščiai D0 ir D1).

Pirmasis bandymas patvirtinti, kad remontas buvo sėkmingas, yra pritvirtinti skydą (su visais DIP jungiklio kontaktais išjungtus) prie „Arduino“, prijungti USB kabelį prie plokštės ir kompiuterio ir bandyti įkelti kodą į „Arduino“. Jei viskas gerai, kodas sėkmingai įkeliamas.

5 veiksmas: žiniatinklio serveris su ESP8266 ESP-12E UART belaidžiu „WIFI Shield TTL Converter“, skirtu „Arduino“

Jei norite tęsti šį veiksmą, pirmiausia turite atlikti 2 veiksmą.

Kaip minėjau anksčiau, norint naudoti skydą su „Arduino“per vietinę seriją (kaiščiai D0 ir D1), būtina, kad į skydą būtų įkeliamas kodas, o „Arduino“būtų įkeliamas kitas kodas, kad būtų galima siųsti, priimti ir interpretuoti duomenys perduodami per savąjį serialą. Skyde galime įdėti AT komandų programinę įrangą ir užprogramuoti „Arduino“siųsti komandas į skydą, kad būtų galima prisijungti prie „WiFi“tinklo ir valdyti „Arduino“įėjimus ir išėjimus.

Šiame žingsnyje naudosime „WiFiESP“biblioteką, nes ji jau turi visas būtinas funkcijas, kad integruotų ESP8266 (mūsų atveju „Shield WiFi ESP8266“) į „Arduino“ir priskirtų „WiFi“prie plokštės. „WiFiESP“biblioteka veikia siunčiant AT komandas, tada belaidis maršrutizatoriaus tinklo ryšys ir bet kokia žiniatinklio serveriui pateikta užklausa nusiųs AT komandas į skydą.

Kad „WiFiESP“biblioteka veiktų, AT komandos programinės įrangos versija turi būti bent 0,25 ar naujesnė. Taigi, jei nežinote skydo AT komandos versijos, pereikite prie 2 veiksmo ir atnaujinkite plokštę su programine įranga, kurios AT komandos versija yra 1.2.0.0, tada grįžkite ir tęskite.

Vienas dalykas, kurį nustatiau atlikdamas bandymus su skydu ir „Arduino“, yra tai, kad kadangi ryšys tarp jų vyksta per vietinę seriją (kaiščiai D0 ir D1), tampa būtina, kad serija būtų išimtinai naudojama bendravimui tarp jų. Todėl nerekomenduoju naudoti „Serial.print () / Serial.println ()“informacijai spausdinti „Arduino IDE“serijos monitoriuje ar bet kurioje kitoje programoje, kurioje rodoma serijinė informacija.

Pagal numatytuosius nustatymus „WiFiESP“biblioteka sukonfigūruota rodyti serijos klaidas, įspėjimus ir kitą ryšio informaciją tarp „Arduino“ir ESP8266. Kaip jau minėjau anksčiau, serialas turėtų būti išleistas ryšiui tarp „Arduino“ir skydo. Todėl aš redagavau failą iš bibliotekos ir išjungiau visos serijos informacijos rodymą. Vienintelė informacija, kuri bus rodoma nuosekliajame monitoriuje, yra AT komandos, kurias biblioteka siunčia į skydą, kad galėtų prisijungti prie belaidžio tinklo, arba AT komandos, kad būtų įvykdytos žiniatinklio serveriui pateiktos užklausos.

Atsisiųskite modifikuotą „WiFIESP“biblioteką ir įdiekite ją į „Arduino IDE“:

„WiFIESP“mod

Bibliotekos diegimo aplanke tiesiog pasiekite kelią „WiFiEsp-master / src / Utility“, o jo viduje yra failas „debug.h“, kuris buvo redaguotas, kad būtų išjungtas serijinės informacijos rodymas. Pavyzdžiui, atidarę failą „Notepad ++“, turime 25, 26, 27, 28 ir 29 eilutes, kuriose rodomas atitinkamas informacijos, kuri bus rodoma serijiniame monitoriuje, numeracija. Atminkite, kad skaičius 0 išjungia visos informacijos rodymą serijiniame monitoriuje. Galiausiai 32 eilutėje sukonfigūravau „_ESPLOGLEVEL_“, kurio vertė 0:

Vaizdas
Vaizdas

Jei norite naudoti „WiFiESP“biblioteką kituose projektuose su ESP8266 ir norite, kad informacija būtų rodoma nuosekliajame monitoriuje, tiesiog nustatykite „_ESPLOGLEVEL_“į 3 reikšmę (numatytoji bibliotekos vertė) ir išsaugokite failą.

Kadangi jūsų skyde jau yra AT komandos programinės įrangos versija 0.25 arba naujesnė, tęskime.

Pritvirtinkite skydą prie „Arduino“(„Uno“, „Mega“, „Leonardo“ar kitos versijos, leidžiančios pritvirtinti skydą), visus DIP jungiklio kontaktus padėkite į OFF padėtį, prijunkite šviesos diodą tarp 13 kaiščio ir GND ir prijunkite USB kabelį prie Arduino ir kompiuteris:

Vaizdas
Vaizdas

Aš naudojau „Arduino Mega 2560“, tačiau galutinis rezultatas bus tas pats, jei naudosite kitą „Arduino“plokštę, leidžiančią sujungti skydą.

Atsisiųskite kodą iš nuorodos ir atidarykite jį „Arduino IDE“:

Kodo žiniatinklio serveris

Jei naudojate „Arduino Leonardo“, eikite į kodo 19 ir 20 eilutes ir pakeiskite žodį Serial į Serial1, kaip parodyta paveikslėlyje žemiau:

Vaizdas
Vaizdas

Į kodą turite įvesti savo „WiFi“tinklo pavadinimą į eilutę char * ssid = "JŪSŲ WIFI TINKLO PAVADINIMAS";, slaptažodis turėtų būti įrašytas į eilutę char * password = "JŪSŲ WIFI TINKLO PASLAPTIS"; ir „WiFi.config“eilutėje (IPAddress … turėtumėte įvesti galimą IP adresą belaidžiame tinkle, nes šis kodas naudoja statinį IP:

Vaizdas
Vaizdas

Meniu „Įrankiai“pasirinkite „Lenta“ir pasirinkite „Arduino“modelį. Dar meniu „Įrankiai“pasirinkite parinktį „Uostas“ir patikrinkite COM prievadą, kuriame buvo priskirtas jūsų „Arduino“.

Spustelėkite mygtuką, kad nusiųstumėte kodą „Arduino“ir palaukite, kol jis bus įkeltas.

Įkėlę kodą į „Arduino“, atjunkite USB kabelį nuo kortelės, uždėkite skydo DIP jungiklio P1 ir P2 kontaktus į ON padėtį ir vėl prijunkite USB kabelį prie „Arduino“.

PASTABA: Kol skydo P1 ir P2 kontaktai yra įjungtoje padėtyje, negalėsite siųsti kodų į „Arduino“, nes vietinė serija bus užimta. Prisiminkite kiekvieną kartą, kai keičiate jungiklio DIP jungiklių padėtį, paspauskite ESP-RST mygtuką

Nedelsdami atidarykite „Arduino IDE“serijos monitorių:

Vaizdas
Vaizdas

Kai serijinis monitorius atidarytas, galite vykdyti AT komandas, kurios siunčiamos į skydą paleisti žiniatinklio serverį. Jei atidarius serijinį monitorių informacija nerodoma, paspauskite „Arduino“mygtuką RESET ir palaukite.

Atminkite, kad nuosekliajame monitoriuje komanda „AT + CIPSTA_CUR“rodo IP adresą prisijungti prie žiniatinklio serverio, o komanda „AT + CWJAP_CUR“rodo belaidžio tinklo, prie kurio prijungtas skydas, pavadinimą ir slaptažodį:

Vaizdas
Vaizdas

Nukopijuokite serijiniame monitoriuje rodomą IP adresą, atidarykite interneto naršyklę, įklijuokite IP adresą ir paspauskite ENTER, kad pasiektumėte. Bus įkeltas tinklalapis, panašus į žemiau esantį:

Vaizdas
Vaizdas

Tinklalapyje yra mygtukas, kuris bus atsakingas už LED įjungimą / išjungimą, prijungtą prie „Arduino“13 kaiščio. Paspauskite mygtuką, kad įjungtumėte / išjungtumėte šviesos diodą ir pamatytumėte, kad dabartinė būsena yra atnaujinta puslapyje.

Taip pat galite pasiekti tinklalapį, pavyzdžiui, išmaniuoju telefonu ar planšetiniu kompiuteriu.

Norėdami pamatyti galutinį rezultatą, žiūrėkite toliau pateiktą vaizdo įrašą:

Tai buvo paprasta praktika, nes tikslas buvo parodyti, kaip lengva naudoti skydą su „Arduino“. Visi internete rasti projektai, naudojantys ESP8266 „WiFi“priskyrimui „Arduino“, gali būti atkurti naudojant šį „WiFi Shield“. projektų, jums nereikės nerimauti dėl grandinės maitinimo naudojant išorinį maitinimo šaltinį. Be to, jūsų projektas turės daug malonesnę estetiką.

Dabar, kai žinote, kaip integruoti „Shield WiFi ESP8266“su „Arduino“iš žiniatinklio serverio, tiesiog pakeiskite kodą ir įgyvendinkite sudėtingesnį projektą arba pradėkite kurti savo kodą.

Dar kartą atsiprašau už nesėkmes anglų kalba.

Jei turite klausimų apie skydą, tiesiog paklauskite ir aš mielai atsakysiu.

Rekomenduojamas: