ENGINNERS ESP8266 NodeMCU өнүктүрүү кеңеши
Нерселер Интернети (IoT) технология дүйнөсүндө тенденциялуу тармак болуп калды. Бул биздин иштөө ыкмасын өзгөрттү. Физикалык объекттер жана санариптик дүйнө азыр болуп көрбөгөндөй туташты. Ушуну эске алып, Espressif Systems (Шанхайда жайгашкан Semiconductor компаниясы) укмуштуудай баада WiFi иштетилген микроконтроллерди - ESP8266 чыгарды! 3 доллардан азыраак акчага ал дүйнөнүн каалаган жеринен нерселерди көзөмөлдөп жана көзөмөлдөй алат – дээрлик бардык IoT долбоорлору үчүн идеалдуу.
Иштеп чыгуу тактасы ESP-12E модулун жабдып, ESP8266 чипти камтыган Tensilica Xtensa® 32-бит LX106 RISC микропроцессоруна ээ, ал 80-160 МГц жөнгө салынуучу тактык жыштыкта иштейт жана RTOS колдойт.
ESP-12E чип
- Tensilica Xtensa® 32-бит LX106
- 80 - 160 MHz Clock Freq.
- 128 кБ ички оперативдик эс
- 4МБ тышкы жарк
- 802.11b/g/n Wi-Fi трансивери
Ошондой эле 128 КБ оперативдүү жана 4 МБ Flash эс тутуму (программа жана маалыматтарды сактоо үчүн) чоң саптарды түзүүгө жетиштүү. web барактар, JSON/XML маалыматтары жана биз азыркы учурда IoT түзмөктөрүнө ыргыткан нерселердин бардыгы. ESP8266 802.11b/g/n HT40 Wi-Fi трансиверин бириктирет, ошондуктан ал WiFi тармагына туташып, Интернет менен иштеше албайт, ошондой эле башка түзмөктөргө түздөн-түз туташуу мүмкүнчүлүгүн берип, өзүнүн тармагын түзө алат. ал. Бул ESP8266 NodeMCU ого бетер ар тараптуу кылат.
Power талап
Операциялык том катарыtagESP8266 диапазону 3Vдан 3.6Vга чейин, такта LDO көлөмү менен келетtagэ жөнгө салуучу том сактоо үчүнtag3.3V боюнча туруктуу. Ал 600мАга чейин ишенимдүү камсыздай алат, бул ESP8266 RF берүү учурунда 80мАга чейин тартканда жетиштүү болушу керек. Жөнгө салгычтын чыгышы да тактанын бир тарабына бөлүнүп, 3V3 деп белгиленген. Бул пин тышкы компоненттерди кубат менен камсыз кылуу үчүн колдонулушу мүмкүн.
Power талап
- Operating Voltagд: 2.5V 3.6V
- Борттогу 3.3V 600mA жөнгө салгыч
- 80мА иштөө тогу
- Уйку режиминде 20 мкА
ESP8266 NodeMCU кубаты борттогу MicroB USB туташтыргычы аркылуу берилет. Же болбосо, сизде жөнгө салынган 5V волtage булагы, VIN PIN түздөн-түз ESP8266 жана анын перифериялык камсыздоо үчүн колдонулушу мүмкүн.
Эскертүү: ESP8266 байланыш үчүн 3.3V электр менен жабдууну жана 3.3V логикалык деңгээлди талап кылат. GPIO пиндери 5V-толеранттуу эмес! Эгерде сиз тактаны 5V (же андан жогору) компоненттери менен интерфейске келтиргиңиз келсе, анда бир аз деңгээлди алмаштыруу керек болот.
Перифериялык түзүлүштөр жана киргизүү/чыгаруу
ESP8266 NodeMCU иштеп чыгуу тактасынын эки тарабындагы пин баштарына чейин сынган жалпы 17 GPIO пинге ээ. Бул төөнөгүчтөр перифериялык милдеттердин бардык түрлөрүнө дайындалышы мүмкүн, анын ичинде:
- ADC каналы – 10 биттик ADC каналы.
- UART интерфейси - UART интерфейси кодду сериялык жүктөө үчүн колдонулат.
- PWM чыгуулары - LEDди өчүрүү же моторлорду башкаруу үчүн PWM пиндери.
- SPI, I2C & I2S интерфейси – SPI жана I2C интерфейси ар кандай сенсорлорду жана перифериялык түзүлүштөрдү бириктирүү үчүн.
- I2S интерфейси - I2S интерфейси, эгер сиз долбооруңузга үн кошкуңуз келсе.
Multiplexed I/Os
- 1 ADC каналдары
- 2 UART интерфейси
- 4 PWM чыгышы
- SPI, I2C жана I2S интерфейси
ESP8266 пин мультиплекстөө өзгөчөлүгүнүн аркасында (бир GPIO пинге мультиплекстелген бир нече перифериялык түзүлүштөр). Бир GPIO пин PWM/UART/SPI катары иштей алат дегенди билдирет.
Борттогу өчүргүчтөр жана LED көрсөткүч
ESP8266 NodeMCU эки баскычты камтыйт. Үстүнкү сол бурчта жайгашкан RST деп белгиленген бири - "Калпына келтирүү" баскычы, албетте, ESP8266 чипти баштапкы абалга келтирүү үчүн колдонулат. Төмөнкү сол бурчтагы башка FLASH баскычы микропрограмманы жаңыртуу учурунда колдонулган жүктөө баскычы.
Которгучтар жана көрсөткүчтөр
- RST - ESP8266 чипти баштапкы абалга келтирүү
- FLASH – Жаңы программаларды жүктөө
- Көк LED - Колдонуучу программалоочу
Башкармада ошондой эле колдонуучу программалоочу жана тактанын D0 пинине туташтырылган LED индикатору бар.
Сериялык байланыш
Тактада Silicon Labs фирмасынын CP2102 USB-to-UART көпүрө контроллери камтылган, ал USB сигналын серияга айлантат жана компьютериңизге ESP8266 чипти программалоого жана байланышууга мүмкүндүк берет.
Сериялык байланыш
- CP2102 USB-UART конвертери
- 4.5 Мбит/сек байланыш ылдамдыгы
- Flow Control колдоо
Эгер сиздин компьютериңизде CP2102 драйверинин эски версиясы орнотулган болсо, биз азыр жаңыртууну сунуштайбыз.
CP2102 драйверин жаңыртуу үчүн шилтеме - https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
ESP8266 NodeMCU Pinout
ESP8266 NodeMCU аны тышкы дүйнө менен байланыштырган жалпы 30 пинге ээ. Байланыштар төмөнкүдөй:
Жөнөкөйлүк үчүн, биз окшош функциялары бар төөнөгүчтөрдүн топторун жасайбыз.
Power Pins Төрт кубаттуу төөнөгүч бар, башкача айтканда. бир VIN пин жана үч 3.3V пин. VIN пинди ESP8266 жана анын перифериялык түзүлүштөрүн түздөн-түз камсыз кылуу үчүн колдонсо болот, эгерде сизде жөнгө салынган 5V vol.tage булагы. 3.3V пиндер борттогу томдун чыгышы болуп саналатtagд жөнгө салуучу. Бул төөнөгүчтөрдү тышкы компоненттерди энергия менен камсыз кылуу үчүн колдонсо болот.
GND - бул ESP8266 NodeMCU өнүктүрүү тактасынын жер пин. I2C Pins долбооруңузга ар кандай I2C сенсорлорун жана перифериялык түзүлүштөрдү туташтыруу үчүн колдонулат. I2C Master жана I2C Slave экөө тең колдоого алынат. I2C интерфейсинин функционалдуулугу программалык түрдө ишке ашырылышы мүмкүн жана тактык жыштыгы максималдуу түрдө 100 кГц. Белгилей кетсек, I2C тактык жыштыгы кул аппаратынын эң жай тактык жыштыгынан жогору болушу керек.
GPIO Pins ESP8266 NodeMCU программалык түрдө I17C, I2S, UART, PWM, IR Remote Control, LED Light жана Button сыяктуу ар кандай функцияларга ыйгарылган 2 GPIO пинге ээ. Ар бир санариптик иштетилген GPIO ички тартылуу же ылдый тартуу үчүн конфигурацияланышы мүмкүн, же жогорку импеданска орнотулат. Киргизүү катары конфигурацияланганда, ал CPU үзгүлтүктөрүн түзүү үчүн чет-триггерге же деңгээл-триггерге да коюлушу мүмкүн.
ADC каналы NodeMCU 10 биттик SAR ADC менен камтылган. Эки функцияны ADC аркылуу ишке ашырууга болот, башкача айтканда. Электр менен камсыздоону сынооtage of VDD3P3 пин жана тестирлөө киргизүү томtagTOUT пининин e. Бирок, аларды бир эле учурда ишке ашыруу мүмкүн эмес.
UART Pins ESP8266 NodeMCU 2 UART интерфейсине ээ, башкача айтканда, асинхрондук байланышты (RS0 жана RS1) камсыз кылган UART232 жана UART485 жана 4.5 Мбит/сек ылдамдыкта байланыша алат. UART0 (TXD0, RXD0, RST0 & CTS0 пиндери) байланыш үчүн колдонулушу мүмкүн. Бул суюктук башкарууну колдойт. Бирок, UART1 (TXD1 пин) бир гана маалымат берүү сигналын өзгөчөлүктөрү, ошондуктан, ал адатта журналды басып чыгаруу үчүн колдонулат.
SPI Pins ESP8266 кул жана мастер режимдеринде эки SPI (SPI жана HSPI) өзгөчөлүктөрү. Бул SPIлер ошондой эле төмөнкү жалпы максаттагы SPI өзгөчөлүктөрүн колдойт:
- SPI форматын өткөрүп берүүнүн 4 убакыт режими
- 80 МГц чейин жана 80 МГц бөлүнгөн сааттар
- 64 байт FIFO чейин
SDIO Pins ESP8266 SD карталарын түздөн-түз интерфейстөө үчүн колдонулган Коопсуз Санарип Киргизүү/Чыгуу Interface (SDIO) өзгөчөлүктөрү. 4-бит 25 MHz SDIO v1.1 жана 4-бит 50 MHz SDIO v2.0 колдоого алынат.
PWM Pins Тактада импульстун кеңдик модуляциясынын (PWM) 4 каналы бар. PWM чыгаруу программалык түрдө ишке ашырылышы мүмкүн жана санариптик кыймылдаткычтарды жана диоддорду айдоо үчүн колдонулушу мүмкүн. PWM жыштык диапазону 1000 μs дан 10000 μs ге чейин, башкача айтканда, 100 Гц жана 1 кГц ортосунда жөнгө салынат.
Control Pins ESP8266 башкаруу үчүн колдонулат. Бул пиндер Чипти иштетүү пин (EN), баштапкы абалга келтирүү пин (RST) жана WAKE пинди камтыйт.
- EN пин - ESP8266 чип EN пин ЖОГОРУ тартылганда иштетилет. ТӨМӨН тартканда чип минималдуу кубаттуулукта иштейт.
- RST пин - RST пин ESP8266 чипти баштапкы абалга келтирүү үчүн колдонулат.
- WAKE pin - Wake pin чипти терең уйкудан ойготуу үчүн колдонулат.
ESP8266 өнүктүрүү платформалары
Эми кызыктуу нерселерге өтөлү! ESP8266 программасын программалоо үчүн жабдылган ар түрдүү өнүктүрүү платформалары бар. Сиз Espruino – JavaScript SDK жана Node.js менен тыгыз окшоштурулган микропрограмма менен бара аласыз же Mongoose OS – IoT түзмөктөрү үчүн операциялык тутум (Espressif Systems жана Google Cloud IoT тарабынан сунушталган платформа) же Espressif тарабынан берилген программалык камсыздоону иштеп чыгуу комплектин (SDK) колдонсоңуз болот. же WiKiPediaда тизмеленген платформалардын бири. Бактыга жараша, укмуштуудай ESP8266 коомчулугу Arduino кошумчасын түзүү менен IDE тандоосун бир кадам алдыга жылдырды. Эгер сиз ESP8266 программасын жаңыдан баштап жатсаңыз, бул биз баштоону сунуш кылган чөйрө жана биз бул окуу куралында документтештире турган чөйрө.
Arduino үчүн бул ESP8266 кошумчасы Иван Грохотковдун жана ESP8266 жамаатынын калган кереметтүү иштерине негизделген. Көбүрөөк маалымат алуу үчүн ESP8266 Arduino GitHub репозиторийсин текшериңиз.
Windows OS боюнча ESP8266 Core орнотуу
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
OK басыңыз. Андан кийин Куралдар > Тактайлар > Башкаргычка өтүү менен Башкармалык Башкаргычка өтүңүз. Стандарттык Arduino такталарына кошумча бир нече жаңы жазуулар болушу керек. esp8266 терүү менен издөөңүздү чыпкалаңыз. Ошол жазууну чыкылдатып, орнотууну тандаңыз.
ESP8266 тактасынын аныктамалары жана куралдары gcc, g++ жана башка акылга сыярлык чоң, компиляцияланган экилик файлдардын бүтүндөй жаңы топтомун камтыйт, андыктан жүктөп алуу жана орнотуу үчүн бир нече мүнөт талап кылынышы мүмкүн (архивделген file ~110MB). Орнотуу аяктагандан кийин, жазуунун жанында кичинекей ОРНОТУЛГАН текст пайда болот. Эми сиз Башкармалыктын менеджерин жаба аласыз
Arduino Example: Blink
ESP8266 Arduino өзөгү жана NodeMCU туура орнотулганына ынануу үчүн, биз эң жөнөкөй эскизди жүктөйбүз – The Blink! Бул сыноо үчүн борттогу LEDди колдонобуз. Бул окуу куралында мурда айтылгандай, тактанын D0 пин борттогу Blue LEDге туташтырылган жана колдонуучу программалоочу. Мыкты! Эскизди жүктөө жана LED менен ойноодон мурун, тактанын Arduino IDEде туура тандалганын текшеришибиз керек. Arduino IDE-ди ачыңыз жана Arduino IDE > Куралдар > Башкарма менюсунда NodeMCU 0.9 (ESP-12 модулу) опциясын тандаңыз.
Эми ESP8266 NodeMCUңызды микро-B USB кабели аркылуу компьютериңизге сайыңыз. Тактага сайылгандан кийин, ага уникалдуу COM порту дайындалышы керек. Windows машиналарында бул COM# сыяктуу болот, ал эми Mac/Linux компьютерлеринде ал /dev/tty.usbserial-XXXXXX түрүндө келет. Arduino IDE > Куралдар > Порт менюсунда бул сериялык портту тандаңыз. Ошондой эле жүктөө ылдамдыгын тандаңыз: 115200
Эскертүү: Тактаны тандоого, COM портун тандоого жана Жүктөө ылдамдыгын тандоого көбүрөөк көңүл буруу керек. Жаңы эскиздерди жүктөөдө espcomm_upload_mem катасы келип чыгышы мүмкүн, эгер анте албасаңыз.
Бүткөндөн кийин, мурункуну сынап көрүңүзample эскиз төмөндө.
жараксыз орнотуу()
{pinMode(D0, OUTPUT);}void цикли()
{digitalWrite(D0, HIGH);
delay(500);
digitalWrite(D0, LOW);
delay(500);
Код жүктөлгөндөн кийин, LED өчүп баштайт. Эскизди иштетүү үчүн ESP8266ны алуу үчүн RST баскычын басышыңыз керек болушу мүмкүн.
Документтер / Ресурстар
![]() |
ENGINNERS ESP8266 NodeMCU өнүктүрүү кеңеши [pdf] Instructions ESP8266 NodeMCU өнүктүрүү кеңеши, ESP8266, NodeMCU өнүктүрүү кеңеши |