Inžinierius

INŽINERIAI ESP8266 NodeMCU plėtros valdyba

INŽINIERIAI-NodeMCU-Development-Board

Daiktų internetas (IoT) buvo populiarėjanti sritis technologijų pasaulyje. Tai pakeitė mūsų darbo būdą. Fiziniai objektai ir skaitmeninis pasaulis dabar yra labiau nei bet kada susiję. Turėdami tai omenyje, Espressif Systems (Šanchajuje įsikūrusi „Semiconductor Company“) išleido žavų, įkandamo dydžio „WiFi“ ryšį palaikantį mikrovaldiklį ESP8266 už neįtikėtiną kainą! Už mažiau nei 3 USD galima stebėti ir valdyti dalykus iš bet kurios pasaulio vietos – puikiai tinka beveik bet kokiam IoT projektui.

Kūrimo plokštėje yra ESP-12E modulis, kuriame yra ESP8266 lustas, turintis Tensilica Xtensa® 32 bitų LX106 RISC mikroprocesorių, kuris veikia nuo 80 iki 160 MHz reguliuojamu laikrodžio dažniu ir palaiko RTOS.

ESP-12E lustas

  • Tensilica Xtensa® 32 bitų LX106
  • 80–160 MHz Laikrodžio dažnis.
  • 128kB vidinė RAM
  • 4MB išorinė blykstė
  • 802.11b/g/n Wi-Fi siųstuvas-imtuvasINŽINERIAI-NodeMCU-Development-Board-1

Taip pat yra 128 KB RAM ir 4 MB „Flash“ atminties (programoms ir duomenims saugoti), tiek, kiek pakanka susidoroti su didelėmis eilėmis, kurias sudaro web puslapių, JSON / XML duomenų ir visko, ką šiais laikais metame į IoT įrenginius. ESP8266 integruotas 802.11b/g/n HT40 Wi-Fi siųstuvas-imtuvas, todėl gali ne tik prisijungti prie WiFi tinklo ir sąveikauti su internetu, bet ir sukurti savo tinklą, leidžiantį kitiems įrenginiams tiesiogiai prisijungti prie tai. Dėl to ESP8266 NodeMCU yra dar universalesnis.

Galios reikalavimas

Kaip teigia veikiantis ttagESP8266 diapazonas yra nuo 3 V iki 3.6 V, plokštė tiekiama su LDO volutage reguliatorius išlaikyti ttage pastovus 3.3 V. Jis gali patikimai tiekti iki 600 mA, o to turėtų pakakti, kai ESP8266 radijo dažnių perdavimo metu ištraukia net 80 mA. Reguliatoriaus išėjimas taip pat išardomas į vieną iš plokštės pusių ir pažymėtas kaip 3V3. Šis kaištis gali būti naudojamas tiekti maitinimą išoriniams komponentams.

Galios reikalavimas

  • Veiklos ttage: nuo 2.5 V iki 3.6 V
  • Įmontuotas 3.3V 600mA reguliatorius
  • 80mA darbinė srovė
  • 20 μA miego režimuINŽINERIAI-NodeMCU-Development-Board-2

ESP8266 NodeMCU maitinimas tiekiamas per integruotą MicroB USB jungtį. Arba, jei turite reguliuojamą 5 V įtampątage šaltinio, VIN kaištis gali būti naudojamas tiesiogiai tiekti ESP8266 ir jo periferinius įrenginius.

Įspėjimas: ESP8266 komunikacijai reikalingas 3.3 V maitinimo šaltinis ir 3.3 V loginiai lygiai. GPIO kaiščiai netoleruoja 5 V! Jei norite sujungti plokštę su 5 V (ar aukštesnės) komponentais, turėsite šiek tiek pakeisti lygį.

Išoriniai įrenginiai ir I/O

ESP8266 NodeMCU iš viso turi 17 GPIO kaiščių, išardytų į kaiščių antraštes abiejose kūrimo plokštės pusėse. Šie kaiščiai gali būti priskirti visoms periferinėms užduotims, įskaitant:

  • ADC kanalas – 10 bitų ADC kanalas.
  • UART sąsaja – UART sąsaja naudojama kodui įkelti nuosekliai.
  • PWM išėjimai – PWM kaiščiai, skirti pritemdyti šviesos diodus arba valdyti variklius.
  • SPI, I2C ir I2S sąsaja – SPI ir I2C sąsaja, skirta visų tipų jutikliams ir periferiniams įrenginiams prijungti.
  • I2S sąsaja – I2S sąsaja, jei norite pridėti garso prie savo projekto.

