Taula de continguts:

Connecteu Arduino Uno amb ESP8266: 9 passos
Connecteu Arduino Uno amb ESP8266: 9 passos

Vídeo: Connecteu Arduino Uno amb ESP8266: 9 passos

Vídeo: Connecteu Arduino Uno amb ESP8266: 9 passos
Vídeo: ESP32 UART TUTORIAL AND BASIC DEMO - How to connect ESP32 to Arduino Uno Step by Step 2024, Desembre
Anonim
Connecteu Arduino Uno amb ESP8266
Connecteu Arduino Uno amb ESP8266

Benvingut! Esteu a punt de llegir una guia pas a pas sobre com connectar el vostre Arduino Uno a Internet amb l’ESP8266 (ESP-01). També és el meu primer instructiu de la història, tan pelat amb mi si us plau!

Deixeu-me començar dient que l’ESP8266 és una petita peça de maquinari de baix cost que, si es programa correctament, pot obrir un món enorme, especialment el d’IOT. De sobte, tots els vostres projectes es poden activar a través de la web, ja sigui a través del vostre telèfon o PC, amb només fer clic en un botó. Les possibilitats són infinites i, d’alguna manera, em fa molta il·lusió. Malauradament, no sempre és un procés fàcil i és probable que tingueu problemes que jo no tinc. Sigui com sigui, faré tot el possible per respondre a preguntes i per esmentar tots els problemes que he trobat.

Actualització del 2020: recentment he hagut d’actualitzar un nou ESP8266 i he utilitzat aquest article com a guia personal sobre com fer-ho. Ràpidament em vaig adonar que alguns enllaços que he proporcionat no estan actualitzats o no funcionen, així que vaig intentar substituir-los de nou. En fer-ho, he descobert que hi ha un nou programari intermitent per a l’ESP8266, així com algun firmware molt ben documentat i actualitzat. Vaig fer tot el possible per actualitzar l’ESP al darrer firmware possible, però sense cap èxit. El nou intermitent és més sofisticat, però alhora més complicat. Hi ha molt més descàrregues de microprogramari disponibles (cosa increïble), però al mateix temps els usuaris no tenen ni idea de quina descarregar. Tècnicament, tot això sona molt bé i, finalment, l'ESP té una certa compatibilitat i documentació "oficial", però al mateix temps es va complicar molt. Després d’aproximadament 4 hores d’investigació i algunes proves i errors, he decidit renunciar i utilitzar simplement el mateix intermitent i fitxer que he fet servir al llarg d’aquest article. He actualitzat els enllaços i els he allotjat jo mateix, de manera que mentre no ho faci, quedaran en línia per sempre. Si voleu llegir una mica més sobre aquestes noves incorporacions de la comunitat, aneu a l'últim pas d'aquest instructable, on he publicat alguns enllaços addicionals.

Pas 1: maquinari

Maquinari
Maquinari

Actualització del 2020: he trobat un vídeo de YouTube que realment es connecta a l'ESP sense soldar res i sense cap adaptador.

Molt bé, per tant, és una part una mica complicada, ja que hi ha moltes maneres de comunicar-se amb l’ESP6288. Vaig intentar trobar les maneres més senzilles possibles i em sap greu dir-vos-ho, però no crec que pugueu carregar codi a l'ESP sense soldar un petit interruptor o alguns botons … Al final ha utilitzat el següent maquinari:

  1. Arduino Uno
  2. ESP8266 (ESP-01)
  3. Adaptador USB ESP8266
  4. Adaptador ESP-01
  5. Canvieu l'adaptador USB
  6. 4 cables de pont femení-masculí
  7. Cable USB per connectar Arduino i PC

Com veieu, no són tan cars, a més, no cal fer servir cap tauleta de suport ni totes aquestes resistències estranyes i coses semblants. Tot són cables i adaptadors simples.

Viouslybviament, necessitareu un Arduino i un ESP8266. Però també necessiteu dos adaptadors per a l'ESP:

  • Un per poder-lo programar (número 3 de la llista). Aquest també és l'adaptador que tindrà la nostra pròpia modificació amb un commutador.
  • Un segon adaptador perquè no mori l'ESP connectant-lo a l'Arduino (número 4 de la llista). Com que l'ESP funciona a 3,3 V, 5 V de l'Arduino el mataran. I els 3,3 V de l’Arduino no són prou potents.

Per últim, també són necessaris alguns cables jumper i un cable USB per connectar l'Arduino al PC.

Pas 2: soldar un commutador a l'adaptador USB

Soldar un commutador a l’adaptador USB
Soldar un commutador a l’adaptador USB
Soldar un commutador a l’adaptador USB
Soldar un commutador a l’adaptador USB

Malauradament, per programar l’ESP, necessitareu una manera de connectar el pin GND i el pin GPIO0. He aconseguit soldar un petit interruptor que us permetrà triar si voleu estar en "mode de programa" o no. El següent vídeo de Youtube us ajudarà amb aquesta tasca; us recomano que el mireu, ja que també us explica una mica sobre el programari i per què heu de connectar Ground i GPIO 0.

En resum, això és el que vaig fer:

  • Talleu una de les potes externes de l’interruptor, pot ser la dreta o l’esquerra
  • Gireu l'adaptador USB cap per avall i soldeu les dues potes del commutador al pin GND i al pin GPIO0. Aneu amb compte de no connectar altres pins, ja que potser no funcionarà més endavant.
  • Proveu el commutador amb un multímetre

De nou, si teniu dubtes, consulteu l’enllaç de Youtube anterior.

A més, la imatge superior té l'interruptor en el "mode de programa". En cas que hàgiu soldat exactament els mateixos pins d'interruptor que jo, ara ja sabeu quin costat és el "Mode de programa".

I si no us agraden els canvis, aquí teniu un tutorial amb botons.

Pas 3: programari

Per a aquells que només cerquen enllaços, aquí els teniu.

ESP8266:

  • Intermitent
  • Firmware (estic segur que aquesta serà l’última versió, ja que no s’ha actualitzat des del desembre del 2016)

Arduino Uno:

  • IDE Arduino
  • URL del gestor del fòrum (això tampoc canviarà, sempre és el mateix enllaç)

I per a aquells que no tenen ni idea del que signifiquen aquests enllaços, deixeu-me guiar-vos.

  1. El primer pas és instal·lar l’IDE Arduino. Hauria de ser bastant senzill … Premeu el següent següent, etc. i ja està.
  2. El següent és la configuració de l’IDE perquè pugueu programar el vostre ESP. Per fer-ho, heu d’anar a Fitxer -> Preferències i, a la part inferior, a URL de gestor de taulers addicionals: enganxeu l’URL següent.
  3. A continuació, aneu a Eines -> Tauler -> Gestor de taules i desplaceu-vos fins a trobar-ne un anomenat esp8266 i premeu instal·lar. Darrera versió si us plau. Quan hagi acabat d'instal·lar, reinicieu l'IDE.
  4. Ara descarregueu tant el flasher com el firmware de l’ESP. Creeu una carpeta a l'escriptori anomenada "Intermitent" i descomprimiu els dos fitxers descarregats que hi ha. Els necessitarem més endavant.

Molt bé, ara mateix hauríeu de tenir tot el programari necessari per programar l’ESP.

Pas 4: provar l'ESP

El següent és la vostra primera connexió amb l’ESP. Aquesta part és una mica complicada i el que ha funcionat per a mi pot no funcionar per a tu … Esperem el millor.

Comencem carregant un esbós prefabricat que parpelleja un LED blau a l'ESP. Perquè això funcioni, necessiteu el següent:

  • Un adaptador USB modificat per a l'ESP, de manera que podeu configurar-lo en "Mode de programa". Pas 2 d'aquest instructable.
  • Conegueu a quin port USB (port COM) es connectarà el vostre ESP.

Si no coneixeu el port COM, no us preocupeu. És fàcil esbrinar-ho. Obriu el vostre IDE i feu clic a Eines -> Port i preneu nota dels ports indicats. Després, introduïu l'adaptador USB i torneu a comprovar els ports indicats. El nou és el port COM que esteu buscant.

PD: Sóc usuari de Windows. Si no recordo bé, els Mac no els diuen ports COM. Sigui com sigui, encara hauria de funcionar.

Ara que ja coneixeu el vostre port, no dubteu a connectar l’adaptador USB. Hauria d'estar en "mode de programa", és a dir, hauria d'estar connectat GND i GPIO0. Obriu l'IDE i aneu a Eines -> Tauler i trieu el mòdul ESP8266 genèric. A continuació, a Eines, assegureu-vos que teniu la configuració següent:

  • Tauler: "Mòdul ESP8266 genèric"
  • Port: el vostre port COM

Per últim, aneu a Fitxer -> Exemples -> ESP8266 -> Parpellejar i feu clic a la petita marca de verificació que hi ha a l'extrem superior esquerre de l'IDE. Això verificarà el vostre codi i us indicarà si hi ha algun problema. Us recomano que ho feu cada vegada abans de penjar un esbós a l’ESP o l’Arduino. Si té èxit, veureu un missatge "Compilació finalitzada". text. L'únic que queda ara és fer clic a la icona de "fletxa dreta" a la part superior esquerra de l'IDE per penjar el codi. Si tot està correctament configurat, hauríeu de veure que es penja i, finalment, acaba. Mireu el vostre ESP, hauria de tenir un LED parpellejant. Enhorabona, acabeu de penjar el vostre primer programa al vostre ESP.

En cas que tingueu un error, no us preocupeu. Probablement l’interruptor no estava al costat dret. Desconnecteu l'adaptador USB i "canvieu l'interruptor", torneu-lo a endollar i repetiu el procés. Si funciona, ja sabeu que aquest és el costat del "mode de programa". Si això encara no funciona, doncs molta sort. Això és el que volia dir amb "el que funcionava per a mi potser no funcionaria per a vosaltres" … Envieu preguntes / problemes als comentaris i faré tot el possible per ajudar-vos.

PD: No dubteu a provar altres exemples. Potser el fitxer -> Exemples -> ESP8266Wifi -> WifiScan. Després de carregar-lo, obriu Eines -> Monitor de sèrie i espereu uns segons. Si no apareix res, establiu la velocitat en bauds en 9600 o 115200. I utilitzeu "Tant NL com CR". Més informació sobre això més endavant en aquest article, així que no us preocupeu si no heu rebut cap resposta.

Pas 5: proveu comandes AT

Prova els comandaments AT
Prova els comandaments AT

Jo anomeno aquest pas opcional perquè cap de les ordres AT senceres no funcionava per a mi al principi. Tot i que estava segur que l’ESP funcionava bé perquè va parpellejar amb l’esbós anterior i també vaig aconseguir buscar Wifi. Però cada vegada que provava de parlar-hi per ordres AT mai obtindria resposta. Sigui com sigui, us mostraré els passos que he fet per poder-hi parlar. Si no funciona, aneu al següent pas.

Connecteu el vostre ESP a l'adaptador USB i connecteu-lo al vostre PC. Assegureu-vos que no estigui en "mode de programa". Aneu a Eines i canvieu el tauler al mòdul ESP8266 genèric. Assegureu-vos que el port correcte estigui seleccionat i, a continuació, obriu el monitor de sèrie (Ctrl + Maj + M) i configureu els paràmetres següents:

  • Tant NL com CR
  • 115200 Baud

Si tot és correcte, proveu d'escriure "AT" a la barra superior i premeu Intro. Hauríeu de tornar "D'acord". Si obteniu un "OK", llavors Holy Smokes acabeu de connectar-vos amb el vostre ESP i podeu estar orgullós i feliç. A continuació, escriviu "AT + GMR" per obtenir més informació sobre el vostre ESP. En cas que la versió de l'SDK sigui 1.54, també podeu saltar el pas "Intermitent de l'últim firmware", ja que ja el teniu.

En cas que no obtingueu cap resposta, no dubteu a provar-ho de nou i / o a canviar la taxa de Baud. Tanmateix, recomano no "perdre" massa temps amb això, ja que sabeu que el vostre ESP funciona gràcies al pas 4.

PD: si l'IDE vol que deseu l'esbós abans de verificar-lo / penjar-lo, no el deseu. He tingut alguns problemes en desar fitxers i el monitor sèrie no funciona. Encara no estic segur de per què he de fer proves més, però us recomano que no deseu els vostres esbossos.

Pas 6: Intermitent del darrer firmware

Intermitent del darrer firmware
Intermitent del darrer firmware

Fins i tot si el pas anterior no us ha funcionat, proveu d’actualitzar el firmware amb aquest pas, potser ho solucionarà.

Ara que ja sabeu com programar el vostre ESP, és hora d’actualitzar el firmware. Comenceu connectant el vostre ESP a l'adaptador USB i, a continuació, seleccioneu la placa i el port adequats per a això. No us oblideu de posar-lo al "mode de programa", en cas contrari el parpelleig no funcionarà.

A continuació, haureu d'obrir la carpeta que heu creat al "Pas 2: programari", recordeu? Amb el flasher i el fitxer.bin. Obriu-lo i executeu esp8266_flasher.exe. Si se us demana drets d'administrador, digueu que sí. Ara també és un bon moment per tancar l’IDE, només per assegurar-vos que res no interfereixi. Feu clic al botó Bin i seleccioneu un fitxer anomenat "AiThinker_ESP8266_DIO_8M_8M_20160615_V1.5.4.bin". Assegureu-vos que el vostre port sigui el correcte, que la finestra següent estigui configurada a 0x00000 i que el vostre ESP estigui en "mode de programa" i feu clic a Descarregar. Hauria de començar a carregar el firmware al vostre ESP i el LED blau hauria de parpellejar. Espereu una mica fins que acabi.

Quan hàgiu acabat, se us premiarà amb un error "No s'ha pogut sortir del mode Flash", que està bé. No feu cas i tanqueu el flasher. Acabeu d’actualitzar el firmware del vostre ESP. Bonic.

En cas que tingueu errors, torneu a assegurar-vos que el port és el correcte, que la finestra següent està configurada a 0x00000 i que el vostre ESP està en "mode de programa". Si encara no funciona, diria que el vostre commutador no funciona correctament.

Per últim, és possible que vulgueu provar de parlar amb el vostre ESP a través d'AT ara. Feu un cop d'ull al pas "Provar comandaments AT". Si encara no funciona, no us preocupeu. Seguiu endavant i torneu a penjar l'exemple Blink per assegurar-vos que no heu trencat el vostre ESP. Si funciona, encara esteu bé!

Pas 7: Connectar Arduino i ESP

Connectant Arduino i ESP
Connectant Arduino i ESP

Aquest és un pas senzill que us mostra com connectar l’ESP a l’Arduino Uno. Com es va esmentar al pas "Maquinari", vaig utilitzar l'adaptador ESP-01.

Primer, connecteu el vostre ESP a l’adaptador ESP-01 i assegureu-vos que estigui orientat de la manera correcta. A continuació, agafeu els 4 cables de pont i connecteu-los així:

  • Pin 3 de l'Arduino a Pin RX de l'adaptador
  • Pin 2 de l'Arduino a Pin TX de l'adaptador
  • Pin 5,5 V a l'Arduino a Pin VCC a l'adaptador
  • Fixeu GND a l'Arduino i fixeu GND a l'adaptador

Cablatge realitzat. Fàcil pzy no?

PD: recomano utilitzar un cable vermell per a la connexió de 5 V i un cable negre per a la connexió GND. És només un estàndard en electrònica.

Pas 8: finalització + coses a tenir en compte

Molt bé, si heu seguit la meva guia i no he desordenat res, ara almenys hauríeu de poder tenir un ESP funcionant amb el firmware actualitzat. Potser fins i tot parla amb tu i tu amb això, seria perfecte! Seguiu endavant i exploreu aquest meravellós món d’IOT i altres. Potser voldreu encendre un llum amb un clic al botó del vostre telèfon o bé encendre el sistema de reg al vostre jardí (com estic intentant fer). No ho sé, et deixaré triar. No dubteu a escriure comentaris o preguntes sobre aquest instructiu a continuació.

Només cal tenir en compte algunes coses addicionals:

  • Mentre pengeu codi al vostre Arduino, el pin 0 (RX) ha de ser gratuït.
  • Si esteu executant el vostre ESP a través dels 3,3 V de l’Arduino, tingueu en compte que potser no sigui prou potent i que s’obtinguin errors. Recomano molt l’adaptador ESP-01.
  • En cas que vulgueu comunicar-vos amb el vostre ESP a través de l’Arduino i no de l’adaptador USB, haureu de fer el següent:

    1. Necessari: haureu de poder parlar amb ordres AT amb el vostre ESP mitjançant l'adaptador USB per poder canviar.
    2. Endavant i endolleu l’adaptador USB amb l’ESP. Assegureu-vos que no està en mode de programa.
    3. Trieu la placa ESP8266 i corregiu el port i obriu el monitor de sèrie (115200 Baud).
    4. Escriviu "AT" i torneu a obtenir "OK".
    5. Haurem de canviar la velocitat de transmissió per defecte de l'ESP amb l'ordre següent: "AT + UART_DEF = 9600, 8, 1, 0, 0" (o per a algunes versions "AT + CIOBAUD = 9600").
    6. Hauríeu de tornar a "OK" o d'algun tipus de confirmació.
    7. Tanqueu el monitor de sèrie.
    8. Desconnecteu l'adaptador USB i connecteu el vostre ESP a l'adaptador Arduino. Connecteu l'adaptador a l'Arduino com es mostra al pas "Connexió d'Arduino i ESP".
    9. Connecteu l'Arduino amb el vostre PC.
    10. Canvieu la placa a Arduino i seleccioneu el port correcte.
    11. Pengeu aquest codi a l'Arduino.
    12. Obriu el monitor de sèrie una vegada més, però aquesta vegada a 9600 Baud.
    13. Ara hauríeu de poder escriure "AT" i recuperar "OK".

Pas 9: enllaços

Aquí teniu una llista d’alguns enllaços que he trobat al web que m’han ajudat i que també us poden ajudar.

  • Esbós de l’Arduino Uno per parlar amb l’ESP
  • Configureu el vostre ESP al "mode de programa" amb un interruptor o botons

Actualització del 2020:

  • Guia sobre com parpellejar amb el nou programari intermitent
  • Introducció a Espressif
  • Descàrregues de flasher i SDK / AT per Espressif
  • Informació general sobre la majoria de les qüestions que es tracten en aquest article aquí (inclosa informació sobre com fer flaix l’ESP sense cap adaptador)

Recomanat: