ENGINNERS ESP8266 NodeMCU Development Board
Интернетот на нештата (IoT) е поле во тренд во светот на технологијата. Тоа го промени начинот на кој работиме. Физичките објекти и дигиталниот свет се поврзани сега повеќе од кога било. Имајќи го ова на ум, Espressif Systems (компанија за полупроводници со седиште во Шангај) објави пресладок микроконтролер со WiFi-овозможен со големина на залак - ESP8266, по неверојатна цена! За помалку од 3 долари, може да ги следи и контролира работите од каде било во светот - совршен за речиси секој проект за IoT.
Развојната плочка го опремува ESP-12E модулот кој содржи чип ESP8266 со Tensilica Xtensa® 32-битен LX106 RISC микропроцесор кој работи на прилагодлива фреквенција на часовникот од 80 до 160 MHz и поддржува RTOS.
Чип ESP-12E
- Tensilica Xtensa® 32-битен LX106
- Фреквенција на часовник од 80 до 160 MHz.
- 128 kB внатрешна RAM меморија
- 4 MB надворешен блиц
- 802.11b/g/n Wi-Fi трансивер
Има и 128 KB RAM и 4 MB флеш меморија (за складирање програми и податоци) доволно за да се справите со големите низи што го сочинуваат web страници, JSON/XML податоци и сè што фрламе на уредите за IoT во денешно време. ESP8266 интегрира 802.11b/g/n HT40 Wi-Fi трансивер, така што не само што може да се поврзе на Wi-Fi мрежа и да комуницира со Интернет, туку може да постави и сопствена мрежа, дозволувајќи им на другите уреди директно да се поврзат со тоа. Ова го прави ESP8266 NodeMCU уште поразновиден.
Потребна моќност
Како што оперативниот волtagопсегот на ESP8266 е од 3V до 3.6V, плочата доаѓа со LDO voltagе регулатор за да се задржи волtagе стабилно на 3.3V. Може со сигурност да напојува до 600 mA, што би требало да биде повеќе од доволно кога ESP8266 влече дури 80 mA за време на RF преносите. Излезот на регулаторот исто така се пробива на една од страните на плочата и е означен како 3V3. Овој пин може да се користи за напојување на надворешните компоненти.
Потребна моќност
- Оперативен волtage: 2.5V до 3.6V
- Вграден регулатор 3.3V 600mA
- Работна струја од 80 mA
- 20 μA за време на режимот на спиење
Напојувањето на ESP8266 NodeMCU се снабдува преку вградениот MicroB USB конектор. Алтернативно, ако имате регулирано 5V волtagе извор, пинот VIN може да се користи за директно снабдување на ESP8266 и неговите периферни уреди.
Предупредување: ESP8266 бара напојување од 3.3V и логички нивоа од 3.3V за комуникација. GPIO пиновите не се толерантни на 5V! Ако сакате да ја поврзете плочата со компоненти од 5V (или повисоки), ќе треба да извршите извесна промена на нивото.
Периферни уреди и В/И
ESP8266 NodeMCU има вкупно 17 GPIO пинови искршени до заглавијата на пиновите од двете страни на развојната табла. Овие пинови може да се доделат на сите видови периферни задачи, вклучувајќи:
- ADC канал – 10-битен ADC канал.
- UART интерфејс – UART интерфејсот се користи за сериско вчитување на кодот.
- PWM излези – PWM пинови за затемнување на LED диоди или контролни мотори.
- Интерфејс SPI, I2C и I2S – интерфејс SPI и I2C за поврзување на сите видови сензори и периферни уреди.
- I2S интерфејс – I2S интерфејс ако сакате да додадете звук во вашиот проект.
Мултиплексирани I/Os
- 1 ADC канали
- 2 UART интерфејси
- 4 PWM излези
- Интерфејс SPI, I2C и I2S
Благодарение на функцијата за мултиплексирање на пиновите на ESP8266 (повеќе периферни уреди мултиплексирани на еден GPIO пин). Што значи дека еден GPIO пин може да дејствува како PWM/UART/SPI.
Вградени прекинувачи и LED индикатор
ESP8266 NodeMCU има две копчиња. Едно означено како RST кое се наоѓа во горниот лев агол е копчето Reset, кое се разбира се користи за ресетирање на чипот ESP8266. Другото копче FLASH на долниот лев агол е копчето за преземање што се користи при надградба на фирмверот.
Прекинувачи и индикатори
- RST – Ресетирајте го чипот ESP8266
- FLASH – Преземете нови програми
- Сина ЛЕР - програмабилна од корисникот
Плочката има и LED индикатор кој може да се програмира од корисникот и е поврзан со пинот D0 на плочата.
Сериска комуникација
Плочката вклучува CP2102 USB-to-UART Bridge Controller од Silicon Labs, кој го конвертира USB-сигналот во сериски и му овозможува на вашиот компјутер да програмира и да комуницира со чипот ESP8266.
Сериска комуникација
- CP2102 USB-во-UART конвертор
- Брзина на комуникација од 4.5 Mbps
- Поддршка за контрола на проток
Ако имате инсталирано постара верзија на двигателот CP2102 на вашиот компјутер, препорачуваме да го надградите веднаш.
Линк за надградба на драјверот CP2102 – https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
ESP8266 NodeMCU Pinout
ESP8266 NodeMCU има вкупно 30 пинови кои го поврзуваат со надворешниот свет. Врските се како што следува:
Заради едноставност, ќе направиме групи на иглички со слични функционалности.
Моќни пинови Има четири напојувачки пинови т.е. еден VIN пин и три пина од 3.3V. VIN пинот може да се користи за директно снабдување со ESP8266 и неговите периферни уреди, доколку имате регулирана јачина од 5Vtagе извор. Пиновите од 3.3 V се излез од вградената томtagе регулатор. Овие пинови може да се користат за напојување на надворешните компоненти.
GND е заземјување на плочката за развој на ESP8266 NodeMCU. I2C пиновите се користат за приклучување на сите видови I2C сензори и периферни уреди во вашиот проект. И I2C Master и I2C Slave се поддржани. Функционалноста на интерфејсот I2C може да се реализира програмски, а фреквенцијата на часовникот е максимум 100 kHz. Треба да се забележи дека фреквенцијата на часовникот I2C треба да биде повисока од најбавната фреквенција на часовникот на slave уредот.
GPIO пинови ESP8266 NodeMCU има 17 GPIO пинови кои може да се доделат на различни функции како што се I2C, I2S, UART, PWM, IR далечински управувач, LED светло и копче програмски. Секој дигитален овозможен GPIO може да се конфигурира за внатрешно повлекување или спуштање, или поставено на висока импеданса. Кога е конфигуриран како влез, може да се постави и на edge-trigger или level-trigger за генерирање на прекини на процесорот.
Канал ADC NodeMCU е вграден со 10-битен прецизен SAR ADC. Двете функции може да се имплементираат со користење на ADC т.е. Тестирање на напојување волtage на VDD3P3 пин и влез за тестирање voltage од пинот TOUT. Сепак, тие не можат да се имплементираат во исто време.
UART пинови ESP8266 NodeMCU има 2 UART интерфејси, односно UART0 и UART1, кои обезбедуваат асинхрона комуникација (RS232 и RS485), а можат да комуницираат до 4.5 Mbps. UART0 (TXD0, RXD0, RST0 и CTS0 пинови) може да се користи за комуникација. Поддржува контрола на течности. Сепак, UART1 (TXD1 пин) има само сигнал за пренос на податоци, така што обично се користи за печатење на дневник.
SPI иглички ESP8266 има два SPI (SPI и HSPI) во slave и master режими. Овие SPI исто така ги поддржуваат следните SPI карактеристики за општа намена:
- 4 режими на тајминг на пренос на формат SPI
- До 80 MHz и поделени часовници од 80 MHz
- До 64-бајти FIFO
SDIO иглички ESP8266 располага со безбеден дигитален влез/излезен интерфејс (SDIO) кој се користи за директно поврзување со SD-картичките. Поддржани се 4-битни 25 MHz SDIO v1.1 и 4-битни 50 MHz SDIO v2.0.
PWM пинови Плочката има 4 канали на модулација на ширина на пулсот (PWM). Излезот PWM може да се имплементира програмски и да се користи за возење дигитални мотори и LED диоди. Фреквентниот опсег на PWM е прилагодлив од 1000 μs до 10000 μs, т.е. помеѓу 100 Hz и 1 kHz.
Контролни пинови се користат за контрола на ESP8266. Овие пинови вклучуваат пин за овозможување чип (EN), пин за ресетирање (RST) и пин WAKE.
- EN пин – чипот ESP8266 е овозможен кога пинот EN е повлечен НАВИСОКО. Кога ќе се повлече НИСКО, чипот работи со минимална моќност.
- RST пин – RST пинот се користи за ресетирање на чипот ESP8266.
- WAKE пин – Wake pin се користи за будење на чипот од длабок сон.
ESP8266 Развојни платформи
Сега, да преминеме на интересните работи! Постојат различни платформи за развој кои можат да бидат опремени за програмирање на ESP8266. Можете да одите со Espruino – JavaScript SDK и фирмвер кој блиску го имитира Node.js, или да користите Mongoose OS – оперативен систем за IoT уреди (препорачана платформа од Espressif Systems и Google Cloud IoT) или да користите комплет за развој на софтвер (SDK) обезбеден од Espressif или една од платформите наведени на Википедија. За среќа, неверојатната заедница ESP8266 го однесе изборот на IDE чекор понапред со создавање на додаток на Arduino. Ако штотуку започнавте со програмирање на ESP8266, ова е опкружувањето што го препорачуваме за почеток и она што ќе го документираме во ова упатство.
Овој додаток ESP8266 за Arduino е заснован на неверојатната работа на Иван Грокотков и остатокот од заедницата ESP8266. Проверете го складиштето ESP8266 Arduino GitHub за повеќе информации.
Инсталирање на јадрото ESP8266 на Windows OS
Ајде да продолжиме со инсталирање на ESP8266 Arduino јадрото. Првото нешто е инсталирањето на најновиот Arduino IDE (Arduino 1.6.4 или повисоко) на вашиот компјутер. Ако го немате, препорачуваме да го надградите сега.
Линк за Arduino IDE - https://www.arduino.cc/en/software
За почеток, ќе треба да го ажурираме менаџерот на одборот со обичај URL. Отворете го Arduino IDE и одете на File > Преференци. Потоа, копирајте подолу URL во Дополнителниот менаџер на одборот URLполето за текст што се наоѓа на дното на прозорецот: http://arduino.esp8266.com/stable/package_esp8266com_index.json
Притиснете ОК. Потоа одете до Управувачот на одборот со одење до Алатки > Табли > Менаџер на табли. Треба да има неколку нови записи покрај стандардните Arduino табли. Филтрирајте го вашето пребарување со пишување esp8266. Кликнете на тој запис и изберете Инсталирај.
Дефинициите и алатките на таблата за ESP8266 вклучуваат сосема нов сет на gcc, g++ и други разумно големи, компајлирани бинарни датотеки, така што може да потрае неколку минути за преземање и инсталирање (архивирана file е ~ 110 MB). Откако ќе заврши инсталацијата, до записот ќе се појави мал ИНСТАЛИРАН текст. Сега можете да го затворите менаџерот на одборот
Arduino Exampле: Трепкај
За да се увериме дека јадрото ESP8266 Arduino и NodeMCU се правилно поставени, ќе ја поставиме наједноставната скица од сите - The Blink! За овој тест ќе ја користиме вградената LED диода. Како што беше споменато претходно во ова упатство, иглата D0 на плочката е поврзана со сината LED на плочата и може да се програмира од корисникот. Совршено! Пред да стигнеме до поставување скица и играње со LED, треба да се увериме дека таблата е правилно избрана во Arduino IDE. Отворете Arduino IDE и изберете ја опцијата NodeMCU 0.9 (ESP-12 Module) во менито Arduino IDE > Tools > Board.
Сега, приклучете го вашиот ESP8266 NodeMCU на вашиот компјутер преку микро-B USB-кабел. Откако плочката ќе се вклучи, треба да и се додели единствена COM порта. На Windows машините, ова ќе биде нешто како COM#, а на компјутерите Mac/Linux ќе доаѓа во форма на /dev/tty.usbserial-XXXXXX. Изберете ја оваа сериска порта во менито Arduino IDE > Tools > Port. Изберете ја и брзината на прикачување: 115200
Предупредување: Треба да се посвети поголемо внимание на изборот на табла, изборот на COM порта и изборот на брзина на испраќање. Може да добиете грешка espcomm_upload_mem додека поставувате нови скици, доколку не успеете да го направите тоа.
Откако ќе завршите, обидете се со ексampскица подолу.
Поставување празнина ()
{pinMode(D0, OUTPUT);}void loop()
{digitalWrite(D0, HIGH);
доцнење (500);
digitalWrite(D0, LOW);
доцнење (500);
Штом ќе се постави кодот, LED ќе почне да трепка. Можеби ќе треба да го допрете копчето RST за да го добиете вашиот ESP8266 да започне да ја извршува скицата.
Документи / ресурси
![]() |
ENGINNERS ESP8266 NodeMCU Development Board [pdf] Инструкции Одбор за развој на NodeMCU ESP8266, ESP8266, Одбор за развој на NodeMCU |