Sutankintos I/Os

  • 1 ADC kanalas
  • 2 UART sąsajos
  • 4 PWM išėjimai
  • SPI, I2C ir I2S sąsajaINŽINERIAI-NodeMCU-Development-Board-3

Dėl ESP8266 kaiščių tankinimo funkcijos (keli periferiniai įrenginiai sutankinti ant vieno GPIO kaiščio). Tai reiškia, kad vienas GPIO kaištis gali veikti kaip PWM / UART / SPI.

Įmontuoti jungikliai ir LED indikatorius

ESP8266 NodeMCU turi du mygtukus. Viršutiniame kairiajame kampe pažymėtas RST yra mygtukas Reset, žinoma, naudojamas ESP8266 lustui iš naujo nustatyti. Kitas FLASH mygtukas apatiniame kairiajame kampe yra atsisiuntimo mygtukas, naudojamas atnaujinant programinę-aparatinę įrangą.

Jungikliai ir indikatoriai

  • RST – iš naujo nustatykite ESP8266 lustą
  • FLASH – atsisiųskite naujų programų
  • Mėlynas šviesos diodas – vartotojo programuojamasINŽINERIAI-NodeMCU-Development-Board-4

Plokštėje taip pat yra LED indikatorius, kuris yra vartotojo programuojamas ir yra prijungtas prie plokštės D0 kaiščio.

Serijinis ryšys

Plokštėje yra CP2102 USB-UART tilto valdiklis iš Silicon Labs, kuris konvertuoja USB signalą į nuoseklųjį ir leidžia jūsų kompiuteriui programuoti ir bendrauti su ESP8266 lustu.

Serijinis ryšys

  • CP2102 USB į UART konverteris
  • 4.5 Mbps ryšio greitis
  • Srauto valdymo palaikymasINŽINERIAI-NodeMCU-Development-Board-5

Jei kompiuteryje įdiegta senesnė CP2102 tvarkyklės versija, rekomenduojame atnaujinti dabar.
CP2102 tvarkyklės atnaujinimo nuoroda – https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers

ESP8266 NodeMCU Pinout

ESP8266 NodeMCU iš viso turi 30 kontaktų, kurie susieja jį su išoriniu pasauliu. Jungtys yra tokios:INŽINERIAI-NodeMCU-Development-Board-6

Paprastumo dėlei padarysime panašių funkcijų kaiščių grupes.

Maitinimo kaiščiai Yra keturi maitinimo kaiščiai, ty. vienas VIN kaištis ir trys 3.3 V kaiščiai. VIN kaištis gali būti naudojamas tiesiogiai tiekti ESP8266 ir jo periferinius įrenginius, jei turite reguliuojamą 5 V įtampątage šaltinis. 3.3 V kaiščiai yra įmontuoto tūrio išvestistage reguliatorius. Šie kaiščiai gali būti naudojami tiekti maitinimą išoriniams komponentams.

GND yra ESP8266 NodeMCU kūrimo plokštės įžeminimo kaištis. I2C kaiščiai naudojami norint prijungti įvairius I2C jutiklius ir išorinius įrenginius jūsų projekte. Palaikomi ir I2C Master, ir I2C Slave. I2C sąsajos funkcionalumą galima realizuoti programiškai, o maksimalus laikrodžio dažnis yra 100 kHz. Reikėtų pažymėti, kad I2C laikrodžio dažnis turėtų būti didesnis nei lėčiausias pagalbinio įrenginio laikrodžio dažnis.

GPIO kaiščiai ESP8266 NodeMCU turi 17 GPIO kaiščių, kuriuos galima programiškai priskirti įvairioms funkcijoms, tokioms kaip I2C, I2S, UART, PWM, IR nuotolinio valdymo pultas, LED lemputė ir mygtukas. Kiekvienas skaitmeninis įgalintas GPIO gali būti sukonfigūruotas į vidinį ištraukimą arba ištraukiamumą arba nustatyti didelę varžą. Kai sukonfigūruotas kaip įvestis, jis taip pat gali būti nustatytas į krašto paleidiklį arba lygio paleidiklį, kad būtų generuojami procesoriaus pertraukimai.

