ENGINNERS ESP8266 Bord għall-Iżvilupp NodeMCU
L-Internet tal-Oġġetti (IoT) kien qasam tat-tendenza fid-dinja tat-teknoloġija. Biddlet il-mod kif naħdmu. L-oġġetti fiżiċi u d-dinja diġitali huma konnessi issa aktar minn qatt qabel. Waqt li żżomm dan f'moħħok, Espressif Systems (Kumpanija tas-Semikondutturi bbażata f'Shanghai) ħarġet mikrokontrollur adorabbli, ta 'daqs tal-gidma li jippermetti l-WiFi - ESP8266, bi prezz inkredibbli! Għal inqas minn $ 3, jista 'jissorvelja u jikkontrolla l-affarijiet minn kullimkien fid-dinja - perfett għal kważi kull proġett IoT.
Il-bord ta 'żvilupp jgħammar il-modulu ESP-12E li fih ċippa ESP8266 li għandha mikroproċessur RISC Tensilica Xtensa® 32-bit LX106 li jaħdem bi frekwenza ta' arloġġ aġġustabbli ta '80 sa 160 MHz u jappoġġja RTOS.
Ċippa ESP-12E
- Tensilica Xtensa® 32-bit LX106
- 80 sa 160 MHz Frekwenza tal-Arloġġ.
- 128kB RAM interna
- 4MB flash estern
- Transceiver Wi-Fi 802.11b/g/n
Hemm ukoll 128 KB RAM u 4MB ta 'memorja Flash (għall-programm u l-ħażna tad-dejta) biss biżżejjed biex ilaħħqu mal-kordi kbar li jiffurmaw web paġni, dejta JSON/XML, u dak kollu li nafgħu fuq apparat IoT illum. L-ESP8266 Jintegra 802.11b/g/n HT40 Wi-Fi transceiver, għalhekk jista 'mhux biss jgħaqqad ma' netwerk WiFi u jinteraġixxi ma 'l-Internet, iżda jista' wkoll iwaqqaf netwerk tiegħu stess, li jippermetti li apparati oħra jgħaqqdu direttament ma ' dan. Dan jagħmel l-ESP8266 NodeMCU saħansitra aktar versatili.
Rekwiżit ta' Enerġija
Peress li l-vol operattivtagIl-firxa ta 'ESP8266 hija 3V sa 3.6V, il-bord jiġi ma' vol LDOtage regolatur biex iżomm il-voltage stabbli fi 3.3V. Jista 'jforni b'mod affidabbli sa 600mA, li għandu jkun aktar minn biżżejjed meta l-ESP8266 jiġbed daqs 80mA waqt it-trasmissjonijiet RF. L-output tar-regolatur huwa wkoll imkisser għal waħda mill-ġnub tal-bord u mmarkat bħala 3V3. Dan il-pin jista 'jintuża biex jipprovdi enerġija lill-komponenti esterni.
Rekwiżit ta' Enerġija
- Vol Operattivtage: 2.5V sa 3.6V
- Regolatur abbord 3.3V 600mA
- 80mA Kurrent Operattiv
- 20 μA waqt il-Modalità Sleep
L-enerġija għall-ESP8266 NodeMCU hija fornuta permezz tal-konnettur USB MicroB abbord. Inkella, jekk għandek vol 5V regolattage sors, il-pin VIN jista 'jintuża biex iforni direttament l-ESP8266 u l-periferali tiegħu.
Twissija: L-ESP8266 jeħtieġ provvista ta 'enerġija ta' 3.3V u livelli loġiċi ta '3.3V għall-komunikazzjoni. Il-pinnijiet GPIO mhumiex tolleranti għal 5V! Jekk trid tagħmel interface mal-bord b'komponenti ta '5V (jew ogħla), ikollok bzonn tagħmel xi bidla fil-livell.
Periferali u I/O
L-ESP8266 NodeMCU għandu total ta '17-il pin GPIO mqassma mal-headers tal-pin fuq iż-żewġ naħat tal-bord tal-iżvilupp. Dawn il-brilli jistgħu jiġu assenjati għal kull xorta ta' dmirijiet periferali, inklużi:
- Kanal ADC – Kanal ADC 10-bit.
- Interfaċċja UART - L-interface UART jintuża biex jgħabbi l-kodiċi serjali.
- Outputs PWM - pinnijiet PWM għal LEDs li jbaxxu jew jikkontrollaw muturi.
- SPI, I2C & I2S interface - SPI u I2C interface biex tgħaqqad kull xorta ta 'sensors u periferali.
- I2S interface – I2S interface jekk trid iżżid il-ħoss mal-proġett tiegħek.
I/Os Multiplexed
- 1 kanali ADC
- 2 interfaces UART
- 4 outputs PWM
- SPI, I2C & I2S interface
Grazzi għall-karatteristika tal-multiplexing tal-brilli tal-ESP8266 (Periferali multipli multiplikati fuq pin GPIO wieħed). Jiġifieri pin GPIO wieħed jista 'jaġixxi bħala PWM / UART / SPI.
Swiċċijiet abbord & Indikatur LED
L-ESP8266 NodeMCU għandu żewġ buttuni. Waħda mmarkata bħala RST li tinsab fuq ir-rokna tax-xellug ta 'fuq hija l-buttuna Irrisettja, użata ovvjament biex tirrisettja ċ-ċippa ESP8266. Il-buttuna FLASH l-oħra fuq ir-rokna tax-xellug t'isfel hija l-buttuna tat-tniżżil użata waqt it-titjib tal-firmware.
Swiċċijiet u Indikaturi
- RST - Irrisettja ċ-ċippa ESP8266
- FLASH – Niżżel programmi ġodda
- LED blu – Programmabbli mill-Utent
Il-bord għandu wkoll indikatur LED li huwa programmabbli mill-utent u huwa konness mal-pin D0 tal-bord.
Komunikazzjoni Serjali
Il-bord jinkludi CP2102 USB-to-UART Bridge Controller minn Silicon Labs, li jikkonverti sinjal USB f'serje u jippermetti lill-kompjuter tiegħek biex jipprogramma u jikkomunika maċ-ċippa ESP8266.
Komunikazzjoni Serjali
- Konvertitur CP2102 USB-to-UART
- Veloċità ta 'komunikazzjoni ta' 4.5 Mbps
- Appoġġ għall-Kontroll tal-Fluss
Jekk għandek verżjoni eqdem tas-sewwieq CP2102 installata fuq il-PC tiegħek, nirrakkomandaw li taġġorna issa.
Link għall-aġġornament tas-sewwieq CP2102 – https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
ESP8266 NodeMCU Pinout
L-ESP8266 NodeMCU għandu total ta '30 pin li jgħaqqadha mad-dinja ta' barra. Il-konnessjonijiet huma kif ġej:
Għal raġunijiet ta 'sempliċità, se nagħmlu gruppi ta' labar b'funzjonalitajiet simili.
Pinnijiet tal-Qawwa Hemm erba 'power pins viz. pin wieħed VIN & tliet pins 3.3V. Il-pin VIN jista 'jintuża biex iforni direttament l-ESP8266 u l-periferali tiegħu, jekk għandek vol 5V regolattagsors e. Il-brilli ta '3.3V huma l-output ta' vol abbordtage regolatur. Dawn il-brilli jistgħu jintużaw biex jipprovdu enerġija lill-komponenti esterni.
GND huwa pin ta 'l-art tal-bord ta' żvilupp ESP8266 NodeMCU. I2C Pins jintużaw biex jgħaqqdu kull xorta ta 'sensors I2C u periferali fil-proġett tiegħek. Kemm I2C Master u I2C Slave huma appoġġjati. Il-funzjonalità tal-interface I2C tista 'tiġi realizzata b'mod programmatiku, u l-frekwenza tal-arloġġ hija ta' 100 kHz massimu. Għandu jiġi nnutat li l-frekwenza tal-arloġġ I2C għandha tkun ogħla mill-frekwenza tal-arloġġ l-aktar bil-mod tal-apparat slave.
Pinnijiet GPIO ESP8266 NodeMCU għandu 17-il pin GPIO li jistgħu jiġu assenjati għal diversi funzjonijiet bħal I2C, I2S, UART, PWM, Kontroll mill-bogħod IR, Dawl LED u Button b'mod programmatiku. Kull GPIO diġitali attivat jista 'jiġi kkonfigurat għal pull-up jew pull-down intern, jew issettjat għal impedenza għolja. Meta kkonfigurat bħala input, jista 'jiġi ssettjat ukoll għal edge-trigger jew level-trigger biex jiġġenera interruzzjonijiet tas-CPU.
Kanal ADC In-NodeMCU huwa inkorporat b'ADC SAR ta 'preċiżjoni ta' 10 bit. Iż-żewġ funzjonijiet jistgħu jiġu implimentati bl-użu ta 'ADC viz. Ittestjar tal-provvista tal-enerġija voltage tal-pin VDD3P3 u l-input tal-ittestjar voltage ta 'TOUT pin. Madankollu, ma jistgħux jiġu implimentati fl-istess ħin.
Pinnijiet UART ESP8266 NodeMCU għandu 2 interfaces UART, jiġifieri UART0 u UART1, li jipprovdu komunikazzjoni asinkronika (RS232 u RS485), u jistgħu jikkomunikaw sa 4.5 Mbps. UART0 (TXD0, RXD0, RST0 & CTS0 pinnijiet) jistgħu jintużaw għall-komunikazzjoni. Jappoġġja l-kontroll tal-fluwidu. Madankollu, UART1 (TXD1 pin) karatteristiċi biss data jittrasmettu sinjal hekk, huwa normalment użat għall-istampar log.
Pinnijiet SPI ESP8266 għandu żewġ SPIs (SPI u HSPI) f'modi slave u master. Dawn l-SPIs jappoġġjaw ukoll il-karatteristiċi SPI għal skopijiet ġenerali li ġejjin:
- 4 modi ta 'żmien tat-trasferiment tal-format SPI
- Sa 80 MHz u l-arloġġi maqsuma ta '80 MHz
- Sa 64-Byte FIFO
Pinnijiet SDIO ESP8266 karatteristiċi Secure Digital Input/Output Interface (SDIO) li huwa użat biex direttament interface SD cards. 4-bit 25 MHz SDIO v1.1 u 4-bit 50 MHz SDIO v2.0 huma appoġġjati.
Pinnijiet PWM Il-bord għandu 4 kanali ta 'Modulazzjoni Wisa' tal-Impuls (PWM). L-output PWM jista 'jiġi implimentat b'mod programmatiku u użat għas-sewqan ta' muturi diġitali u LEDs. Il-firxa tal-frekwenza PWM hija aġġustabbli minn 1000 μs sa 10000 μs, jiġifieri, bejn 100 Hz u 1 kHz.
Pinnijiet tal-Kontroll jintużaw biex jikkontrollaw l-ESP8266. Dawn il-brilli jinkludu Chip Enable pin (EN), Reset pin (RST) u WAKE pin.
- pin EN – Iċ-ċippa ESP8266 hija attivata meta l-pin EN jinġibed GĦOLJA. Meta tinġibed LOW iċ-ċippa taħdem b'qawwa minima.
- RST pin - RST pin huwa użat biex reset iċ-ċippa ESP8266.
- WAKE pin - Wake pin jintuża biex iqajjem iċ-ċippa mill-irqad fil-fond.
Pjattaformi ta' Żvilupp ESP8266
Issa, ejja ngħaddu għall-għalf interessanti! Hemm varjetà ta 'pjattaformi ta' żvilupp li jistgħu jiġu mgħammra biex jipprogrammaw l-ESP8266. Tista’ tmur ma’ Espruino – JavaScript SDK u firmware li jimitaw mill-qrib Node.js, jew tuża Mongoose OS – Sistema operattiva għal apparati IoT (pjattaforma rakkomandata minn Espressif Systems u Google Cloud IoT) jew tuża kit ta’ żvilupp ta’ softwer (SDK) ipprovdut minn Espressif jew waħda mill-pjattaformi elenkati fuq WiKiPedia. Fortunatament, l-aqwa komunità ESP8266 ħadet l-għażla IDE pass ieħor billi ħolqot add-on Arduino. Jekk għadek kif tibda tipprogramma l-ESP8266, dan huwa l-ambjent li nirrakkomandaw li nibdew minnu, u dak li ser niddokumentaw f'dan it-tutorja.
Dan iż-żieda ESP8266 għal Arduino hija bbażata fuq ix-xogħol aqwa minn Ivan Grokhotkov u l-bqija tal-komunità ESP8266. Iċċekkja r-repożitorju ESP8266 Arduino GitHub għal aktar informazzjoni.
Installazzjoni tal-ESP8266 Core fuq Windows OS
Ejja nipproċedu bl-installazzjoni ESP8266 Arduino qalba. L-ewwel ħaġa hija li jkollok l-aħħar Arduino IDE (Arduino 1.6.4 jew ogħla) installat fuq il-PC tiegħek. Jekk ma jkollokx, nirrakkomandaw li taġġorna issa.
Link għal Arduino IDE - https://www.arduino.cc/en/software
Biex nibdew, ikollna bżonn naġġornaw lill-maniġer tal-bord b'użanza URL. Iftaħ Arduino IDE u mur File > Preferenzi. Imbagħad, kopja hawn taħt URL fil-Maniġer tal-Bord Addizzjonali URLkaxxa tat-test li tinsab fil-qiegħ tat-tieqa: http://arduino.esp8266.com/stable/package_esp8266com_index.json
Agħfas OK. Imbagħad innaviga lejn il-Maniġer tal-Bord billi tmur Għodda > Bordijiet > Maniġer tal-Bordijiet. Għandu jkun hemm ftit entrati ġodda minbarra l-bordijiet Arduino standard. Iffiltra t-tfittxija tiegħek billi ttajpja esp8266. Ikklikkja fuq dik l-entrata u agħżel Installa.
Id-definizzjonijiet u l-għodod tal-bord għall-ESP8266 jinkludu sett ġdid sħiħ ta' gcc, g++, u binarji oħra raġonevolment kbar, ikkumpilati, għalhekk jista' jieħu ftit minuti biex tniżżel u tinstalla (l-arkivjat file huwa ~ 110MB). Ladarba l-installazzjoni titlesta, jidher test żgħir INSTALLAT ħdejn l-entrata. Issa tista' tagħlaq il-Bord Manager
Arduino Example: Teptip
Biex niżguraw li l-qalba ta' l-ESP8266 Arduino u n-NodeMCU huma mwaqqfa kif suppost, aħna ntellgħu l-aktar skeċċ sempliċi ta' kulħadd – The Blink! Aħna se nużaw l-LED abbord għal dan it-test. Kif issemma qabel f'dan it-tutorja, il-pin D0 tal-bord huwa konness mal-Blue LED abbord u huwa programmabbli mill-utent. Perfetta! Qabel ma naslu biex intellgħu sketch u nilagħbu bl-LED, irridu niżguraw li l-bord jintgħażel sew f'Arduino IDE. Iftaħ Arduino IDE u agħżel NodeMCU 0.9 (ESP-12 Module) għażla taħt Arduino IDE tiegħek > Għodda > menu Bord.
Issa, plagg ESP8266 NodeMCU tiegħek fil-kompjuter tiegħek permezz ta 'kejbil USB mikro-B. Ladarba l-bord jiġi pplaggjat, għandu jiġi assenjat port COM uniku. Fuq magni Windows, din tkun xi ħaġa bħal COM#, u fuq kompjuters Mac/Linux se tiġi fil-forma ta '/dev/tty.usbserial-XXXXXX. Agħżel dan il-port tas-serje taħt il-menu Arduino IDE > Għodda > Port. Agħżel ukoll il-Veloċità tat-Tlugħ: 115200
Twissija: Jeħtieġ li tingħata aktar attenzjoni għall-għażla tal-bord, l-għażla tal-port COM u l-għażla tal-veloċità tat-Tlugħ. Jista' jkollok żball espcomm_upload_mem waqt li ttella' abbozzi ġodda, jekk naqas milli tagħmel dan.
Ladarba tkun lest, ipprova l-example skeċċ hawn taħt.
setup null ()
{pinMode(D0, OUTPUT);}void loop ()
{digitalWrite(D0, GĦOLJA);
dewmien(500);
digitalWrite(D0, LOW);
dewmien(500);
Ladarba l-kodiċi jittella, l-LED jibda jteptep. Jista 'jkollok bżonn tisfrutta l-buttuna RST biex tikseb l-ESP8266 tiegħek biex tibda tħaddem l-iskeċċ.
Dokumenti / Riżorsi
![]() |
ENGINNERS ESP8266 Bord għall-Iżvilupp NodeMCU [pdf] Istruzzjonijiet ESP8266 Bord għall-Iżvilupp NodeMCU, ESP8266, Bord għall-Iżvilupp NodeMCU |