ENGINNERS ESP8266 NodeMCU Development Board
Internet vecí (IoT) je trendovou oblasťou vo svete technológií. Zmenilo to spôsob, akým pracujeme. Fyzické predmety a digitálny svet sú teraz prepojené viac ako kedykoľvek predtým. S ohľadom na túto skutočnosť spoločnosť Espressif Systems (Shanghai-based Semiconductor Company) vydala rozkošný mikrokontrolér s podporou WiFi – ESP8266, za neuveriteľnú cenu! Za menej ako 3 doláre dokáže monitorovať a ovládať veci odkiaľkoľvek na svete – ideálne pre takmer akýkoľvek IoT projekt.
Vývojová doska je vybavená modulom ESP-12E obsahujúcim čip ESP8266 s mikroprocesorom Tensilica Xtensa® 32-bit LX106 RISC, ktorý pracuje na frekvencii 80 až 160 MHz nastaviteľnej hodinovej frekvencie a podporuje RTOS.
Čip ESP-12E
- Tensilica Xtensa® 32-bit LX106
- 80 až 160 MHz taktovacia frekvencia.
- 128 kB interná RAM
- 4 MB externého flash disku
- Wi-Fi transceiver 802.11b/g/n
K dispozícii je tiež 128 KB RAM a 4 MB Flash pamäte (na ukladanie programov a dát), ktoré stačí na zvládnutie veľkých reťazcov, ktoré tvoria web stránky, JSON/XML dáta a všetko, čo dnes hodíme do IoT zariadení. ESP8266 integruje 802.11b/g/n HT40 Wi-Fi transceiver, takže sa môže nielen pripojiť k WiFi sieti a interagovať s internetom, ale môže tiež vytvoriť vlastnú sieť, ktorá umožní ďalším zariadeniam pripojiť sa priamo k to. Vďaka tomu je ESP8266 NodeMCU ešte všestrannejší.
Požiadavka na napájanie
Ako prevádzková objtagRozsah ESP8266 je 3V až 3.6V, doska je dodávaná s LDO obj.tage regulátor na dodržanie objtage stabilné na 3.3 V. Dokáže spoľahlivo dodávať až 600 mA, čo by malo byť viac než dosť, keď ESP8266 odoberá pri RF prenosoch až 80 mA. Výstup regulátora je tiež vylomený na jednu zo strán dosky a označený ako 3V3. Tento kolík možno použiť na napájanie externých komponentov.
Požiadavka na napájanie
- Prevádzkový zvtage: 2.5 V až 3.6 V
- Palubný regulátor 3.3V 600mA
- Prevádzkový prúd 80mA
- 20 μA počas režimu spánku
Napájanie ESP8266 NodeMCU sa dodáva cez zabudovaný MicroB USB konektor. Prípadne ak máte regulovaných 5V objtagV prípade zdroja je možné pin VIN použiť na priame napájanie ESP8266 a jeho periférií.
POZOR: ESP8266 vyžaduje na komunikáciu 3.3 V napájanie a 3.3 V logické úrovne. Piny GPIO netolerujú 5V! Ak chcete prepojiť dosku s 5V (alebo vyšším) komponentmi, budete musieť urobiť nejaké posunutie úrovne.
Periférne zariadenia a I/O
ESP8266 NodeMCU má celkom 17 GPIO kolíkov vylomených do hlavičiek kolíkov na oboch stranách vývojovej dosky. Tieto kolíky možno priradiť všetkým druhom periférnych úloh vrátane:
- Kanál ADC – 10-bitový kanál ADC.
- Rozhranie UART – Rozhranie UART sa používa na sériové načítanie kódu.
- PWM výstupy – PWM piny pre stmievanie LED alebo ovládanie motorov.
- Rozhranie SPI, I2C & I2S – Rozhranie SPI a I2C na pripojenie najrôznejších senzorov a periférií.
- Rozhranie I2S – Rozhranie I2S, ak chcete do svojho projektu pridať zvuk.
Multiplexné I/O
- 1 kanál ADC
- 2 rozhrania UART
- 4 PWM výstupy
- Rozhranie SPI, I2C a I2S
Vďaka funkcii multiplexovania pinov ESP8266 (viacero periférií multiplexovaných na jednom GPIO pine). To znamená, že jeden pin GPIO môže fungovať ako PWM/UART/SPI.
Palubné spínače a LED indikátor
ESP8266 NodeMCU má dve tlačidlá. Jedno označené ako RST umiestnené v ľavom hornom rohu je tlačidlo Reset, ktoré sa samozrejme používa na resetovanie čipu ESP8266. Druhé tlačidlo FLASH v ľavom dolnom rohu je tlačidlo sťahovania používané pri aktualizácii firmvéru.
Prepínače a indikátory
- RST – Resetujte čip ESP8266
- FLASH – sťahovanie nových programov
- Modrá LED – užívateľsky programovateľná
Doska má tiež LED indikátor, ktorý je užívateľsky programovateľný a je pripojený na D0 pin dosky.
Sériová komunikácia
Doska obsahuje CP2102 USB-to-UART Bridge Controller od Silicon Labs, ktorý konvertuje USB signál na sériový a umožňuje vášmu počítaču programovať a komunikovať s čipom ESP8266.
Sériová komunikácia
- CP2102 USB-to-UART prevodník
- Komunikačná rýchlosť 4.5 Mbps
- Podpora Flow Control
Ak máte na svojom počítači nainštalovanú staršiu verziu ovládača CP2102, odporúčame vykonať aktualizáciu teraz.
Odkaz na aktualizáciu ovládača CP2102 – https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
ESP8266 NodeMCU Pinout
ESP8266 NodeMCU má celkom 30 pinov, ktoré ho spájajú s vonkajším svetom. Spojenia sú nasledovné:
Pre jednoduchosť vytvoríme skupiny kolíkov s podobnými funkciami.
Napájacie kolíky Existujú štyri napájacie kolíky, napr. jeden kolík VIN a tri kolíky 3.3 V. Pin VIN je možné použiť na priame napájanie ESP8266 a jeho periférií, ak máte regulované 5V obj.tage zdroj. 3.3V kolíky sú výstupom palubného objtage regulátor. Tieto kolíky možno použiť na napájanie externých komponentov.
GND je uzemňovací kolík vývojovej dosky ESP8266 NodeMCU. I2C kolíky sa používajú na pripojenie všetkých druhov I2C senzorov a periférií vo vašom projekte. Podporované sú I2C Master aj I2C Slave. Funkčnosť rozhrania I2C môže byť realizovaná programovo a frekvencia hodín je maximálne 100 kHz. Je potrebné poznamenať, že frekvencia hodín I2C by mala byť vyššia ako najpomalšia frekvencia hodín podriadeného zariadenia.
GPIO kolíky ESP8266 NodeMCU má 17 GPIO pinov, ktoré je možné programovo priradiť k rôznym funkciám, ako sú I2C, I2S, UART, PWM, IR diaľkové ovládanie, LED svetlo a tlačidlo. Každé digitálne aktivované GPIO môže byť nakonfigurované na interné vytiahnutie alebo vytiahnutie alebo nastavenie na vysokú impedanciu. Keď je nakonfigurovaný ako vstup, môže byť tiež nastavený na spustenie okraja alebo spustenie úrovne na generovanie prerušení CPU.
Kanál ADC NodeMCU je zabudovaný s 10-bitovým presným SAR ADC. Tieto dve funkcie je možné implementovať pomocou ADC, viď. Skúšobný zdroj objtage pinu VDD3P3 a testovací vstup objtage kolíka TOUT. Nemožno ich však realizovať súčasne.
Piny UART ESP8266 NodeMCU má 2 rozhrania UART, tj UART0 a UART1, ktoré poskytujú asynchrónnu komunikáciu (RS232 a RS485) a môžu komunikovať rýchlosťou až 4.5 Mbps. Na komunikáciu je možné použiť UART0 (piny TXD0, RXD0, RST0 & CTS0). Podporuje kontrolu tekutín. Avšak UART1 (TXD1 pin) obsahuje iba signál na prenos dát, takže sa zvyčajne používa na tlač denníka.
Piny SPI ESP8266 obsahuje dva SPI (SPI a HSPI) v režime slave a master. Tieto SPI tiež podporujú nasledujúce všeobecné funkcie SPI:
- 4 režimy časovania prenosu formátu SPI
- Až 80 MHz a rozdelené takty 80 MHz
- Až 64 bajtov FIFO
Piny SDIO ESP8266 je vybavený rozhraním Secure Digital Input/Output Interface (SDIO), ktoré sa používa na priame prepojenie kariet SD. Podporované sú 4-bitové 25 MHz SDIO v1.1 a 4-bitové 50 MHz SDIO v2.0.
PWM kolíky Doska má 4 kanály Pulse Width Modulation (PWM). Výstup PWM môže byť implementovaný programovo a použitý na riadenie digitálnych motorov a LED. Frekvenčný rozsah PWM je nastaviteľný od 1000 μs do 10000 μs, tj medzi 100 Hz a 1 kHz.
Kontrolné kolíky sa používajú na ovládanie ESP8266. Tieto kolíky zahŕňajú kolík aktivácie čipu (EN), kolík resetovania (RST) a kolík WAKE.
- EN pin – Čip ESP8266 je aktivovaný, keď je EN pin vytiahnutý VYSOKO. Pri vytiahnutí LOW čip pracuje pri minimálnom výkone.
- RST pin – RST pin slúži na resetovanie čipu ESP8266.
- WAKE pin – Wake pin sa používa na prebudenie čipu z hlbokého spánku.
Vývojové platformy ESP8266
Teraz prejdime k zaujímavým veciam! Existuje množstvo vývojových platforiem, ktoré môžu byť vybavené na programovanie ESP8266. Môžete použiť Espruino – JavaScript SDK a firmvér úzko emulujúci Node.js, alebo použiť Mongoose OS – operačný systém pre zariadenia IoT (odporúčaná platforma Espressif Systems a Google Cloud IoT) alebo použiť súpravu na vývoj softvéru (SDK) od Espressif alebo na jednej z platforiem uvedených na WikiPedii. Našťastie úžasná komunita ESP8266 posunula výber IDE o krok ďalej vytvorením doplnku Arduino. Ak práve začínate s programovaním ESP8266, toto je prostredie, s ktorým odporúčame začať a ktoré si zdokumentujeme v tomto návode.
Tento doplnok ESP8266 pre Arduino je založený na úžasnej práci Ivana Grokhotkova a zvyšku komunity ESP8266. Ďalšie informácie nájdete v úložisku ESP8266 Arduino GitHub.
Inštalácia jadra ESP8266 na OS Windows
Pokračujme v inštalácii jadra ESP8266 Arduino. Prvá vec je mať na vašom PC nainštalované najnovšie Arduino IDE (Arduino 1.6.4 alebo vyššie). Ak ho nemáte, odporúčame inovovať teraz.
Odkaz na Arduino IDE – https://www.arduino.cc/en/software
Ak chcete začať, budeme musieť aktualizovať správcu predstavenstva pomocou vlastného URL. Otvorte Arduino IDE a prejdite na File > Predvoľby. Potom skopírujte nižšie URL do doplnkového predstavenstva URLs textové pole umiestnené v spodnej časti okna: http://arduino.esp8266.com/stable/package_esp8266com_index.json
Stlačte OK. Potom prejdite do Správcu násteniek tak, že prejdete na Nástroje > Nástenky > Správca vývesiek. Okrem štandardných dosiek Arduino by malo byť niekoľko nových položiek. Filtrujte vyhľadávanie zadaním esp8266. Kliknite na túto položku a vyberte možnosť Inštalovať.
Definície dosky a nástroje pre ESP8266 obsahujú úplne novú sadu gcc, g++ a ďalšie primerane veľké kompilované binárne súbory, takže stiahnutie a inštalácia môže trvať niekoľko minút (archivovaná file je ~110 MB). Po dokončení inštalácie sa vedľa položky zobrazí malý text INSTALLED. Teraz môžete zatvoriť Board Manager
Arduino Example: Žmurkanie
Aby sme sa uistili, že jadro ESP8266 Arduino a NodeMCU sú správne nastavené, nahráme najjednoduchší náčrt zo všetkých – The Blink! Na tento test použijeme LED na doske. Ako už bolo spomenuté v tomto návode, kolík D0 dosky je pripojený k modrej LED na doske a je programovateľný používateľom. Perfektné! Než sa dostaneme k nahrávaniu náčrtu a hraniu s LED, musíme sa uistiť, že doska je v Arduino IDE vybratá správne. Otvorte Arduino IDE a vyberte možnosť NodeMCU 0.9 (ESP-12 Module) v ponuke Arduino IDE > Nástroje > Doska.
Teraz pripojte ESP8266 NodeMCU k počítaču pomocou kábla micro-B USB. Po pripojení dosky by jej mal byť priradený jedinečný port COM. Na počítačoch so systémom Windows to bude niečo ako COM# a na počítačoch Mac/Linux to bude vo forme /dev/tty.usbserial-XXXXXX. Vyberte tento sériový port v ponuke Arduino IDE > Nástroje > Port. Vyberte tiež rýchlosť nahrávania: 115200
POZOR: Väčšiu pozornosť je potrebné venovať výberu dosky, výberu COM portu a výberu rýchlosti nahrávania. Ak sa vám to nepodarí, pri nahrávaní nových náčrtov sa môže zobraziť chyba espcomm_upload_mem.
Keď skončíte, skúste exampnáčrt nižšie.
void setup()
{pinMode(D0, OUTPUT);}void loop()
{digitalWrite(D0, HIGH);
oneskorenie(500);
digitalWrite(D0, LOW);
oneskorenie(500);
Po načítaní kódu LED začne blikať. Možno budete musieť klepnúť na tlačidlo RST, aby váš ESP8266 začal kresliť.
Dokumenty / zdroje
![]() |
ENGINNERS ESP8266 NodeMCU Development Board [pdfPokyny ESP8266 NodeMCU Development Board, ESP8266, NodeMCU Development Board |