ADC kanalas „NodeMCU“ yra integruotas su 10 bitų tikslumu SAR ADC. Abi funkcijos gali būti įgyvendintos naudojant ADC, ty. Bandomasis maitinimo šaltinis ttage iš VDD3P3 kaiščio ir testavimo įvesties ttage iš TOUT kaiščio. Tačiau jų negalima įgyvendinti vienu metu.

UART smeigtukai ESP8266 NodeMCU turi 2 UART sąsajas, ty UART0 ir UART1, kurios užtikrina asinchroninį ryšį (RS232 ir RS485) ir gali palaikyti ryšį iki 4.5 Mbps. Ryšiui galima naudoti UART0 (TXD0, RXD0, RST0 ir CTS0 kaiščius). Jis palaiko skysčių kontrolę. Tačiau UART1 (TXD1 kaištis) turi tik duomenų perdavimo signalą, todėl jis dažniausiai naudojamas žurnalo spausdinimui.

SPI smeigtukai ESP8266 turi du SPI (SPI ir HSPI) valdomu ir pagrindiniu režimais. Šie SPI taip pat palaiko šias bendrosios paskirties SPI funkcijas:

  • 4 SPI formato perdavimo laiko režimai
  • Iki 80 MHz, o padalinti laikrodžiai 80 MHz
  • Iki 64 baitų FIFO

SDIO kaiščiai ESP8266 turi saugią skaitmeninę įvesties/išvesties sąsają (SDIO), kuri naudojama tiesiogiai prijungti SD korteles. Palaikomi 4 bitų 25 MHz SDIO v1.1 ir 4 bitų 50 MHz SDIO v2.0.

PWM kaiščiai Plokštėje yra 4 impulsų pločio moduliavimo (PWM) kanalai. PWM išvestis gali būti įdiegta programiškai ir naudojama skaitmeniniams varikliams ir šviesos diodams valdyti. PWM dažnių diapazonas reguliuojamas nuo 1000 μs iki 10000 100 μs, ty nuo 1 Hz iki XNUMX kHz.

Valdymo kaiščiai naudojami ESP8266 valdyti. Šie kaiščiai apima lusto įjungimo kaištį (EN), Reset kaištį (RST) ir WAKE kaištį.

  • EN kaištis – ESP8266 lustas įjungiamas, kai EN kaištis patraukiamas AUKŠTAI. Ištraukus LOW, lustas veikia mažiausia galia.
  • RST kaištis – RST kaištis naudojamas ESP8266 lustui iš naujo nustatyti.
  • WAKE PIN – pažadinimo kaištis naudojamas lustui pažadinti iš gilaus miego.

ESP8266 kūrimo platformos

Dabar pereikime prie įdomių dalykų! Yra įvairių kūrimo platformų, kurias galima pritaikyti programuoti ESP8266. Galite naudoti „Espruino“ – „JavaScript“ SDK ir programinę-aparatinę įrangą, glaudžiai imituojančią Node.js, arba naudoti „Mongoose OS“ – operacinę sistemą daiktų interneto įrenginiams (rekomenduojama platforma „Espressif Systems“ ir „Google Cloud IoT“) arba naudoti programinės įrangos kūrimo rinkinį (SDK), kurį teikia Espressif. arba viena iš platformų, išvardytų WiKiPedia. Laimei, nuostabi ESP8266 bendruomenė žengė žingsnį į IDE pasirinkimą ir sukūrė Arduino priedą. Jei tik pradedate programuoti ESP8266, rekomenduojame pradėti nuo šios aplinkos, kurią dokumentuosime šioje mokymo programoje.
Šis ESP8266 priedas, skirtas Arduino, sukurtas remiantis nuostabiu Ivano Grokhotkovo ir likusios ESP8266 bendruomenės darbu. Norėdami gauti daugiau informacijos, patikrinkite ESP8266 Arduino GitHub saugyklą.

ESP8266 branduolio įdiegimas Windows OS

Tęskime ESP8266 Arduino branduolio diegimą. Pirmiausia turite įdiegti naujausią „Arduino IDE“ („Arduino 1.6.4“ arba naujesnę versiją) kompiuteryje. Jei jo neturite, rekomenduojame atnaujinti dabar.
Arduino IDE nuoroda – https://www.arduino.cc/en/software
Norėdami pradėti, turėsime atnaujinti valdybos valdytoją tinkintu URL. Atidarykite Arduino IDE ir eikite į File > Parinktys. Tada nukopijuokite žemiau URL į papildomos valdybos vadovą URLs teksto laukelį, esantį lango apačioje: http://arduino.esp8266.com/stable/package_esp8266com_index.jsonINŽINERIAI-NodeMCU-Development-Board-7

Paspauskite OK. Tada eikite į lentų tvarkyklę, eikite į Įrankiai > Lentos > Lentos tvarkyklė. Be standartinių Arduino plokščių, turėtų būti keletas naujų įrašų. Filtruokite paiešką įvesdami esp8266. Spustelėkite tą įrašą ir pasirinkite Įdiegti.INŽINERIAI-NodeMCU-Development-Board-8

ESP8266 plokštės apibrėžimai ir įrankiai apima visiškai naują gcc, g++ ir kitų pakankamai didelių sukompiliuotų dvejetainių failų rinkinį, todėl atsisiuntimas ir įdiegimas gali užtrukti kelias minutes (archyvuotas file yra ~ 110 MB). Kai diegimas bus baigtas, šalia įrašo bus rodomas mažas tekstas INSTALLED. Dabar galite uždaryti valdybos vadovą

Arduino Example: Mirksėti

Norėdami įsitikinti, kad ESP8266 Arduino branduolys ir NodeMCU yra tinkamai nustatyti, įkelsime paprasčiausią eskizą – The Blink! Šiam bandymui naudosime įmontuotą šviesos diodą. Kaip minėta anksčiau šioje pamokoje, plokštės D0 kaištis yra prijungtas prie plokštės mėlynos šviesos diodo ir yra vartotojo programuojamas. Tobula! Prieš pradėdami įkelti eskizą ir žaisti su LED, turime įsitikinti, kad plokštė yra tinkamai parinkta „Arduino IDE“. Atidarykite „Arduino IDE“ ir pasirinkite „NodeMCU 0.9“ (ESP-12 modulis) „Arduino IDE“ > „Įrankiai“ > „Board“ meniu.INŽINERIAI-NodeMCU-Development-Board-9

Dabar prijunkite ESP8266 NodeMCU prie kompiuterio naudodami USB mikro-B laidą. Kai plokštė yra prijungta, jai turėtų būti priskirtas unikalus COM prievadas. „Windows“ įrenginiuose tai bus kažkas panašaus į COM#, o „Mac“ / „Linux“ kompiuteriuose jis bus /dev/tty.usbserial-XXXXXX. Pasirinkite šį nuoseklųjį prievadą meniu Arduino IDE > Įrankiai > Prievadas. Taip pat pasirinkite įkėlimo greitį: 115200INŽINERIAI-NodeMCU-Development-Board-10

Įspėjimas: Daugiau dėmesio reikia skirti plokštės, COM prievado ir įkėlimo greičio pasirinkimui. Įkeldami naujus eskizus galite gauti espcomm_upload_mem klaidą, jei to padaryti nepavyks.

Baigę išbandykite buvampeskizas žemiau.

negaliojantis nustatymas ()
{pinMode(D0, OUTPUT);}void loop()
{skaitmeninis rašymas(D0, AUKŠTAS);
delsimas (500);
skaitmeninisWrite(D0, LOW);
delsimas (500);
Kai kodas bus įkeltas, LED pradės mirksėti. Gali tekti bakstelėti mygtuką RST, kad ESP8266 pradėtų paleisti eskizą.INŽINERIAI-NodeMCU-Development-Board-11

Dokumentai / Ištekliai

INŽINERIAI ESP8266 NodeMCU plėtros valdyba [pdfInstrukcijos
ESP8266 NodeMCU plėtros valdyba, ESP8266, NodeMCU plėtros valdyba

Nuorodos

Palikite komentarą

Jūsų el. pašto adresas nebus skelbiamas. Privalomi laukai pažymėti *