Esp 01 savienojums. Wifi modulis, kura pamatā ir ESP8266 mikroshēma. ESP8266 savienošana ar internetu

Tas iegūst arvien lielāku popularitāti, un Arduino jau uzņemas iniciatīvu - pievienojot šos Wi-Fi moduļus atbalstīto dēļu sarakstam.
Bet kā to savienot ar Arduino? Vai vispār ir iespējams kaut kā iztikt bez Arduino? Tieši par to šodien būs šis raksts.

Raugoties uz priekšu, teikšu, ka būs otrs raksts, praktiskāks, par programmaparatūras tēmu un ESP8266 moduļa programmēšanu Arduino IDE izstrādes vidē. Bet vispirms vispirms.

Šis video pilnībā dublē rakstā sniegto materiālu.



Ieslēgts Šis brīdis, šim modulim ir daudz veidu, šeit ir daži no tiem:

Un šeit ir ESP01, ESP03, ESP12 spraudnis:


*Šo attēlu var apskatīt laba kvalitāte ieslēgts Izslēgts. vietne pighixxx.com.

Man personīgi visvairāk patīk ESP07 versija. Vismaz par to, ka ir metāla ekrāns (tas pasargā mikroshēmas no ārējiem traucējumiem, tādējādi nodrošinot stabilāku darbību), sava keramikas antena un savienotājs ārējai antenai. Tas izrādās, pieslēdzoties tai ārējā antena, piemēram, patīk bikvadrāts, tad jūs varat sasniegt labu diapazonu. Turklāt ir diezgan daudz ievades/izvades portu, tā sauktie GPIO (General Purpose Input Output - input/output ports). vispārīgs mērķis), pēc analoģijas ar Arduino - tapas.

Atgriezīsimies pie mūsu aitu Wi-Fi moduļiem un Arduino. Šajā rakstā es apskatīšu ESP8266 (modelis ESP01) savienošanu ar Arduino Nano V3.

Bet, šo informāciju būs aktuāli lielākajai daļai ESP8266 moduļu un arī dažādām Arduino plāksnēm, piemēram, populārākajām Arduino UNO.

Daži vārdi par ESP01 kājām:

Vcc Un GND(augšējā attēlā tie ir 8 un 1) - pārtika, uz kāju Vcc var iesniegt, spriežot pēc dokumentācijas, no 3 līdz 3,6 V, A GND- zemējums (mīnus jauda). Es redzēju, kā viens cilvēks savienoja šo moduli ar divām AA baterijām (barošanas spriegums šajā gadījumā bija aptuveni 2,7 V), un modulis darbojās. Bet tomēr izstrādātāji norādīja sprieguma diapazonu, kurā ir jāgarantē, ka modulis darbosies, ja izmantojat citu, jūsu problēma.

Uzmanību! Šis modulis ir balstīts uz 3,3 V loģiku, savukārt Arduino galvenokārt ir 5 V loģika. 5 V var viegli sabojāt ESP8266, tāpēc tas ir jābaro atsevišķi no Arduino.

- Manam Arduino ir kāja, kur rakstīts 3,3 V, kāpēc to neizmantot?

Jūs droši vien padomāsiet. Fakts ir tāds, ka ESP8266 ir diezgan enerģijas izsalkošs modulis, un maksimumos tas var patērēt strāvu līdz 200 mA, un gandrīz neviens Arduino pēc noklusējuma nespēj piegādāt šādu strāvu, izņemot Arduino Due, kurā strāva pa 3,3 V līniju var sasniegt 800 mA, kas ir pietiekami daudz, citos gadījumos iesaku izmantot papildu 3, 3 V stabilizatoru, piemēram, AMS1117 3, 3 V. Viņu ir daudz gan Ķīnā, gan šeit.

Kāja RST 6 - paredzēts aparatūrai moduļa pārstartēšanai, īslaicīgi pieliekot tam zemu loģisko līmeni, modulis tiks restartēts. Lai gan videoklipā es to atstāju novārtā, es jums joprojām iesaku “piespiediet” šo kāju ar 10 kOhm rezistoru pie barošanas avota pozitīvas, lai panāktu labāku stabilitāti moduļa darbībā, pretējā gadījumā pie mazākajiem traucējumiem pārstartētu.

Kāja CP_PD 4 (vai citā veidā LV) - atkal kalpo, lai moduli “ieslēgtu” enerģijas taupīšanas režīmā, kurā tas patērē ļoti maz strāvas. Nu atkal - Nenāktu par ļaunu "nospiest" šo kāju ar 10 kOhm rezistoru uz pozitīvo. Pitalova Video es muļķīgi īssavienoju šo kāju uz Vcc, jo man tāda rezistora pie rokas nebija.

Kājas RXD0 7 TXD0 2 - aparatūras UART, kas tiek izmantota mirgošanai, bet neviens neaizliedz izmantot šos portus kā GPIO (attiecīgi GPIO3 un GPIO1). Nez kāpēc GPIO3 nav atzīmēts attēlā, bet ir datu lapā:

Starp citu, uz kāju TXD0 2 ir pievienots “Connect” LED, kas iedegas, ja GPIO1 loģikas līmenis ir zems vai modulis kaut ko sūta, izmantojot UART.

GPIO0 5 - var būt ne tikai I/O ports, bet arī ievietot moduli programmēšanas režīmā. Tas tiek darīts, savienojot šo portu ar zemu loģisko līmeni (“nospiežot” to uz GND) un piegādājot modulim strāvu. Video es to daru ar parasto pogu. Pēc mirgošanas neaizmirstiet izvilkt džemperi/nospiest pogu (mirgošanas laikā pogu nav nepieciešams turēt; ieslēdzot, modulis pāriet programmēšanas režīmā un paliek tajā līdz pārstartēšanai).

GPIO2 3 - ievades/izvades ports.

Un vēl viens svarīgs punkts, katrs Wi-Fi moduļa GPIO var droši piegādāt strāvu līdz 6mA, lai to nesadedzinātu, noteikti ievietojiet rezistorus virknē ar ieslēgtiem ievades/izvades portiem... Atcerieties Ohma likumu R = U/I = 3,3 V / 0,006 A = 550 omi, tas ir, pie 560 omi. Vai arī atstāt to novārtā un pēc tam brīnīties, kāpēc tas nedarbojas.

ESP01 visi GPIO atbalsta PWM, tāpēc mūsu četriem GPIO, tas ir, GPIO0-3, varat pievienot motora draiveri, ala L293 / L298, un vadīt divus dzinējus, piemēram, laivas, vai izveidot RGB Wi-Fi jebko. . Jā, jā, šajā modulī ir daudz lietu, un vienkāršiem projektiem Arduino vijolnieks nav vajadzīgs, tikai mirgošanai. Un, ja izmantojat ESP07, tad kopumā porti ir gandrīz tādi paši kā Uno, kas ļauj pārliecinoši iztikt bez Arduino. Tiesa, ir viens nepatīkams brīdis, ESP01 vispār nav analogo portu, un ESP07 ir tikai viens, ko sauc par ADC. Tas, protams, apgrūtina darbu ar analogajiem sensoriem. Šajā gadījumā palīdzēs Arduino analogais multiplekseris.

Šķiet, ka viss ir izskaidrojams ar pinout, un šeit ir diagramma ESP8266 savienošanai ar Arduino Nano:

Vai redzat džemperi uz Arduino Nano RST un GND tapām? Tas ir nepieciešams, lai Arduino netraucētu moduļa programmaparatūrai, ja ESP8266 tiek pievienots, izmantojot Arduino, tas ir priekšnoteikums.

Turklāt, ja izveidojat savienojumu ar Arduino, moduļa RX ir jāiet uz arduino RX, TX - TX. Tas ir tāpēc, ka pārveidotāja mikroshēma jau ir savienota ar Arduino tapām krusteniski.

Svarīgs ir arī rezistīvais dalītājs, kas sastāv no 1 kOhm un 2 kOhm rezistoriem (var izgatavot no diviem 1 kOhm rezistoriem, savienojot tos virknē) gar moduļa RX līniju. Jo Arduino ir 5 V loģika un modulis ir 3.3. Tas izrādās primitīvs līmeņa pārveidotājs. Tam tur jābūt, jo RXD TXD moduļa kājas neiztur 5 V.

Nu, jūs varat iztikt bez Arduino, pievienojot ESP8266, izmantojot parasto USB-UART pārveidotāju. Ja tiek izveidots savienojums ar Arduino, mēs būtībā izmantojam standarta pārveidotāju usb saskarnes un uart, apejot smadzenes. Tātad, kāpēc tērēt papildu naudu, ja jūs vispār varat iztikt bez Arduino? Tikai šajā gadījumā mēs savienojam moduļa RXD ar pārveidotāja TXD, TXD - RXD.

Ja esat pārāk slinks, lai mocītos ar savienojumiem, ķēpāties ar rezistoriem un stabilizatoriem, ir gatavi NodeMcu risinājumi:

Šeit viss ir daudz vienkāršāk: pievienojiet kabeli datoram, instalējiet draiverus un programmu, tikai neaizmirstiet izmantot GPIO0 džemperi/pogu, lai pārslēgtu moduli uz programmaparatūras režīmu.

Nu, tas, iespējams, viss ar teoriju, raksts izrādījās diezgan garš, un es publicēšu praktisko daļu, moduļa programmaparatūru un programmēšanu, nedaudz vēlāk.

Kā pārbaudīt ESP8266

Lai pārbaudītu tikko iegādāto ESP8266, jums būs nepieciešams.

Uzmanību!ESP8266 moduļa pieļaujamais barošanas sprieguma diapazons ir no 3,0 līdz 3,6 voltiem. Paaugstināta barošanas sprieguma padeve modulim var izraisīt ESP8266 atteici.

Lai pārbaudītu ESP8266 ESP-01, vienkārši pievienojiet trīs tapas: VCC un CH_PD (mikroshēmas iespējošana) ar 3,3 voltu barošanas avotu un GND ar zemi. Ja jums nav ESP-01, bet cits modulis un tajā tiek izvadīts GPIO15, tad jums papildus būs jāpievieno GPIO15 ar zemi.

Ja ESP8266 moduļa rūpnīcas programmaparatūra ir veiksmīgi startēta, iedegsies sarkanā gaismas diode (dažās moduļa versijās, piemēram, ESP-12, strāvas indikators var nebūt) un zilā gaismas diode mirgos pāris reizes. (tas ir datu pārsūtīšanas indikators no moduļa uz termināli caur TX-RX līniju, tam var būt atšķirīga krāsa) un jūsu bezvadu tīkls jāparādās jaunam piekļuves punktam ar nosaukumu “ESP_XXXX”, ko varat redzēt no jebkura WiFi ierīces. Piekļuves punkta nosaukums ir atkarīgs no programmaparatūras ražotāja un var atšķirties, piemēram, AI-THINKER_AXXXXC. Ja parādās piekļuves punkts, varat turpināt eksperimentus, ja nē, tad vēlreiz pārbaudiet barošanas avotu, CH_PD, GND un, ja viss ir pareizi pievienots, tad visticamāk jums ir bojāts modulis, bet ir cerība, ka programmaparatūrai modulī ir nestandarta iestatījumi, un, iespējams, tās mirgošana jums palīdzēs.

Kā ātri izveidot savienojumu ar ESP8266

Minimālais komplekts ESP8266 moduļa pievienošanai un mirgošanai ietver:

Sarkans - 3,3V barošanas avots

Melns - GND

Dzeltens - ESP8266 pusē - RX, USB-TTL pusē - TX

Zaļš - ESP8266 puse - TX, USB-TTL puse - RX

Oranžs — CH_PD (CHIP ENABLE) — vienmēr jābūt pieslēgtam pie strāvas

Zils - GPIO0 - savienots ar slēdzi ar zemi, lai iespējotu moduļa mirgošanas režīmu. Normālai moduļa palaišanai GPIO0 var atstāt nekur nepieslēgtu.

Labajā diagrammā rozā - nestabilizēta barošana 5-8 volti

4. Lai palaistu moduli, pārtrauciet GPIO0 - GND ķēdi un varat pieslēgt strāvu (un tieši šādā secībā: vispirms pārliecināmies, ka GPIO0 "karājas gaisā", pēc tam piegādājam strāvu VCC un CH_PD)

Uzmanību! Iepriekš minētajos, faktiski darbojošos ESP8266 pieslēgšanas piemēros, viņi izmanto ESP8266 tapu pievienošanu “tieši” zemei ​​un strāvai vai “karājoties gaisā”, jo mums nekur nav pievienots RESET, kas ir absolūti nepareizi un ir piemērots tikai pirmajiem pāris eksperimentiem, lai gan diezgan labi darbojas lielākajā daļā moduļu. Tikai VCC kontakts ir pievienots "tieši" pie barošanas avota, pārējās tapas: CH_PD, RESET, GPIO0, GPIO2 ir jāvelk uz augšu (uzvelk) uz barošanas avotu (VCC) caur rezistoru no 4,7 līdz 50 kOhm. “Tieši”, mēs savienojam tikai GND ar barošanas avota negatīvo (kopējo vadu) un izvelkam GPIO0 (novilkšana) arī caur rezistoru līdz 10k uz GND, lai moduli pārslēgtu programmaparatūras lejupielādes režīmā. Ja plānojat turpināt eksperimentēt ar ESP8266, dariet to tāpat kā jebkuru citu mikrokontrolleru. Detalizēts izvilkšanas un novilkšanas apraksts ir ārpus šī raksta darbības jomas, taču jūs varat viegli atrast aprakstu Google tīklā pareizs savienojums ieejas/izejas porti. Savienojums “ ” ļaus izvairīties no daudziem “brīnumiem” un problēmām, un tas neizbēgami būs nepieciešams, ja rodas grūtības palaist vai mirgot ESP8266 moduli.

Kā pareizi pievienot ESP8266

Ja plānojat izmantot ESP8266 vairāk nekā vienu vakaru, jums būs nepieciešama savienojuma opcija, kas nodrošina lielāku stabilitāti. Zemāk ir divas savienojuma diagrammas: ar atbalstu programmaparatūras automātiskai ielādei no un bez tās.

Savienojuma shēma ESP8266 (bez automātiskās programmaparatūras ielādes mēs to mirgojam, vispirms instalējot BURN džemperi un pārstartējot moduli)

Savienojuma shēma ar atbalstu programmaparatūras automātiskai ielādei no Arduino IDE, UDK, Sming. Iespējams, ka Flash lejupielādes rīkam un XTCOM_UTIL būs jāatspējo RTS/DTR. Ja jums ir neērti atspējot RTS un DTR, varat pievienot ķēdei džemperus

Šajās diagrammās nav parādīts ADC un bezmaksas GPIO savienojums - to savienojums būs atkarīgs no tā, ko vēlaties ieviest, bet, ja vēlaties stabilitāti, tad neaizmirstiet visus GPIO pievilkt pie barošanas (pullup), un ADC pie zemes (pulldown). ) caur uzvilkšanas rezistoriem .

Rezistori pie 10k var aizstāt ar citiem no 4.7k līdz 50k, izņemot GPIO15 - tā vērtībai jābūt līdz 10k. Kondensatora vērtība, kas izlīdzina augstfrekvences pulsācijas, var būt atšķirīga.

Ja izmantojat dziļa miega režīmu, jums būs jāsavieno RESET un GPIO16, izmantojot 470 omu dziļā miega rezistoru: lai izietu no dziļā miega režīma, modulis pats atsāknējas, GPIO16 piemērojot zemu līmeni. Bez šī savienojuma dziļais miegs jūsu modulim būs mūžīgs.

No pirmā acu uzmetiena šīs diagrammas šķietami liecina, ka GPIO0, GPIO2, GPIO15, GPIO1 (TX), GPIO3 (RX) ir aizņemti un jūs nevarat tās izmantot saviem mērķiem, taču tas tā nav. Augsts līmenis GPIO0 un GPIO2, zems līmenis GPIO15 ir nepieciešams tikai moduļa palaišanai, un pēc tam varat tos izmantot pēc saviem ieskatiem, tikai atcerieties nodrošināt nepieciešamos līmeņus pirms moduļa pārstartēšanas.

Jūs varat izmantot TX, RX attiecīgi kā GPIO1 un GPIO3, neaizmirstot, ka, modulim startējot, jebkura programmaparatūra vilks TX, nosūtot atkļūdošanas informāciju uz UART0 ar ātrumu 74480, bet pēc veiksmīgas ielādes varat tos izmantot ne tikai kā UART0 apmainīties ar datiem ar citu ierīci, bet arī tāpat kā parastos GPIO.

Moduļiem ar mazāku vadu tapu skaitu, piemēram, ESP-01, nav nepieciešams savienot neatgrieztus tapus, t.i. ESP-01 ir pievienoti tikai VCC, GND, GPIO0, GPIO2, CH_PD un RESET — jūs tos vienkārši pievelciet. Nav nepieciešams lodēt tieši pie ESP8266EX mikroshēmas un piesaistīt nevirzītas tapas, tikai tad, ja jums tas ir nepieciešams.

Šīs savienojumu diagrammas radās pēc daudziem mūsu foruma dalībnieku eksperimentiem un pamazām apkopotas no mūsu kopienas izkaisītās un sākotnēji nepieejamās dokumentācijas, es tikai mēģināju šīs zināšanas apvienot vienuviet. Jūs atradīsit daudz savienojuma padomu. Tur jūs varat uzdot sev interesējošos vai atrast jautājumus. Ja šajā rakstā redzat kļūdu vai neprecizitāti vai vēlaties kaut ko pievienot, tad .

Uzmanību! Pat šīs shēmas nevar saukt par "ideālām". Pilnībai nav ierobežojumu: ir ērti savienot otru USB-TTL ar UART1 (ar ESP8266 var izmantot tikai GND un UTXD1, t.i., GPIO2), lai pievienotu atkļūdošanas termināli (jums būs nepieciešams otrs USB-TTL pārveidotājs) - tad jūs varat flash moduli ESP8266, izmantojot UART0, neatspējojot atkļūdošanas termināli uz UART1. Derētu pie abu UART tapām pieslēgt mazus rezistorus, ielikt diodi RTS līnijā, pievienot elektrības līnijai kondensatoru zemfrekvences impulsu slāpēšanai utt. Tas ir ļoti ērti, piemēram, šajā atkļūdošanas panelī: gaismas diodes ir pievienotas visiem GPIO, fotorezistors ir pievienots ADC, bet žēl, ka nav RESET pogas un ir tikai viens džemperis uz GPIO0.

Pareizi būtu jums teikt, ka ideāla un tajā pašā laikā nav universāla shēma ESP8266 savienojumi. Lieta ir tāda, ka daudz kas ir atkarīgs no programmaparatūras, kuru jūs gatavojaties augšupielādēt. Iepriekš minētās diagrammas ir paredzētas iesācējiem, kuri tikai sāk apgūt ESP8266 eksperimentēšanai. Īstiem projektiem diagramma var būt nedaudz jāmaina. Piemēram, jums ir jāpievieno RTS ar GPIO15 un CTS ar GPIO13. Īpašu uzmanību iesaku pievērst arī uzturam reālos projektos.

ESP8266 pievienošana, izmantojot Arduino

Ja jums nav pie rokas 3,3 V USB-TTL pārveidotāja, bet jums ir Arduino ar iebūvētu USB-TTL pārveidotāju, varat izmantot šo savienojuma shēmu.

Kam jāpievērš uzmanība:

1. Arduino Reset ir savienots ar GND (zils vads), lai Arduino mikrokontrolleris nesāktos, šajā formā mēs izmantojam Arduino kā caurspīdīgu USB-TTL pārveidotāju

2. RX un TX nav savienoti šķērsām, bet tieši - RX - RX (zaļš), TX - TX (dzeltens)

3. Viss pārējais ir savienots tāpat kā iepriekšējos piemēros

Uzmanību! Šai shēmai ir arī jāsaskaņo TTL līmeņi — 5 volti Arduino un 3,3 volti ESP8266, taču tā darbojas labi.

Uzmanību!Arduino var būt uzstādīts jaudas stabilizators, kas neizturēs ESP8266 nepieciešamo strāvu, tāpēc pirms savienojuma izveides pārbaudiet instalētā stabilizatora datu lapu. Nepievienojiet citus enerģiju patērējošus komponentus vienlaikus ar ESP8266, jo pastāv risks sabojāt Arduino iebūvēto jaudas regulatoru.

Lai izveidotu savienojumu ar seriālo portu, būs nepieciešama neliela maģija: ESP8266 programmaparatūras daudzveidības dēļ savienojumu var izveidot dažādi ātrumi. Nepieciešamo ātrumu var noteikt, vienkārši pārmeklējot trīs iespējas: 9600, 57600 un 115200. Kā meklēt? Savienojieties ar savu virtuālo seriālo portu termināļa programmā, iestatot šādus parametrus: 9600 8N1, pēc tam pārstartējiet moduli, atvienojot CH_PD (chip enable) no barošanas avota (USB-TTL paliek savienots ar USB) un atkal to ieslēdzot (t.i. vienkārši pārslēdziet CH_PD, kāpēc mēs neizkropļojam strāvu - lasiet, varat arī īssavienojumu RESET uz zemi, lai pārstartētu moduli) un novērot datus terminālī. Pirmkārt, ESP8266 gaismas diodēm jāiedegas, kā aprakstīts sadaļas raksta sākumā. Otrkārt, terminālī vajadzētu redzēt dažādu rakstzīmju “atkritumus”, kas beidzas ar rindu “gatavs”. Ja neredzam “gatavs”, mēs no jauna savienojamies ar termināli ar citu ātrumu un vēlreiz restartējam moduli.

Vienā no “gatavajām” ātruma opcijām jūs joprojām redzēsit - apsveicam, jūsu modulis ir gatavs lietošanai. Ja nē, tad laipni lūgti - mēs centīsimies palīdzēt, bet vispirms izlasiet.

Nedaudz vairāk par “atkritumiem”. Fakts ir tāds, ka, startējot programmaparatūru, ESP8266 moduļa UART pārslēdzas uz bodu ātrumu 74 880 (tie ķīnieši ir tik smieklīgi), izvada atkļūdošanas informāciju uz UART un pēc tam pārslēdz porta ātrumu uz 115200 (vai 9600 vai 57600, atkarībā no programmaparatūras versijas), tāpēc šī atkļūdošanas informācija mums šķiet kā atkritums, jo mēs pieslēdzamies modulim ar citu ātrumu. Varat izveidot savienojumu ar ESP8266 ar ātrumu 74 880 (atbalsta šo ātrumu), un jūs redzēsit šo atkļūdošanas informāciju, tā būs aptuveni šāda:

c summa 0x0d

wdt atiestatīšana

slodze 0x40100000 , len 25052 , 16. kab

aste 12

chksum 0x0b

ho 0 astes 12 istaba 4

slodze 0x3ffe8000 , len 3312 , 12. kab

Ko darīt tālāk

Ja jums ir jauns modulis, visticamāk, tas ir mirgots ar kādu no vecajām pielāgotajām AT programmaparatūrām. Visticamāk, tas ir sava veida AI-THINKER AT v0.16 SDK v0.9.2. Programmaparatūras versiju var pārbaudīt, izmantojot komandu “AT+GMR”, t.i. tieši termināļa programmā ierakstiet AT+GMR bez pēdiņām un nospiediet taustiņu Enter. Modulim ir jāatbild “OK” un jāparāda programmaparatūras versija (piemēram, “0016000092” dažādas versijas AT programmaparatūras versijas izvades formāts ir atšķirīgs). ESP8266 moduļa vadīšana ar AT komandām ir pelnījusi atsevišķu rakstu, taču jūs to varat viegli noskaidrot pats, izmantojot kādu no mūsu atsauces grāmatām par AT komandām:

Šī raksta rakstīšanas laikā pašreizējā ESP8266 programmaparatūras versija ir:

ESP8266 programmaparatūras atjauninājums

ESP8266 modulis ir ievērojams ar to, ka tam nav nepieciešams īpašs programmētājs - programmaparatūra tiek atjaunināta tajā pašā aparatūrā, kurā ESP8266 moduli pievienojat datoram, t.i. arī izmantojot USB-TTL pārveidotāju (vai Arduino vai RPi). Lai atjauninātu ESP8266 moduļa programmaparatūru, rīkojieties šādi:

1. Lejupielādēt jauna versija programmaparatūra no mūsu vietnes no sadaļas (šeit ir saite uz šī raksta rakstīšanas laikā)

2. Lejupielādējiet kādu no utilītprogrammām ESP8266 mirgošanai atkarībā no jūsu operētājsistēmas no mūsu vietnes sadaļas.

Lai strādātu ar RemoteXY, ESP8266 modulim ir jābūt programmaparatūras versijai, kas atbalsta AT komandas, kas nav zemākas par v0.40. Lai pārbaudītu moduļa versiju, kā arī vajadzības gadījumā mainītu programmaparatūru, pievienojiet moduli datoram, izmantojot seriālo portu. Moduli var pieslēgt caur Arduino dēlis vai izmantojot USB-UART adapteri.

Savienojums caur Arduino plati

Izmantojot Arduino, galvenā ATmega mikroshēma tiek ievietota atiestatīšanas režīmā, aktīvs paliek tikai iebūvētais USB-UART pārveidotājs. Lai to izdarītu, RESET kontakts ir savienots ar zemi. RX un TX tapas ir tieši savienotas ar ESP8266, nevis krusteniski, kā tas būtu, lai strādātu ar kontrolieri.

Savienojums caur USB-UART adapteri

Lai ESP8266 darbinātu, pārveidotājam ir jābūt 3,3 V avota izvadei. Tāpat šim avotam jānodrošina nepieciešamā strāva vismaz 200mA.



CPIO0 kontakts nosaka moduļa darbības režīmu. Kad kontakts nav pievienots, modulis darbojas normālā režīmā un izpilda AT komandas. Kad kontakts ir aizvērts pret zemi, modulis tiek pārslēgts uz programmaparatūras atjaunināšanas režīmu. Lai moduli pārslēgtu uz programmaparatūras režīmu, CPIO0 kontakts ir jāpievieno zemei, kad modulim tiek pieslēgta strāva. Ja aizverat kontaktu, kamēr modulis darbojas, modulis nepārslēgsies uz programmaparatūras atjaunināšanas režīmu.

Pašreizējās versijas pārbaude

Lai nosūtītu AT komandas un skatītu atbildes, jums jāizmanto jebkura monitora programma seriālais ports. Arduino IDE termināļa programma darbojas ļoti labi. Programmai jābūt iestatītai tā, lai tā sūtītu komandas ar beigu rindas padevi un karieta atgriešanas rakstzīmi. Noklusējuma moduļa darbības ātrums ir 115 200 bps. Lai modulis darbotos normālā režīmā, CPIO0 kontakts ir jāatspējo.

Pašreizējo programmaparatūras versiju varat pārbaudīt, izpildot komandu AT: AT+GMR. Moduļa atbildes piemērs:

AT versija: 0.40.0.0 (2015. gada 8. augusts, 14:45:58)
SDK versija: 1.3.0

Būvējums: 1.3.0.2, 2015. gada 11. septembris, 11:48:04
labi

Ir arī vērts noskaidrot moduļa zibatmiņas lielumu, atjauninot programmaparatūru, datu lejupielādes adreses iestatījumi. Šajā rokasgrāmatā kā visizplatītākā ir aprakstīta programmaparatūra modulim ar zibatmiņas lielumu 8Mbit (512KB+512KB) vai 16Mbit (1024KB+1024KB). Zibatmiņas lielumu var uzzināt, izpildot komandu AT, lai atiestatītu moduli: AT+RST.

Ets, 2013. gada 8. janvāris, pirmais iemesls:2, sāknēšanas režīms:(3,1)

Slodze 0x40100000, len 1396, 16. telpa
aste 4
chksum 0x89
slodze 0x3ffe8000, len 776, 4. telpa
aste 4
chksum 0xe8
slodze 0x3ffe8308, len 540, 4. telpa
aste 8
chksum 0xc0
csum 0xc0

2. sāknēšanas versija: 1.4 (b1)
SPI ātrums: 40MHz
SPI režīms: DIO
SPI zibatmiņas izmērs un karte: 8Mbit (512KB+512KB)
pāriet, lai palaistu user1 @ 1000

#t#n"neizmantojiet RTC atmiņas datus
slЏ‚rlМя
Ai-Thinker Technology Co., Ltd.

Programmaparatūras programma

Lai atjauninātu programmaparatūru, ir jālejupielādē programmaparatūras programma un pati programmaparatūra. Mēs izmantosim programmu ESP8266 Flash Download Tools v2.4 mirgošanai no Espressif Systems oficiālās vietnes. Saite uz lejupielādes lapu oficiālajā vietnē: . Jums jāiet uz sadaļu "Rīki".

Saite uz programmu mūsu failu krātuvē: FLASH_DOWNLOAD_TOOLS_v2.4_150924.rar

Programmaparatūra

Programmaparatūru var arī lejupielādēt no oficiālās vietnes. Saite uz lejupielādes lapu oficiālajā vietnē: . Dodieties uz sadaļu “SDK un demonstrācijas” un lejupielādējiet ESP8266 NONOS SDK programmaparatūras versiju, kas nav mazāka par v1.3.0. Tieši ar šo programmaparatūras versiju tiek īstenots atbalsts AT komandām v0.40 un jaunākām versijām.

Saite uz programmaparatūru mūsu failu krātuvē: esp8266_nonos_sdk_v1.4.0_15_09_18_0.rar

Visi lejupielādētie faili ir jāizpako un jāievieto direktorijā, kurā pilns ceļš uz failiem sastāv tikai no latīņu rakstzīmēm, tas ir, bez valodas lokalizācijas rakstzīmēm.

Iestatījumi

Palaidiet programmu Flash programmaparatūra Lejupielādējiet rīkus v2.4 (tāda paša nosaukuma fails). Atvērtajā logā pareizi jānorāda lejupielādētie faili un savienojuma iestatījumi.


Lejupielādētie faili atrodas arhīva bin direktorijā ar programmaparatūru. Katram failam ir jānorāda pareizā lejupielādes adrese. Izmantojiet šo tabulu, lai atlasītu failus un piešķirtu adreses:

Iestatiet šādus iestatījumus:

  • SPIAutoSet - instalēts;
  • Crystal Freq - 26M;
  • zibspuldzes IZMĒRS – 8Mbit vai 16Mbit atkarībā no zibatmiņas izmēra;
  • COM PORT – izvēlieties portu, kuram ir pievienots ESP;
  • BAUDRĀTE – 115200

Lai palaistu programmaparatūru, jānospiež poga "START".

ESP8266 programmaparatūras mirgošanas darbību secība

1. Savienojiet moduli ar datoru saskaņā ar savienojuma shēmu šajā rakstā.

2. Palaidiet seriālā porta monitoru. Lai noteiktu, izdodiet AT komandas AT+RST un AT+GMR pašreizējā versija programmaparatūras un moduļa atmiņas lielums. Šis solis arī ļauj pārbaudīt, vai modulis ir pareizi pievienots.

3. Palaidiet programmaparatūras programmu Flash Download Tools, pareizi konfigurējiet lejupielādētos failus un iestatiet iestatījumus.

4. Izslēdziet ESP8266 moduļa strāvu.

5. Pievienojiet CPIO0 tapu zemei.

6. Pieslēdziet ESP8266 modulim strāvu.

7. Programmaparatūras programmā nospiediet pogu START

8. Pagaidiet, līdz moduļa programmaparatūra ir pabeigta. Kad programmaparatūra ir pabeigta, paziņojums FINISH parādīsies zaļā krāsā.

9. Atvienojiet strāvu no ESP8266 moduļa. Atvienojiet zemējumu no CPIO0 tapas.

10. Ieslēdziet moduli, palaidiet seriālā porta monitoru. Pārliecinieties, vai modulis un jaunā programmaparatūras versija darbojas, izpildot AT komandu AT+GMR.

Wi-Fi modulis ESP-01 ir vispopulārākais ESP8266 sērijas modulis. Saziņa ar datoru vai mikrokontrolleri tiek veikta, izmantojot UART, izmantojot AT komandu kopu. Turklāt moduli var izmantot kā neatkarīgu ierīci, lai to izdarītu, tajā jāielādē sava programmaparatūra. Varat programmēt un lejupielādēt programmaparatūru, izmantojot Arduino IDE versiju virs 1.6.5. Lai mirgotu moduļa programmaparatūru, jums būs nepieciešams UART-USB adapteris. ESP-01 moduli var plaši izmantot IoT (lietiskā interneta) ierīcēs.

Specifikācijasmodulis

  • Wi-Fi 802.11 b/g/n
  • WiFi režīmi: klients, piekļuves punkts
  • izejas jauda- 19,5 dB
  • Barošanas spriegums - 1,8 -3,6 V
  • Strāvas patēriņš - 220 mA
  • GPIO porti: 4
  • Pulksteņa frekvence procesors - 80 MHz
  • Kodu atmiņas ietilpība
  • RAM- 96 KB
  • Izmēri - 13×21 mm

Savienojums

Apskatīsim AT komandu režīmu. Lai to izdarītu, pievienojiet moduli datoram, izmantojot USB-UART adapteri. Moduļa tapu mērķis (sk. 1. attēlu):
  • VCC — +3,3 V
  • GND - zemējums
  • RX, TX - UART tapas
  • Izvade CH_PD — mikroshēmas iespējošana
  • GPIO0, GPIO2 - digitālie kontakti
Modulis prasa ārējais barošanas avots 3,3 V.

1. attēls. ESP-01 moduļa tapu piešķiršana

Savienojuma shēma saziņai ar moduli AT komandas režīmā (2. attēls):

2. attēls. Shēma ESP-01 moduļa savienošanai ar datoru, izmantojot seriālo portu

3. attēls. Montāžas shēma

Lai nosūtītu AT komandas operētājsistēmā Mac OS X, varat izmantot CoolTerm programmu operētājsistēmā Windows programma Termīts. COM porta ātrumu, lai izveidotu savienojumu ar moduli, var uzzināt tikai eksperimentāli; Manam modulim ātrums izrādījās 9600 bodi. Turklāt apmaiņu bija iespējams izveidot tikai pēc CH_PD tapas atvienošanas un atkārtotas pievienošanas barošanas avotam. Pēc savienojuma izveides terminālī ierakstiet AT un no moduļa jāsaņem OK atbilde. Komanda AT+GMR dod moduļa programmaparatūras versijas numuru, komanda AT+RST pārstartē moduli (skat. 4. att.). AT pamata komandu sarakstu var atrast šajā dokumentā (ESP8266ATCommandsSet.pdf).

4. attēls. AT komandu nosūtīšana modulim no Termite

Ja AT komandu režīms jums nav ērts, plati var konfigurēt, izmantojot programmu AppStack ESP8266 Config, kuru var lejupielādēt no saites http://esp8266.ru/download/esp8266-utils/ESP8266_Config.zip. Izskats Programma ir parādīta 5. attēlā. Modulis ir konfigurēts, izmantojot GUI, savukārt komandu izpildi var redzēt programmas monitorā (skat. 6. att.). Monitors var arī nosūtīt AT komandas no komandrindas.

5. attēls. AppStack ESP8266 Config programma

6. attēls. Programmas AppStack ESP8266 Config sērijas monitors

Ir divas šī moduļa izmantošanas iespējas:

  • savienojumā ar mikrokontrolleri (piemēram, Arduino), kas vadīs moduli, izmantojot UART;
  • rakstot savu programmaparatūru, lai izmantotu ESP8266 kā atsevišķu ierīci.

Lietošanas piemērs

Apskatīsim piemēru DHT11 mitruma un temperatūras sensora pievienošanai ESP-01 modulim un datu nosūtīšanai uz mākoņpakalpojums ThingSpeak (https://thingspeak.com/). Mums būs nepieciešamas šādas daļas:
  • modulis ESP-01
  • maizes dēlis
  • mitruma un temperatūras sensors DHT11
  • rezistors 10 kOhm
  • savienojošie vadi
  • barošana 3 - 3,6V
Vispirms savienosim DS18B20 sensoru ar ESP-01 moduli. DS18B20 ir digitālais temperatūras sensors, kas darbojas, izmantojot viena vada 1 vadu interfeisu. Sensora DS18B20 savienojuma shēma ar moduli ir parādīta attēlā. 7.

7. attēls. DHT11 sensora savienojuma shēma ar ESP-01 moduli.

Pēc tam jums ir jāizveido profils pakalpojumā ThingSpeak. Pakalpojumā ir norādījumi par datu nosūtīšanu uz pakalpojumu un datu saņemšanu no pakalpojuma.

8. attēls. Pilnīga ķēde.

Mēs ierakstīsim programmu Arduino vide IDE ESP8266. Mēs izmantosim ESP8266WiFi.h (iebūvēta) un OneWire.h bibliotēkas. Augšupielādēsim skici no 1. saraksta uz Arduino plati – datu saņemšana no temperatūras sensora un datu nosūtīšana uz ThingSpeak servisu. Jums jāievada sava informācija, lai WiFi punkti piekļuve ESP-01 modulim:

  • const char *ssid;
  • const char *parole;
kā arī jūsu lietojumprogrammas privateKey parametrs pakalpojumā ThingSpeak. 1. saraksts // vietne // Iekļaujiet bibliotēku darbam ar esp8266 #include // Iekļaujiet DHT bibliotēku darbam ar DHT11 #include // DATU kontakta savienojuma tapa #define DHTPIN 4 // DHT11 sensors #define DHTTYPE DHT11 // DHT objekta gadījuma izveide DHT dht(DHTPIN, DHTTYPE); //ssid WiFi tīkli savienojumi const char ssid = "********"; // WiFi parole savienojuma tīkli const char parole = "******"; // ThingSpeak Server const char* host = "184.106.153.149"; // Jūsu ThingSpeak lietojumprogrammas API ATSLĒGA const char* privateKey = "****************"; // mainīgie temperatūras un mitruma uzglabāšanai float temp; peldošais mitrums // mainīgais mērījumu intervālam neparakstīts garš millis_int1=0; void setup() ( // startēt seriālo portu Serial.begin(115200); delay(10); Serial.print("Savienot ar WiFi"); Serial.println(ssid); // Savienot, izmantojot WiFi WiFi.begin( ssid , parole); if(milis()-millis_int1>=10*60000) ( Serial.print("savienot ar ThingSpeak"); Serial.println(host); // Izmantojiet WiFi klienta WiFiClient klientu; if (!client.connect (host, 80)) ( Serial.println("savienojums neizdevās"); atgriezties; ) // iegūt temperatūras datus temp = get_data_temperature( // Izveidot URL ar pieprasījumu virknei url = "/); update?key="; url += privateKey; url += "&temp="; url += temp; url += "&humidity="; url += humidity; // Nosūtīt pieprasījumu serverim client.print(String (" GET ") + url + " HTTP/1.1\r\n" + "Saimniekdators: " + resursdators + "\r\n" + "Savienojums: aizvērt\r\n\r\n" (10 ); // ThingSpeak servera atbilde while(client.available())( String req = client.readStringUntil("\r"); Serial.print(req); ) ) ) Tagad pakalpojumā ThingSpeak mēs varam apskatīt rādījumu grafiku no mūsu DHT11 temperatūras sensora (9. attēls).

9. attēls. DS18B20 temperatūras sensora rādījumu grafiks pakalpojumā ThingSpeak.

Bieži uzdotie jautājumi FAQ

1. Modulis nereaģē uzAT komandas
  • Pārbaudiet, vai modulis ir pareizi pievienots;
  • Pārbaudiet pareizo Rx, Tx kontaktu savienojumu ar UART-USB adapteri;
  • Pārbaudiet CH_PD tapas savienojumu ar 3,3 V;
  • Eksperimentāli izvēlieties sakaru ātrumu seriālajā portā.
2. ESP-01 modulis nesaņem temperatūras datus no sensoraDHT11
  • Pārbaudiet, vai DHT11 sensors ir pareizi pievienots modulim.
3. Dati netiek pārsūtīti uz pakalpojumu ThingSpeak
  • Pārbaudiet moduļa savienojumu ar WiFi piekļuves punktu;
  • Pārbaudiet WiFi piekļuves punkta savienojumu ar internetu;
  • Pārbaudiet, vai pieprasījums pakalpojumam ThingSpeak ir pareizs.

Daudzi lietotāji jau ir pievērsuši uzmanību ESP8266-12 mikroshēmai, ko izlaida Espressif. Tās izmaksas ir ievērojami lētākas salīdzinājumā ar standarta Bluetooth adaptera plati, un, neskatoties uz mazākiem izmēriem, tam ir ievērojami lielākas iespējas. Tagad visiem mājas hobijiem ir iespēja darboties Wi-Fi tīkli divos režīmos vienlaikus, tas ir, pievienojiet datoru jebkuram piekļuves punktam vai ieslēdziet to kā šādu punktu.

No otras puses, jums ir pareizi jāsaprot, ka šādi dēļi nav tikai vairogi, kas paredzēti tikai Wi-Fi saziņai. Pats ESP8266 ir mikrokontrolleris, kuram ir savs UART, GPIO un SPI interfeiss, tas ir, to var izmantot kā pilnīgi autonomu aprīkojumu. Pēc šīs mikroshēmas izlaišanas daudzi to sauca par īstu revolūciju, un laika gaitā šādas ierīces sāks iebūvēt pat visvairāk vienkārši veidi tehnoloģija, taču pagaidām ierīce ir salīdzinoši jauna un tai nav stabilas programmaparatūras. Daudzi speciālisti visā pasaulē cenšas izgudrot paši savu programmaparatūru, jo to augšupielāde uz tāfeles patiesībā nav grūta, taču, neskatoties uz dažādām grūtībām, ierīci jau var saukt par diezgan piemērotu darbam.

Šobrīd tiek apsvērtas tikai divas šī moduļa izmantošanas iespējas:

  • Izmantojot plati kombinācijā ar papildu mikrokontrolleri vai datoru, kas vadīs moduli caur UART.
  • Neatkarīga mikroshēmas programmaparatūras rakstīšana, kas ļauj vēlāk to izmantot kā pašpietiekamu ierīci.

Tas ir pilnīgi dabiski, ka mums tas būtu jāapsver neatkarīga programmaparatūrašajā gadījumā mēs to nedarīsim.

Skatoties uz lietošanas ērtumu un labas īpašības, daudzi cilvēki no daudzajiem mikrokontrolleriem dod priekšroku ESP8266 modelim. Savienojums un programmaparatūras atjaunināšana no šīs ierīces ir ārkārtīgi vienkārša un pieejama, un tiek ražota uz tās pašas aparatūras, ar kuru iekārta ir savienota ar datoru. Tas ir, arī izmantojot USB-TTL pārveidotāju vai, ja kāds dod priekšroku citām savienojuma iespējām, to var izdarīt caur RPi un Arduino.

Kā pārbaudīt?

Lai pārbaudītu tikko iegādātas ierīces funkcionalitāti, jums būs jāizmanto īpašs stabilizēts sprieguma avots, kura nominālā spriegums ir 3,3 volti. Tūlīt ir vērts atzīmēt, ka šī moduļa reālais barošanas sprieguma diapazons ir no 3 līdz 3,6 voltiem, un paaugstināta sprieguma piegāde nekavējoties novedīs pie tā, ka jūs vienkārši sabojāsit savu ESP8266. Pēc šādas situācijas programmaparatūra un cita programmatūra var sākt darboties nepareizi, un jums būs nepieciešams salabot ierīci vai kaut kā to salabot.

Lai noteiktu šī mikrokontrollera modeļa funkcionalitāti, jums vienkārši jāpievieno trīs tapas:

  • CH_PD un VCC ir pievienoti 3,3 voltu barošanai.
  • GND savienojas ar zemi.

Ja jūs neizmantojat ESP-01, bet kādu citu moduli, un tam jau sākotnēji ir izeja GPIO15, tad šajā gadījumā jums tas būs papildus jāpievieno zemei.

Ja rūpnīcas programmaparatūra startēja normāli, tad šajā gadījumā jūs varat redzēt, un tad zilā gaisma mirgos pāris reizes. Tomēr ir vērts atzīmēt, ka ne visām ESP8266 sērijas ierīcēm ir sarkans strāvas indikators. Dažu ierīču programmaparatūra neparedz sarkanā indikatora iedegšanos, ja modulim tāda nav (jo īpaši tas attiecas uz ESP-12 modeli).

Kad būs izveidots savienojums, jūsu bezvadu tīklā tiks aktivizēts jauns piekļuves punkts, kura nosaukums būs ESP_XXXX, un tas būs atrodams no jebkuras ierīces, kurai ir piekļuve Wi-Fi. Šajā gadījumā piekļuves punkta nosaukums ir tieši atkarīgs no izmantotās programmaparatūras ražotāja, un tāpēc tas var atšķirties.

Ja punkts tomēr parādās, varat turpināt eksperimentēt, pretējā gadījumā jums būs atkārtoti jāpārbauda barošanas avots, kā arī GND un CH_PD savienojumu pareizība, un, ja viss ir pareizi pievienots, tad visticamāk jūs joprojām mēģināt izmantojiet salauztu moduli vai uz Tā vienkārši ir instalēta programmaparatūra ar nestandarta iestatījumiem.

Kā to ātri savienot?

Šī moduļa pievienošanai nepieciešamajā standarta komplektā ietilpst:

  • pats modulis;
  • bezlodēšanas maizes dēlis;
  • pilns sievišķo-vīriešu vadu komplekts, kas paredzēts maizes dēļam, vai speciāls DUPONT M-F kabelis;
  • USB-TTL pārveidotājs, kura pamatā ir PL2303, FTDI vai kāda līdzīga mikroshēma. Labākais risinājums ir, ja RTS un DTR tiek izvadīti arī uz USB-TTL adapteri, jo tāpēc jūs varat sasniegt diezgan ātru programmaparatūras ielādi no dažiem UDK, Arduino IDE vai Sming, pat manuāli nepārslēdzot GPIO0 uz zemi.

Ja izmantojat 5 voltu pārveidotāju, tad šajā gadījumā jums būs jāiegādājas papildu jaudas stabilizators, kas balstīts uz 1117 mikroshēmu vai līdzīgu, kā arī barošanas avots (standarta 1117, pat parasts 5- voltu viedtālruņa lādētājs ir diezgan piemērots). Ieteicams neizmantot Arduino IDE vai USB-TTL kā ESP8266 barošanas avotu, bet izmantot atsevišķu, jo tas galu galā var atbrīvoties no daudzām problēmām.

Paplašinātam komplektam, lai nodrošinātu ērtu un pastāvīgu moduļa darbību, ir jāizmanto papildu rezistori, gaismas diodes un DIP slēdži. Papildus tam varat izmantot arī lētu USB monitors, kas ļaus pastāvīgi uzraudzīt patērētās strāvas daudzumu, kā arī nodrošinās nelielu aizsardzību USB kopnei no plkst.

Kas mums jādara?

Pirmkārt, ir vērts atzīmēt faktu, ka ESP8266 vadības ierīces var nedaudz atšķirties atkarībā no tā, kuru konkrēto modeli izmantojat. Mūsdienās ir pieejams diezgan daudz šādu moduļu, un pirmā lieta, kas jums būs nepieciešama, ir noteikt modeli, kuru izmantojat, un izlemt par tā kontaktligzdu. Šajā instrukcijā mēs runāsim par darbu ar ESP8266 ESP-01 V090 moduli, un, ja izmantojat kādu citu modeli ar GPIO15 tapu (HSPICS, MTDO), jums tas būs jānovelk uz zemes gan standarta sākumam. moduli un izmantot programmaparatūras režīmu.

Pēc tam vēlreiz pārbaudiet, vai pievienotā moduļa barošanas spriegums ir 3,3 volti. Kā minēts iepriekš, pieļaujamais diapazons ir no 3 līdz 3,6 voltiem, un, ja tas palielinās, ierīce sabojājas, bet barošanas spriegums var būt pat ievērojami zemāks par dokumentos norādītajiem 3 voltiem.

Ja izmantojat 3,3 voltu USB-TTL pārveidotāju, pievienojiet moduli tieši tā, kā parādīts zemāk esošā attēla kreisajā pusē. Ja izmantojat tikai piecu voltu USB-TTL, pievērsiet uzmanību attēla labajai pusei. Daudziem var šķist, ka pareizā ķēde ir efektīvāka, jo tiek izmantots atsevišķs barošanas avots, taču patiesībā 5 voltu USB-TTL pārveidotāja izmantošanas gadījumā ir ļoti vēlams izveidot arī papildu rezistoru dalītājs, lai nodrošinātu trīs voltu un piecu voltu loģisko līmeņu saskaņošanu, vai vienkārši izmantojiet līmeņa pārveidošanas moduli.

Savienojuma iespējas

Labajā attēlā parādīts šī moduļa UTXD (TX), kā arī URXD (RX) savienojums ar piecu voltu TTL loģiku, un šādas procedūras tiek veiktas tikai uz jūsu risku un risku. ESP8266 aprakstā teikts, ka modulis efektīvi darbojas tikai ar 3,3 voltu loģiku. Lielākajā daļā gadījumu, pat strādājot ar piecu voltu loģiku, iekārta neizdodas, taču šādas situācijas reizēm gadās, tāpēc šāds savienojums nav ieteicams.

Ja jums nav iespējas izmantot specializētu 3,3 voltu USB-TTL pārveidotāju, varat izmantot rezistoru dalītāju. Ir arī vērts atzīmēt, ka labajā attēlā 1117 jaudas stabilizators ir pievienots bez papildu elektroinstalācijas, un šī ir patiešām strādājoša tehnoloģija, taču joprojām vislabāk ir izmantot 1117 savienojuma shēmu ar kondensatora vadu - tas ir jāpārbauda ar ESP8266 datu lapu savam stabilizatoram vai pilnībā izmantojiet to gatavs modulis, pamatojoties uz bāzi 1117.

Lai palaistu moduli, jums ir jāatver GPIO0-TND ķēde, pēc kuras varat pievienot strāvu. Ir vērts atzīmēt, ka viss ir jādara tieši šādā secībā, tas ir, vispirms jāpārliecinās, vai GPIO0 “karājas gaisā”, un tikai pēc tam pievienojiet barošanu CH_PD un VCC.

Kā pareizi izveidot savienojumu?

Ja varat iztērēt vairāk nekā vienu vakaru, lai pareizi pievienotu moduli ESP8266, varat izmantot stabilāku opciju. Iepriekš redzamajā diagrammā redzat savienojuma opciju ar automātiska lejupielāde programmaparatūra.

Ir vērts atzīmēt, ka augstāk esošajā attēlā nav redzama bezmaksas GPIO vai ADC izmantošana, un to savienojums būs tieši atkarīgs no tā, ko tieši vēlaties ieviest, taču, ja vēlaties nodrošināt stabilitāti, atcerieties visus GPIO pievilkt pie strāvas un ADC. uz zemējumu, izmantojot uzvilkšanas rezistorus.

Ja nepieciešams, 10k rezistorus var aizstāt ar jebkuriem citiem diapazonā no 4,7k līdz 50k, izņemot GPIO15, jo tā vērtībai nevajadzētu būt lielākai par 10k. Kondensatora vērtība, kas izlīdzina augstfrekvences pulsācijas, var nedaudz atšķirties.

Izmantojot atbilstošo režīmu, var būt nepieciešams savienot RESET un GPIO16, izmantojot 470 omu dziļā miega rezistoru, jo, lai izietu no dziļā miega režīma, modulis veic pilnu atsāknēšanu, GPIO16 piemērojot zemu līmeni. Ar prombūtni no šī savienojuma Jūsu moduļa dziļais miega režīms darbosies mūžīgi.

No pirmā acu uzmetiena var šķist, ka GPIO0, GPIO1 (TX), GPIO2, GPIO3 (RX) un GPIO15 ir aizņemti, tāpēc jūs nevarēsiet tos izmantot saviem mērķiem, taču patiesībā tas tā nav. Pietiekami augsts līmenis GPIO0 un GPIO2, kā arī zems līmenis GPIO15 var būt nepieciešams tikai sākotnējai moduļa palaišanai, un turpmāk jūs varat tos izmantot pēc saviem ieskatiem. Vienīgais, kas ir vērts atzīmēt, ir atcerēties nodrošināt nepieciešamos līmeņus pirms pilnīgas aprīkojuma atiestatīšanas.

Varat arī izmantot TX, RX kā alternatīvu GPIO1 un GPIO3, taču neaizmirstiet, ka pēc moduļa palaišanas katra programmaparatūra sāk “vilkt” TX, vienlaikus nosūtot atkļūdošanas informāciju uz UART0 ar ātrumu 74480, bet pēc tam lejupielāde būs veiksmīga, tos var izmantot ne tikai kā UART0 datu apmaiņai ar citu ierīci, bet arī kā standarta GPIO.

Moduļiem, kuriem ir mazs vadu tapu skaits (piemēram, ESP-01), nav nepieciešams savienot neatgrieztus kontaktus, tas ir, ESP-01 ir pievienoti tikai GND, CH_PD, VCC, GPIO0, GPIO2 un RESET. , un tie ir tie, kas jums būs jāpievelk. Nav nepieciešams tieši pielodēt pie ESP8266EX mikroshēmas un pēc tam vilkt tukšās tapas, ja vien tas nav patiešām vajadzīgs.

Šādas elektroinstalācijas shēmas tika izmantotas pēc daudziem eksperimentiem, ko veica kvalificēti speciālisti un apkopoja no daudz dažādas informācijas. Ir vērts atzīmēt, ka pat šādas shēmas nevar uzskatīt par ideālu, jo var izmantot vairākas citas, ne mazāk efektīvas iespējas.

Savienojums caur Arduino

Ja kāda iemesla dēļ jums nav 3,3 voltu USB-TTL pārveidotāja, tad ESP8266 WiFi moduli var savienot caur Arduino ar iebūvētu pārveidotāju. Šeit jums vispirms būs jāpievērš uzmanība trim galvenajiem elementiem:

  • Lietojot kopā ar ESP8266, Arduino Reset sākotnēji ir savienots ar GND, lai novērstu mikrokontrollera palaišanu, un šādā veidā tas tika izmantots kā caurspīdīgs USB-TTL pārveidotājs.
  • RX un TX nebija savienoti “krustceļā”, bet tieši - RX-RX (zaļš), TX-TX (dzeltens).
  • Viss pārējais ir savienots tieši tā, kā aprakstīts iepriekš.

Lietas, kas jāņem vērā

Šai shēmai ir arī jāsaskaņo 5 voltu TTL līmeņi Arduino, kā arī 3,3 volti ESP8266, taču tā var darboties diezgan labi jebkurā gadījumā.

Savienojot ar ESP8266, Arduino var būt aprīkots ar jaudas regulatoru, kas nevar apstrādāt ESP8266 nepieciešamo strāvu, tāpēc pirms tā aktivizēšanas jums būs jāpārbauda tā datu lapa, kuru izmantojat. Nemēģiniet ar ESP8266 savienot citus enerģiju patērējošus komponentus, jo tas var izraisīt Arduino iebūvētā jaudas regulatora vienkārši neveiksmi.

Ir arī cita ESP8266 un Arduino savienojuma shēma, kas izmanto SoftSerial. Tā kā SoftSerial bibliotēkai porta ātrums 115200 ir pārāk liels un nevar garantēt stabilu darbību, šī savienojuma metode nav ieteicama, lai gan ir daži gadījumi, kad viss darbojas diezgan stabili.

Savienojums caur RaspberryPi

Ja jums tādas nav USB-TTL pārveidotāji, tad šajā gadījumā varat izmantot RaspberryPi. Šajā gadījumā ESP8266 programmēšana un savienošana tiek veikta gandrīz identiski, taču šeit viss nav tik ērti, un papildus jums būs jāizmanto arī 3,3 voltu jaudas stabilizators.

Sākumā mēs savienojam mūsu ierīces RX, TX un GND ar ESP8266 un ņemam GND un VCC no ierīces, kas paredzēta 3,3 voltiem. Šeit īpaša uzmanība jāpievērš tam, ka jums ir jāpievieno visas GND ierīces, tas ir, RaspberryPi stabilizators un ESP8266. Ja jūsu ierīces modelī iebūvētais stabilizators var izturēt līdz pat 300 miliamperu papildu slodzi, tad šajā gadījumā ESP8266 pievienošana ir diezgan normāla parādība, taču tas viss tiek darīts tikai uz jūsu risku un risku.

Parametru iestatīšana

Kad esat izdomājis, kā pieslēgt ESP8266, jums jāpārliecinās, ka jūsu ierīcēm ir pareizi instalēti draiveri, kā rezultātā sistēmai ir pievienots jauns virtuālais seriālais ports. Šeit jums būs jāizmanto programma - seriālā porta terminālis. Principā jūs varat izvēlēties jebkuru utilītu, kas atbilst jūsu gaumei, taču jums ir pareizi jāsaprot, ka jebkurai komandai, kuru nosūtāt uz seriālo portu, beigās ir jābūt rakstzīmēm CR+LF.

CoolTerm un ESPlorer utilītas ir diezgan plaši izplatītas, un pēdējā ļauj pašam neievadīt ESP8266, un tajā pašā laikā atvieglo darbu ar lua skriptiem zem NodeMCU, tāpēc to var izmantot kā standarta termināli.

Lai izveidotu savienojumu normāli, jums būs daudz jāstrādā, jo ESP8266 programmaparatūra lielākoties ir dažāda, un aktivizēšanu var veikt dažādos ātrumos. Lai izlemtu par visvairāk labākais variants, jums būs jāiziet trīs galvenās iespējas: 9600, 57600 un 115200.

Kā šķirot?

Lai sāktu, termināļa programmā izveidojiet savienojumu ar virtuālo seriālo portu, iestatot parametrus uz 9600 8N1, pēc tam veiciet moduļa pilnīgu atsāknēšanu, atvienojot CH_PD (čipu iespējotu) no barošanas avota un pēc tam atkārtoti aktivizējiet to, saraustot CH_PD. Varat arī veikt īsu RESET uz zemējumu, lai atiestatītu moduli un novērotu datus terminālī.

Pirmkārt, ierīces gaismas diodēm vajadzētu parādīties tieši tā, kā parādīts testa procedūrā. Jums arī jāievēro komplekts terminālī dažādi varoņi, kas beigsies ar gatavu līniju, un, ja tā tur nav, tiek veikta atkārtota savienošana ar termināli ar citu ātrumu, kam seko moduļa atsāknēšana.

Kad redzat kādu no ātruma opcijām šī līnija, moduli var uzskatīt par gatavu darbam.

Kā atjaunināt programmaparatūru?

Kad esat instalējis ESP8266, ierīces pievienošana prasīs tikai dažas sekundes, un pēc tam varēsiet sākt programmaparatūras atjaunināšanu. Lai instalētu jaunu programmatūra jums ir jāveic šādas darbības.

Lai sāktu, lejupielādējiet jauno programmaparatūras versiju no oficiālās vietnes un arī lejupielādējiet īpaša lietderība programmaparatūrai. Šeit īpaša uzmanība jāpievērš tam, ko operētājsistēma uzstādīts uz mašīnas, ar kuru darbojas ESP8266. Vislabāk ir savienot ierīci ar sistēmām, kas vecākas par Windows 7.

Standarta Windows operētājsistēmām optimāli būtu izmantot programmu ar nosaukumu XTCOM UTIL, kas ir īpaši ērti lietojama, ja programmaparatūra sastāv tikai no viena faila. Labākā vairāku platformu opcija ir esptool utilīta, kurai tomēr ir nepieciešams python, kā arī nepieciešamība norādīt parametrus, izmantojot komandrinda. Turklāt ESP8266 ļauj ērti savienot galvenās funkcijas ar Flash lejupielādes rīku, kuram ir diezgan liels iestatījumu skaits, kā arī ērta programmaparatūras instalēšanas tehnoloģija no vairākiem failiem.

Pēc tam atvienojiet savu termināļa programmu no seriālā porta, kā arī pilnībā atvienojiet CH_PD no barošanas avota, pievienojiet moduļa GPIO0 pie GND, un pēc tam CH_PD var atgriezt atpakaļ. Galu galā vienkārši palaidiet modulāro programmaparatūras programmu un ielādējiet to ESP8266 relejā.

Lielākajā daļā gadījumu programmaparatūra tiek ielādēta modulī ar ātrumu aptuveni 115 200, bet īpašs režīms nodrošina automātisku ātruma sadali, kā rezultātā programmaparatūru var veikt ar ātrumu, kas pārsniedz 9600, atjauninot. ESP8266 pieejamās funkcijas. Savienojumam jeb USB-TTL tika izmantots Arduino - tas šeit nespēlē īpašu lomu, un šeit maksimālais ātrums jau ir atkarīgs no vadu garuma, izmantotā pārveidotāja un virknes citu faktoru.