Cuprins:

Convertor ESP8266 ESP-12E UART wireless WIFI Shield TTL necomplicat: 5 pași
Convertor ESP8266 ESP-12E UART wireless WIFI Shield TTL necomplicat: 5 pași

Video: Convertor ESP8266 ESP-12E UART wireless WIFI Shield TTL necomplicat: 5 pași

Video: Convertor ESP8266 ESP-12E UART wireless WIFI Shield TTL necomplicat: 5 pași
Video: Как Прошить ESP8266: ESP12, ESP01 2024, Iunie
Anonim
Convertor ESP8266 ESP-12E UART Wireless WIFI Shield TTL necomplicat
Convertor ESP8266 ESP-12E UART Wireless WIFI Shield TTL necomplicat

Acest ghid este destinat să ajute persoanele care au achiziționat convertorul ESP8266 ESP-12E UART Wireless WIFI Shield TTL și nu știu cum să îl folosească cu Arduino.

Inițial, acest tutorial a fost scris în portugheză aici, în Brazilia. Am încercat din răsputeri să scriu în engleză. Așa că iartă-mă pentru câteva greșeli care ar putea fi în scris.

Acest instructable a fost împărțit după cum urmează:

Pasul 1: Cunoașterea convertorului ESP8266 ESP-12E UART Wireless WIFI Shield TTL pentru Arduino

Pasul 2: Actualizare firmware pe convertorul ESP8266 ESP-12E UART wireless WIFI Shield TTL pentru Arduino

Pasul 3: Shiald, Shield, More și Moer? Conteaza?

Pasul 4: Shield Moer - Rezolvarea comunicării seriale RX / TX

Pasul 5: Server web cu convertor ESP8266 ESP-12E UART Wireless WIFI Shield TTL pentru Arduino

Vă recomand să citiți toți pașii pentru a afla cât mai multe despre acest scut.

Pasul 1: Cunoașterea convertorului ESP8266 ESP-12E UART Wireless WIFI Shield TTL pentru Arduino

Convertorul ESP8266 ESP-12E UART Wireless WIFI Shield TTL (Shield WiFi ESP8266) facilitează conectarea Arduino la rețelele WiFi prin intermediul ESP8266. Când îl utilizați, nu mai este necesar să montați un circuit cu mai multe componente și fire pentru a interconecta un ESP8266 la Arduino, pur și simplu atașați placa la Arduino, poziționați calea comutatorului DIP în funcție de modul de operare a ecranului și programați Arduino la conectați-vă la rețele WiFi. În plus, placa poate fi utilizată fără Arduino, deoarece are toate pin-out-urile ESP-12E disponibile.

În scut există informații că a fost creat de o persoană pe nume WangTongze și care deține drepturile acestuia este elecshop.ml. Inițial, creatorul scutului a încercat să strângă fonduri pentru proiectul său prin Indiegogo (site-ul de finanțare colectivă), dar nu a reușit să strângă bani.

Caracteristici ale modelului ESP8266 ESP-12E:

- Arhitectura RISC pe 32 de biți - Procesorul poate funcționa la 80MHz / 160MHz - 32MB memorie flash - 64kB pentru instrucțiuni - 96kB pentru date - WiFi nativ standard 802.11b / g / n - Funcționează în modul AP, stație sau AP + stație - Are 11 pini digitali - Are 1 pin analogic cu rezoluție de 10 biți - Pinii digitali cu excepția D0 au întrerupere, PWM, I2C și un fir - Programabil prin USB sau WiFi (OTA) - Compatibil cu Arduino IDE - Compatibil cu modulele și senzorii utilizați în Arduino

Mai jos puteți citi principalele caracteristici ale acestui scut:

- Dimensiunea Arduino Uno R3 și fixarea este compatibilă cu Arduino Uno, Mega 2560, Leonardo și derivate. - Versiunile minore ale Arduino (Nano și Pro Mini, de exemplu) sunt compatibile, dar conexiunile trebuie făcute prin jumperi. Tensiunea Arduino (5V) este utilizată pentru alimentarea ecranului.- Are regulator de tensiune AMS1117 3.3V, astfel încât tensiunea de 5V furnizată de Arduino este redusă la alimentarea ecranului fără a fi nevoie de energie externă.- Are un convertor de nivel logic încorporat., astfel încât nivelul Arduino TTL (5V) nu deteriorează ESP8266 care funcționează cu nivelul TTL 3.3V. Arduino / trimiterea de comenzi AT prin Arduino / upgrade de firmware prin USB Serial extern / convertor autonom - Are LED-uri indicative (PWR / DFU / AP / STA).- Deoarece este în format shield, permite introducerea altor scuturi și module.- Are butonul ESP-RST pentru a reseta ESP8266.- Th Pinul ADC ESP8266 este disponibil în două forme pe tablă, primul pe un pin cu un interval de citire de la 0 la 1V și al doilea formular în intervalul de la 0 la 3,3V.

În imagine sunt evidențiate părțile principale ale scutului:

Imagine
Imagine

A (PINI DIGITALI): secvență de pin utilizată de Arduino.

B (ESP8266 PINS): ESP8266-12E și pinii lor respectivi. Pe spatele plăcii se află nomenclatura știfturilor.

C (CONEXIUNE ADAPTER USB SERIAL EXTERN): secvența de pin utilizată pentru a conecta adaptorul USB serial serial pentru actualizarea firmware-ului sau depanarea ESP8266.

D (PINI DE ÎNTREȚINERE SHIELD): o secvență cu trei pini identificată doar ca întreținere și utilizată pentru a verifica dacă regulatorul de tensiune recepționează și furnizează corect tensiunile. NU TREBUIE SĂ UTILIZAȚI CA SURSA DE ALIMENTARE.

E (DIP SWITCH TO MODIFY OPERATING MODES): Comutator DIP cu patru căi pentru a schimba modurile de operare.

CONTACT 1 (P1) și CONTACT 2 (P2): utilizate pentru a conecta RX (reprezentat de P1) și TX (reprezentat de P2) ale ESP8266 la pinii Arduino D0 (RX) și D1 (TX). P1 și P2 în poziția OFF dezactivează conexiunea RX de la ESP8266 la Arduino TX și TX de la ESP8266 la Arduino RX.

CONTACT 3 (P3) și CONTACT 4 (P4): utilizate pentru a activa și dezactiva modul de actualizare firmware pentru ESP8266. Pentru a activa scrierea / încărcarea firmware-ului pe ESP8266, P3 și P4 trebuie să fie în poziția ON. Când P4 este în poziția ON, LED-ul DFU se va aprinde, indicând faptul că ESP8266 este activat pentru a primi firmware-ul. Pentru a dezactiva modul de actualizare firmware și a seta ESP8266 la funcționare normală, pur și simplu setați P3 și P4 la OFF.

NOTĂ: Toate cele 4 contacte în poziția OFF indică faptul că ESP8266 funcționează în modul normal lângă Arduino

F (AD8 FROM ESP8266): alocarea pinilor pentru ESP8266 ADC. Un pin care funcționează în intervalul de la 0 la 1V și un alt pin care funcționează în intervalul de la 0 la 3,3V. Acești pini vor fi utilizați numai atunci când se utilizează ESP8266 singur (mod autonom).

G (ESP8266 RESET): buton utilizat pentru resetarea ESP8266. Ori de câte ori schimbați poziția comutatoarelor DIP, trebuie să apăsați butonul ESP-RST.

H (PIN ANALOGIC ȘI ALIMENTARE): secvență de pin utilizată de Arduino.

Acest scut are o particularitate în contactele P1 și P2 ale comutatorului DIP și această particularitate, de fapt, generează o mare îndoială în oamenii care încearcă să utilizeze scutul.

Potrivit creatorului scutului, atunci când îl conectați la Arduino vor fi necesari doar 2 pini. Acești pini ar fi D0 și D1 (respectiv RX și TX Arduino) și, în plus, contactele P1 și P2 ale comutatorului DIP de pe ecran trebuie să fie în poziția ON pentru conexiune.

Într-unul dintre singurele documente chinezești despre acest scut, creatorul forumului spune:

P1 și P2 sunt codificatoare de biți și sunt utilizate pentru a determina dacă serialul ESP8266 este sau nu conectat la Arduino D0 și D1.

În altă secțiune a documentului este menționat:

Această placă de expansiune menține seria Arduino ocupată, conectând RX de la ESP8266 la TX de la Arduino și TX de la ESP8266 la Arduino RX.

Pinii Arduino D0 (RX) și D1 (TX) corespund comunicării seriale / USB native, astfel încât acești pins rămân ocupați ori de câte ori trimitem cod la placă sau folosim monitorul serial. Prin urmare, dacă contactele P1 și P2 ale ecranului sunt în poziția ON, ESP8266 va folosi Arduino D0 și D1 și nu va fi posibil să trimiteți coduri sau să folosiți serialul, deoarece va fi ocupat. În plus, pentru a trimite comenzi AT la ecran, este necesar ca ESP8266 RX să fie conectat la Arduino RX și ca ESP8266 TX să fie conectat la Arduino TX. Acest lucru se va întâmpla numai dacă inversăm conexiunile așa cum se arată în imaginea de mai jos:

Imagine
Imagine

Vezi că am îndoit contactele D0 și D1 ale scutului și am conectat Arduino D0 la D1 al scutului și D1 al Arduino la D0 al scutului. Când am folosit conexiunea în acest mod (Arduino fiind folosit ca o punte de conexiune), am putut trimite comenzi AT către ESP8266 și am confirmat ceea ce mi-am imaginat deja.

Forma standard de operare a scutului necesită ca un cod (server web sau firmware, de exemplu) să fie încărcat în scut și un alt cod să fie încărcat în Arduino pentru a trimite, primi și interpreta datele care vin prin serialul nativ. Mai multe detalii despre această formă de comunicare vor fi văzute în pașii următori.

Oricum, această caracteristică a scutului nu interferează în funcționarea sa, deoarece de obicei emulăm un serial pe alți pini digitali Arduino, astfel încât să putem avea serialul nativ disponibil. În plus, dacă este necesar să trimitem comenzi AT la scut, îl putem conecta la Arduino prin patru cabluri sau putem folosi un convertor USB serial.

În cele din urmă, ecranul a fost foarte stabil și a făcut asamblarea circuitelor foarte ușoară. Am testat cu Arduino Uno R3 și Mega 2560 R3.

În pasul următor veți afla cum să actualizați / să modificați firmware-ul scutului.

Pasul 2: Actualizare firmware pe convertorul ESP8266 ESP-12E UART wireless WIFI Shield TTL pentru Arduino

Pentru a conecta ecranul la computer este necesar să utilizați un convertor USB serial. Dacă nu aveți un convertor serial USB convențional, puteți utiliza convertorul Arduino Uno R3 ca intermediar. Există mai multe modele de convertoare USB seriale pe piață, dar pentru acest tutorial am folosit adaptorul de convertor USB Serial PL2303HX TTL.

Pentru a actualiza scutul, utilizați:

Instrumente de descărcare Flash ESP8266

Firmware-ul care va fi utilizat este:

Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a Firmware AT

După ce ați descărcat programul și firmware-ul, copiați ambele pe rădăcina (unitatea C) a Windows-ului dvs.

Unzip flash_download_tools_v2.4_150924.rar și folderul FLASH_DOWNLOAD_TOOLS_v2.4_150924 vor fi generate.

Utilizarea convertorului USB serial Arduino Uno R3 ca intermediar:

Următorul pas este conectarea scutului la computer. Dacă nu aveți un convertor USB serie standard, puteți utiliza Arduino Uno R3 pentru a conecta scutul și computerul. În plus față de Arduino Uno R3 cu cablu USB, veți avea nevoie de:

01 - ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter04 - Cabluri jumper-masculin

NOTĂ: Înainte de a monta schema de cablare Arduino, trebuie să încărcați un cod necompletat pe placa pentru a vă asigura că convertorul USB serial nu este utilizat. Încărcați codul de mai jos în Arduino și continuați:

void setup () {// puneți codul de configurare aici, pentru a rula o dată:} void loop () {// puneți codul principal aici, pentru a rula în mod repetat:}

Imagine
Imagine

NOTĂ: Rețineți când atașați pinul de scut de 3,3 V la Arduino.

Folosind adaptorul serial TTL USB Converter PL2303HX:

Veți avea nevoie de următoarele elemente în plus față de adaptorul convertor USB serial PL2303HX TTL:

01 - ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter04 - Cabluri jumper-masculin

Imagine
Imagine

NOTĂ: PL2303 are putere de 5V și 3V3. Folosiți alimentarea 3V3 și ignorați pinul de 5V

După ce realizați una dintre schemele de conectare de mai sus, pur și simplu conectați cablul USB (la Arduino și computer) sau convertorul USB serial la computer.

Apoi accesați „Panoul de control” din Windows, „Manager dispozitive”, iar în fereastra care se deschide accesați „Porturi (COM și LPT)”. Puteți vedea dispozitivul conectat și numărul portului COM pe care a fost alocat. Ca o demonstrație, am conectat atât computerul Arduino, cât și convertorul USB serial, iar în imaginea de mai jos puteți vedea cum apar dispozitivele în manager:

Imagine
Imagine

Dacă utilizați PL2303HX și nu este recunoscut de Windows, accesați postul Convertor serial TTL USB PL2303HX - Instalare în Windows 10, vedeți cum să îl rezolvați și apoi reveniți pentru a continua.

Acum mergeți la folderul FLASH_DOWNLOAD_TOOLS_v2.4_150924 și rulați ESP_DOWNLOAD_TOOL_V2.4.exe:

Imagine
Imagine

Pe ecran, așezați contactele P3 și P4 ale comutatorului DIP în poziția ON și apoi apăsați butonul ESP-RST de pe card, astfel încât ecranul să intre în modul de actualizare firmware:

Imagine
Imagine

Cu programul deschis, debifați opțiunea „SpiAutoSet”, selectați portul COM, selectați „BAUDRATE” 115200, debifați orice casetă de selectare marcată în „Descărcare configurație cale”, configurați celelalte opțiuni așa cum se arată mai jos și faceți clic pe „START”:

Imagine
Imagine

Dacă comunicarea cu ESP8266 WiFi Shield este OK, veți vedea informații în „INFORMAȚII DETECTATE”, „Adresă MAC” și „SYNC”:

Imagine
Imagine

NOTĂ: Dacă programul returnează „FAIL”, verificați dacă ați selectat portul COM corect, verificați dacă tastele P3 și P4 ale comutatorului DIP sunt PORNITE, faceți clic pe butonul ESP-RST, faceți clic pe STOP și din nou faceți clic pe START.

În „Download Path Config” trebuie să selectați fișierul „Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware.bin” descărcat. Faceți clic pe „…” din primul câmp și în fereastra care se deschide navigați la folderul în care ați plasat firmware-ul și selectați fișierul „Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware.bin”. În câmpul „ADDR” completați decalajul 0x00000 și bifați caseta de selectare pentru a termina. Când ați terminat, veți avea setările așa cum se arată mai jos:

Imagine
Imagine

Acum faceți clic pe START pentru a începe procesul:

NOTĂ: Dacă utilizați convertorul USB serial Arduino ca intermediar între ecran și computer, faceți clic pe butonul ESP-RST al ecranului înainte de a face clic pe START. Dacă utilizați un convertor USB serial convențional, această procedură nu este necesară

Imagine
Imagine

Așteptați finalizarea procesului de actualizare a firmware-ului (procesul va dura aproximativ șapte minute):

Imagine
Imagine

După finalizarea procesului de actualizare firmware, închideți ferestrele ESP_DOWNLOAD_TOOL_V2.4, readuceți contactele P3 și P4 ale comutatorului DIP în poziția OFF și apăsați butonul ESP-RST de pe ecran, astfel încât să poată ieși din modul de actualizare firmware.

Acum deschideți IDE-ul Arduino, astfel încât să puteți trimite comenzi AT către placa pentru a verifica dacă firmware-ul a fost actualizat corect și că placa răspunde la comenzi.

Cu IDE deschis, accesați meniul „Instrumente” și apoi în opțiunea „Port” selectați portul COM. Rețineți în imaginea de mai jos că am selectat portul COM7 (portul dvs. va fi probabil diferit):

Imagine
Imagine

NU trebuie să selectați placa din IDE, deoarece acest lucru este irelevant pentru trimiterea comenzilor AT.

Deschideți „Monitorul serial” și în subsol verificați dacă viteza este setată la 115200 și dacă este selectat „Ambele, NL și CR”:

Imagine
Imagine

Acum tastați comanda „AT” (fără ghilimele) și dați „ENTER” sau faceți clic pe „Trimiteți”. Dacă conexiunea funcționează, va trebui să returnați mesajul „OK”:

Imagine
Imagine

NOTĂ: Dacă trimiterea comenzii NU primește feedback sau primește un șir de caractere aleatoriu, modificați viteza de la 115200 a monitorului serial la 9600 și trimiteți din nou comanda

În „Monitor serial” tastați comanda „AT + GMR” (fără ghilimele) și dați „ENTER” sau faceți clic pe „Trimite”. Dacă primiți feedback așa cum se arată mai jos, atunci ESP8266 WiFi Shield a fost actualizat cu succes:

Imagine
Imagine

Dacă doriți să modificați viteza de transmisie a comunicării cu ecranul 9600, introduceți comanda „AT + UART_DEF = 9600, 8, 1, 0, 0” (fără cotare) și dați „ENTER” sau faceți clic pe „Trimite”. Dacă primiți informațiile așa cum se arată mai jos, atunci viteza de comunicare s-a schimbat:

Imagine
Imagine

NOTĂ: Când schimbați viteza de transmisie a scutului, ar trebui să modificați viteza de la 115200 la 9600 în subsolul monitorului Serial. Apoi trimiteți din nou comanda „AT” (fără ghilimele) și apăsați „ENTER” sau faceți clic pe „Trimite”. Dacă primiți „OK” ca returnare, atunci comunicarea funcționează

Dacă doriți să utilizați scutul pentru a atribui WiFi Arduino, viteza de comunicare ideală este de 9600 baud.

În pasul următor veți afla ce scut aveți, deoarece este posibil să găsiți pe piață cel puțin trei scuturi care par a fi aceleași, dar de fapt aceste plăci au câteva puncte care le diferă, chiar și în ceea ce privește lucrul cu Arduino prin comunicare prin serialul nativ.

Pasul 3: Shiald, Shield, More și Moer? Conteaza?

Dacă este convertorul ESP8266 ESP-12E UART Wireless WIFI Shield TTL, este posibil să găsiți cel puțin trei plăci care sunt aparent aceleași, dar de fapt aceste plăci au unele puncte care le diferă, chiar și în ceea ce privește lucrul cu Arduino prin comunicare serială nativă.

În continuare puteți vedea ce diferențiază panourile și puteți afla care este a ta.

Shiald WiFi ESP8266:

Imagine
Imagine

Rețineți că pe această placă cuvântul Shield este scris „Shiald”, iar cuvântul „more” are „m” cu litere mici. În testele pe care le-am făcut multă vreme, placa NU a prezentat defecte în funcționarea sa.

Shield WiFi ESP8266:

Imagine
Imagine

Rețineți că pe această placă cuvântul Shield este scris corect și cuvântul „More” are „M” cu majuscule. În ceea ce privește funcționarea, această placă se comportă la fel ca versiunea Shiald, adică placa nu este defectă.

Deci vrei să spui că plăcile Shiald și Shield au diferențe doar în problema mătasei PCB?

Da, aceste două cărți au diferență doar în ceea ce privește scrierea a două cuvinte. Circuitul de pe ambele plăci este același și ambele funcționează perfect cu Arduino sau singur (modul independent). Având în vedere că Arduino are codul corect încărcat și că unul dintre scuturi este, de asemenea, cu firmware-ul corect, după atașarea scutului la Arduino și conectarea cablului USB, pur și simplu puneți contactele P1 și P2 ale comutatorului DIP în poziția ON iar comunicarea prin serial nativ (pinii D0 și D1) între plăci se va face.

Unii spun că această versiune Shiald are conexiunea wireless instabilă, dar afirm că nu există deloc instabilitate.

Shield WiFi ESP8266 (Moer):

Imagine
Imagine

Rețineți că pe această tablă cuvântul Shield este scris corect și cuvântul „More” este scris „Moer”, adică greșit. Din păcate, această placă nu funcționează așa cum ar trebui și dacă este atașată la Arduino (cu contactele comutatorului DIP OFF sau ON) și utilizatorul încearcă să încarce un cod pe Arduino, un mesaj de eroare va apărea în IDE ca încărcarea va eșua.

Dacă scutul dvs. este cel care este scris în Moer și ați avut probleme cu utilizarea acestuia cu Arduino prin intermediul comunicării seriale native, treceți la pasul următor și aflați cum să rezolvați problema. Dacă scutul dvs. NU ESTE Moerul, treceți la pasul 5.

Pasul 4: Shield Moer - Rezolvarea comunicării seriale RX / TX

Dacă această placă (Moer) este cuplată la Arduino (cu contactele comutatorului DIP OFF sau ON) și utilizatorul încearcă să încarce un cod pe Arduino, un mesaj de eroare va apărea în IDE, deoarece încărcarea va eșua. Acest lucru se datorează unei erori de componentă utilizate în construcția scutului.

Scutul care are construcție și funcționare corectă, a sudat două MOSFET-uri Channel N și sunt identificate ca J1Y. Unul dintre tranzistoarele J1Y este conectat la ESP8266 RX, iar celălalt este conectat la ESP8266 TX. În imaginea de mai jos puteți vedea cele două tranzistoare evidențiate:

Imagine
Imagine

Acest tranzistor J1Y este un BSS138 al cărui scop este de a permite circuitelor de nivel logic de 5V să comunice cu circuite de nivel logic de 3,3V și invers. Deoarece ESP8266 are un nivel logic de 3,3V, iar Arduino are un nivel logic de 5V, este necesar să utilizați un convertor de nivel logic pentru a asigura funcționarea perfectă a ESP8266.

În ecranul Moer, sunt lipite pe placă două tranzistoare identificate ca J3Y. În imaginea de mai jos puteți vedea cele două tranzistoare evidențiate:

Imagine
Imagine

Tranzistorul J3Y este un S8050 NPN și acest tip de tranzistor este utilizat în mod obișnuit în circuitele amplificatorului. Din anumite motive, la momentul construcției scutului Moer, au folosit tranzistorul J3Y în locul convertorului de nivel logic J1Y.

În acest fel, pinii RX și TX ai ESP8266 nu vor funcționa așa cum ar trebui și, prin urmare, ecranul nu va avea nicio comunicație serială cu Arduino. Deoarece ecranul comunică cu Arduino prin serialul nativ (pinii D0 și D1), acesta cuplat la încărcarea codului Arduino (în Arduino) nu va fi niciodată finalizat cu succes, deoarece, în unele cazuri, vor exista întotdeauna aproximativ 2.8V în RX și Arduino TX sau 0V constant, toate din cauza tranzistoarelor greșite.

După toate aceste informații, este clar că singura soluție pentru ecranul Moer este înlocuirea tranzistoarelor J3Y cu tranzistoarele J1Y. Pentru această procedură veți avea nevoie, pe lângă scutul Moer al răbdării, și:

01 - Fier de lipit01 - Tin01 - Forceps sau ac de clește01 - Ventilator de sudură02 - BSS138 (J1Y)

Tranzistorul BSS138 (J1Y) este utilizat în convertorul de nivel logic 3.3V / 5V.

NOTĂ: Următoarea procedură necesită să știți cum să manipulați un fier de lipit și să aveți cea mai mică experiență de sudare. Componentele care vor fi eliminate și cele care vor fi înlocuite sunt componente SMD și necesită o mai mare îngrijire și răbdare atunci când se sudează cu un fier de lipit comun. Aveți grijă să nu lăsați lipitorul prea mult la bornele tranzistorului, deoarece acest lucru le poate deteriora

Cu fierul de lipit la cald, încălziți unul dintre terminalele tranzistorului și puneți niște tablă. Efectuați această procedură pentru fiecare dintre terminalele celor două tranzistoare. Sudarea în exces la terminale va facilita îndepărtarea tranzistoarelor:

Imagine
Imagine

Acum luați penseta / clește, țineți tranzistorul de laturi, încălziți partea tranzistorului care are un singur terminal și forțați tranzistorul în sus, astfel încât terminalul să se desprindă de lipit. Încă cu penseta / cleștele care ține tranzistorul, încercați să așezați vârful fierului de lipit pe celelalte două terminale și forțați tranzistorul în sus pentru a-l elibera de pe placă. Faceți acest lucru pentru ambele tranzistoare și fiți foarte atenți:

Imagine
Imagine

Am scos cele două IC-uri J3Y de pe ecran, pur și simplu poziționați IC-ul J1Y în poziție, țineți-l cu penseta / clește și încălziți fiecare capăt al ecranului, astfel încât tablă să se unească la contact. Dacă contactele sunt puțin lipite, încălziți fiecare și puneți mai mult tablă. Faceți acest lucru pentru ambele tranzistoare și fiți foarte atenți:

Imagine
Imagine

După reparație, ecranul său care anterior nu avea nicio comunicație directă cu Arduino, a început să aibă conexiune cu placa prin serialul nativ (pinii D0 și D1).

Un prim test pentru a confirma că reparația a reușit este atașarea ecranului (cu toate contactele comutatorului DIP OPRIT) la Arduino, conectarea cablului USB la placa și computer și încercarea de a încărca un cod în Arduino. Dacă totul este în regulă, codul se va încărca cu succes.

Pasul 5: Server web cu convertor ESP8266 ESP-12E UART Wireless WIFI Shield TTL pentru Arduino

Ca o cerință principală pentru a continua acest pas, ar fi trebuit să efectuați pasul 2.

După cum am menționat mai devreme, pentru a utiliza scutul cu Arduino prin serialul nativ (pinii D0 și D1), este necesar ca un cod să fie încărcat în scut și ca Arduino să fie încărcat cu un alt cod pentru a trimite, primi și interpreta traficul de date prin serialul nativ. În ecran, putem pune un firmware de comenzi AT și programăm Arduino pentru a trimite comenzile către ecran pentru a ne conecta la o rețea WiFi și pentru a controla intrările și ieșirile Arduino.

În acest pas vom folosi biblioteca WiFiESP, deoarece are deja toate funcțiile necesare pentru a integra ESP8266 (Shield WiFi ESP8266 în cazul nostru) la Arduino și a atribui WiFi plăcii. Biblioteca WiFiESP funcționează prin trimiterea de comenzi AT, apoi conexiunea la rețea fără fir a routerului și orice cerere adresată serverului web va avea ca rezultat trimiterea comenzilor AT către ecran.

Pentru ca biblioteca WiFiESP să funcționeze, versiunea firmware a comenzii AT trebuie să fie de cel puțin 0,25 sau mai mare. Deci, dacă nu cunoașteți versiunea de comandă AT a scutului dvs., mergeți la pasul 2 pentru a actualiza placa cu firmware care are o versiune de comandă AT 1.2.0.0 și apoi reveniți pentru a continua.

Un lucru pe care l-am identificat în timpul testelor mele cu scutul și Arduino este că, deoarece comunicarea dintre ele are loc prin serialul nativ (pinii D0 și D1), devine necesar ca serialul să fie de utilizare exclusivă pentru comunicarea dintre ei. Prin urmare, nu recomand să utilizați „Serial.print () / Serial.println ()” pentru a imprima informații pe monitorul serial Arduino IDE sau orice alt program care afișează informații seriale.

În mod implicit, biblioteca WiFiESP este configurată pentru a afișa erori de serie, avertismente și alte informații de comunicare între Arduino și ESP8266. După cum am menționat anterior, serialul ar trebui să fie lansat pentru comunicarea dintre Arduino și scut. Prin urmare, am editat un fișier din bibliotecă și am dezactivat afișarea tuturor informațiilor din serial. Singurele informații care vor fi afișate pe monitorul serial sunt comenzile AT pe care biblioteca le trimite scutului pentru a se conecta la rețeaua fără fir sau comenzile AT pentru a executa cererile făcute către serverul web.

Descărcați biblioteca WiFIESP modificată și instalați-o în ID-ul Arduino:

WiFIESP Mod

În folderul de instalare a bibliotecii, pur și simplu accesați calea „WiFiEsp-master / src / utility” și în interiorul acestuia există fișierul „debug.h” care a fost editat pentru a dezactiva afișarea informațiilor pe serial. Deschiderea fișierului în Notepad ++, de exemplu, avem liniile 25, 26, 27, 28 și 29 care arată o numerotare corespunzătoare pentru tipurile de informații care vor fi afișate pe monitorul serial. Rețineți că numărul 0 dezactivează afișarea tuturor informațiilor pe monitorul serial. În cele din urmă, în linia 32 am configurat „_ESPLOGLEVEL_” cu valoarea 0:

Imagine
Imagine

Dacă doriți să utilizați biblioteca WiFiESP în alte proiecte cu ESP8266 și aveți nevoie ca informațiile să fie afișate pe monitorul serial, pur și simplu setați „_ESPLOGLEVEL_” la valoarea 3 (valoarea implicită a bibliotecii) și salvați fișierul.

Deoarece scutul dvs. are deja versiunea de firmware de comandă AT 0.25 sau mai mare, să continuăm.

Atașați scutul la Arduino (Uno, Mega, Leonardo sau altă versiune care permite atașarea scutului), puneți toate contactele comutatorului DIP în poziția OFF, conectați un LED între pinul 13 și GND și conectați cablul USB la Arduino și computerul:

Imagine
Imagine

Am folosit Arduino Mega 2560, cu toate acestea, rezultatul final va fi același dacă utilizați o altă placă Arduino care permite cuplarea scutului.

Descărcați codul de pe link și deschideți-l în IDE-ul Arduino:

Server Web cod

Dacă utilizați Arduino Leonardo, mergeți la liniile 19 și 20 ale codului și schimbați cuvântul Serial în Serial1, așa cum se arată în imaginea de mai jos:

Imagine
Imagine

În cod trebuie să introduceți numele rețelei WiFi în linia char * ssid = "NAME OF Your WIFI NETWORK"; parola trebuie să fie introdusă în linia char * password = "PASSWORD OF YOUR WIFI NETWORK"; și pe linia WiFi.config (IPAddress … ar trebui să introduceți o adresă IP disponibilă în rețeaua dvs. wireless, deoarece acest cod utilizează IP static:

Imagine
Imagine

În meniul „Tools”, selectați „Board” și selectați modelul Arduino. În meniul „Instrumente”, selectați opțiunea „Port” și verificați portul COM în care a fost alocat Arduino.

Faceți clic pe buton pentru a trimite codul către Arduino și așteptați încărcarea.

După încărcarea codului pe Arduino, deconectați cablul USB de pe card, puneți contactele P1 și P2 ale comutatorului DIP al ecranului în poziția ON și conectați din nou cablul USB la Arduino.

NOTĂ: Atâta timp cât contactele P1 și P2 ale scutului sunt în poziția ON, nu veți putea trimite coduri către Arduino, deoarece serialul nativ va fi ocupat. Amintiți-vă de fiecare dată când schimbați poziția comutatoarelor DIP, apăsați butonul ESP-RST

Deschideți imediat monitorul serial Arduino IDE:

Imagine
Imagine

Cu monitorul serial deschis puteți urmări comenzile AT care sunt trimise la scut pentru a rula serverul web. Dacă nu este afișată nicio informație la deschiderea monitorului serial, apăsați butonul RESET de pe Arduino și așteptați.

Rețineți că pe monitorul serial comanda „AT + CIPSTA_CUR” arată adresa IP pentru conectarea la serverul web și comanda „AT + CWJAP_CUR” arată numele și parola rețelei wireless în care este conectat ecranul:

Imagine
Imagine

Copiați adresa IP afișată pe monitorul serial, deschideți browserul de internet, lipiți adresa IP și apăsați ENTER pentru a accesa. Se va încărca o pagină web similară cu cea de mai jos:

Imagine
Imagine

Pagina web are un buton care va fi responsabil pentru pornirea / oprirea LED-ului conectat la pinul 13 al Arduino. Apăsați butonul pentru a porni / opri LED-ul și a vedea că starea actuală este actualizată pe pagină.

De asemenea, puteți accesa pagina web prin intermediul unui smartphone sau tabletă, de exemplu.

Vedeți videoclipul de mai jos pentru rezultatul final:

Aceasta a fost o practică simplă, deoarece scopul a fost de a arăta cât de ușor este să folosiți scutul cu Arduino. Toate proiectele pe care le găsiți pe internet care utilizează ESP8266 pentru a atribui WiFi Arduino, pot fi reproduse cu acest WiFi Shield, diferența este că nu va trebui să montați divizoare de tensiune în protoboard pentru a comunica platforme, și în mod simplu proiecte nu va trebui să vă faceți griji cu privire la alimentarea circuitului cu sursă de alimentare externă. În plus, proiectul dvs. va avea o estetică mult mai plăcută.

Acum că știți cum să integrați Shield WiFi ESP8266 cu Arduino de pe un server web, pur și simplu modificați codul și implementați un proiect mai elaborat sau începeți să vă dezvoltați propriul cod.

Încă o dată, îmi pare rău pentru eșecurile în limba engleză.

Dacă aveți întrebări despre scut, întrebați și voi răspunde cu plăcere.

Recomandat: