Инженер

ENGINNERS ESP8266 NodeMCU Development Board

ENGINNERS-NodeMCU-Хөгжлийн-Удирдах зөвлөл

Технологийн ертөнцөд интернетийн зүйл (IoT) нь трэнд болж байна. Энэ нь бидний ажиллах арга барилыг өөрчилсөн. Физик объектууд болон дижитал ертөнц одоо урьд өмнөхөөсөө илүү холбогдсон байна. Үүнийг санаж, Espressif Systems (Шанхайд төвтэй Хагас дамжуулагч компани) гайхалтай үнээр, Wi-Fi-г дэмждэг ESP8266 микроконтроллерыг гаргажээ! 3 доллараас бага үнээр энэ нь дэлхийн хаана ч байсан аливаа зүйлийг хянаж, хянах боломжтой бөгөөд IoT-ийн ямар ч төсөлд тохиромжтой.

Энэхүү хөгжүүлэлтийн самбар нь ESP-12E модулийг агуулсан ESP8266 чип бүхий Tensilica Xtensa® 32 битийн LX106 RISC микропроцессортой бөгөөд 80-160 МГц давтамжтай тохируулж, RTOS-ийг дэмждэг.

ESP-12E чип

  • Tensilica Xtensa® 32-бит LX106
  • 80-аас 160 МГц цагийн давтамж.
  • 128 кБ дотоод RAM
  • 4MB гадаад флаш
  • 802.11b/g/n Wi-Fi дамжуулагчENGINNERS-NodeMCU-Хөгжлийн-Зөвлөл-1

Мөн 128 KB RAM ба 4 МБ флаш санах ой (программ болон өгөгдөл хадгалахад зориулагдсан) хангалттай том мөрүүдийг бүрдүүлдэг. web хуудсууд, JSON/XML өгөгдөл болон бидний өнөө үед IoT төхөөрөмжид хаядаг бүх зүйл. ESP8266 нь 802.11b/g/n HT40 Wi-Fi дамжуулагчийг нэгтгэсэн тул Wi-Fi сүлжээнд холбогдож, интернетэд холбогдоод зогсохгүй өөрийн сүлжээг бий болгож, бусад төхөөрөмжүүдэд шууд холбогдох боломжийг олгодог. тэр. Энэ нь ESP8266 NodeMCU-г илүү уян хатан болгодог.

Эрчим хүчний шаардлага

Үйл ажиллагааны боть гэжtagESP8266-ийн хүрээ нь 3V-ээс 3.6V хүртэл, самбар нь LDO vol-той ирдэг.tagэзлэхүүнийг хадгалах e зохицуулагчtage тогтвортой 3.3V. Энэ нь 600 мА хүртэл найдвартай нийлүүлэх боломжтой бөгөөд ESP8266 нь RF дамжуулалтын үед 80 мА хүртэл татах үед хангалттай байх ёстой. Зохицуулагчийн гаралтыг мөн самбарын аль нэг талд нь хувааж, 3V3 гэж тэмдэглэсэн байна. Энэ зүү нь гадны бүрэлдэхүүн хэсгүүдийг эрчим хүчээр хангахад ашиглагдаж болно.

Эрчим хүчний шаардлага

  • Үйл ажиллагааны ботьtage: 2.5V - 3.6V
  • Усан дээрх 3.3V 600mA зохицуулагч
  • 80мА ажлын гүйдэл
  • Унтах горимын үед 20 мкАENGINNERS-NodeMCU-Хөгжлийн-Зөвлөл-2

ESP8266 NodeMCU-ийн тэжээлийг MicroB USB холбогчоор хангадаг. Эсвэл, хэрэв та зохицуулалттай 5V voltage эх үүсвэр, VIN зүү нь 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 интерфейсENGINNERS-NodeMCU-Хөгжлийн-Зөвлөл-3

ESP8266-ийн тээглүүрийн олон талт функцийн ачаар (Нэг GPIO зүү дээр олон дагалдах төхөөрөмж олонлогддог). Нэг GPIO зүү нь PWM/UART/SPI үүрэг гүйцэтгэдэг гэсэн үг.

Самбар дээрх унтраалга ба LED үзүүлэлт

ESP8266 NodeMCU нь хоёр товчлууртай. Зүүн дээд буланд байрлах RST гэж тэмдэглэгдсэн нэг нь Reset товчлуур бөгөөд мэдээж ESP8266 чипийг дахин тохируулахад ашиглагддаг. Зүүн доод буланд байгаа өөр FLASH товчлуур нь програм хангамжийг шинэчлэх үед ашигладаг татаж авах товчлуур юм.

Шилжүүлэгч ба үзүүлэлтүүд

  • RST - ESP8266 чипийг дахин тохируулна уу
  • FLASH - Шинэ програм татаж авах
  • Цэнхэр LED - Хэрэглэгчийн програмчлах боломжтойENGINNERS-NodeMCU-Хөгжлийн-Зөвлөл-4

Самбар нь мөн хэрэглэгчийн програмчлах боломжтой LED индикатортой бөгөөд самбарын D0 зүүтэй холбогдсон байна.

Цуврал харилцаа холбоо

Уг самбарт Silicon Labs-ийн CP2102 USB-to-UART Bridge Controller багтсан бөгөөд энэ нь USB дохиог цуваа болгон хувиргаж, таны компьютерт программчилж, ESP8266 чиптэй холбогдох боломжийг олгодог.

Цуврал харилцаа холбоо

  • CP2102 USB-UART хөрвүүлэгч
  • 4.5 Mbps харилцааны хурд
  • Урсгалын хяналтын дэмжлэгENGINNERS-NodeMCU-Хөгжлийн-Зөвлөл-5

Хэрэв таны компьютер дээр CP2102 драйверын хуучин хувилбар суулгасан бол одоо шинэчлэхийг зөвлөж байна.
CP2102 драйверийг шинэчлэх холбоос - https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers

ESP8266 NodeMCU залгуур

ESP8266 NodeMCU нь гадаад ертөнцтэй холбогдох нийт 30 зүүтэй. Холболтууд нь дараах байдалтай байна.ENGINNERS-NodeMCU-Хөгжлийн-Зөвлөл-6

Энгийн байхын тулд бид ижил төстэй функц бүхий тээглүүрүүдийн бүлгүүдийг хийх болно.

Цахилгаан зүү Дөрвөн цахилгаан зүү байдаг, тухайлбал. нэг VIN зүү ба гурван 3.3V зүү. Хэрэв танд зохицуулалттай 8266V хүчдэл байгаа бол VIN зүүг ESP5 болон түүний дагалдах хэрэгслийг шууд нийлүүлэхэд ашиглаж болно.tage эх сурвалж. 3.3V зүү нь самбар дээрх вольтын гаралт юмtage зохицуулагч. Эдгээр тээглүүр нь гадны бүрэлдэхүүн хэсгүүдийг эрчим хүчээр хангахад ашиглаж болно.

GND нь ESP8266 NodeMCU хөгжүүлэлтийн хавтангийн газрын зүү юм. I2C зүү нь таны төсөлд бүх төрлийн I2C мэдрэгч болон дагалдах хэрэгслийг холбоход ашиглагддаг. I2C Master болон I2C Slave хоёулаа дэмжигддэг. I2C интерфэйсийн функцийг програмын дагуу хэрэгжүүлэх боломжтой бөгөөд цагийн давтамж нь дээд тал нь 100 кГц байна. I2C цагийн давтамж нь боол төхөөрөмжийн хамгийн удаан цагийн давтамжаас өндөр байх ёстой гэдгийг тэмдэглэх нь зүйтэй.

GPIO зүү ESP8266 NodeMCU нь 17 GPIO зүүтэй бөгөөд I2C, I2S, UART, PWM, IR алсын удирдлага, LED гэрэл, товчлуур гэх мэт янз бүрийн функцүүдэд програмын дагуу хуваарилагдах боломжтой. Дижитал идэвхжүүлсэн GPIO бүрийг дотоод татах, доош татах, эсвэл өндөр эсэргүүцэлтэй болгож тохируулах боломжтой. Оролт болгон тохируулсан тохиолдолд CPU-ийн тасалдлыг үүсгэхийн тулд үүнийг захын гох эсвэл түвшний гохоор тохируулж болно.

ADC суваг NodeMCU нь 10 битийн нарийвчлалтай SAR ADC-тай суулгагдсан. Хоёр функцийг ADC виз ашиглан хэрэгжүүлж болно. Цахилгаан хангамжийг турших ботьtage-ийн VDD3P3 зүү болон туршилтын оролтын ботьtage-ийн TOUT зүү. Гэсэн хэдий ч тэдгээрийг нэгэн зэрэг хэрэгжүүлэх боломжгүй юм.

UART зүү ESP8266 NodeMCU нь асинхрон холбоог (RS2 ба RS0) хангадаг UART1 ба UART232 гэсэн 485 UART интерфэйстэй бөгөөд 4.5 Mbps хүртэл хурдтай харилцах боломжтой. UART0 (TXD0, RXD0, RST0 & CTS0 тээглүүр)-ийг харилцаа холбоонд ашиглаж болно. Энэ нь шингэний хяналтыг дэмждэг. Гэсэн хэдий ч UART1 (TXD1 зүү) нь зөвхөн өгөгдөл дамжуулах дохиог агуулдаг тул ихэвчлэн бүртгэлийг хэвлэхэд ашигладаг.

SPI зүү ESP8266 нь боол болон мастер горимд хоёр SPI (SPI ба HSPI)-тай. Эдгээр SPI нь дараах ерөнхий зориулалтын SPI функцуудыг дэмждэг:

  • SPI форматын шилжүүлгийн 4 цагийн горим
  • 80 МГц хүртэл, хуваасан цаг нь 80 МГц
  • 64 байт хүртэл FIFO

SDIO зүү ESP8266 нь SD картуудыг шууд интерфэйс хийхэд ашигладаг Secure Digital Input/Output Interface (SDIO)-тай. 4 битийн 25 МГц SDIO v1.1 ба 4 битийн 50 МГц SDIO v2.0 хувилбаруудыг дэмждэг.

PWM зүү Уг самбар нь импульсийн өргөн модуляц (PWM) 4 сувагтай. PWM гаралтыг программын дагуу хэрэгжүүлж, дижитал мотор болон LED жолоодоход ашиглаж болно. PWM давтамжийн хүрээг 1000 мкс-ээс 10000 мкс, өөрөөр хэлбэл 100 Гц-ээс 1 кГц хооронд тохируулж болно.

Хяналтын зүү ESP8266-г удирдахад ашигладаг. Эдгээр зүү нь Chip Enable pin (EN), Reset pin (RST) болон WAKE зүү орно.

  • EN зүү – EN зүүг ӨНДӨР татах үед ESP8266 чип идэвхждэг. БАГА татах үед чип нь хамгийн бага хүчээр ажилладаг.
  • RST зүү – RST зүү нь ESP8266 чипийг дахин тохируулахад ашиглагддаг.
  • WAKE зүү – Сэрээх зүү нь чипийг гүн нойрноос сэрээхэд ашиглагддаг.

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 үйлдлийн систем дээр 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.jsonENGINNERS-NodeMCU-Хөгжлийн-Зөвлөл-7

OK дарна уу. Дараа нь Хэрэгслүүд > Самбарууд > Самбаруудын менежер рүү очиж Удирдах зөвлөлийн менежер рүү очно уу. Стандарт Arduino самбараас гадна хэд хэдэн шинэ оруулга байх ёстой. esp8266 гэж бичиж хайлтаа шүүнэ үү. Энэ оруулга дээр дараад Суулгахыг сонгоно уу.ENGINNERS-NodeMCU-Хөгжлийн-Зөвлөл-8

ESP8266-д зориулсан самбарын тодорхойлолт, хэрэгслүүд нь gcc, g++ болон бусад боломжийн том, эмхэтгэсэн хоёртын файлуудын цоо шинэ багцыг агуулдаг тул татан авч суулгахад хэдэн минут зарцуулагдана (архивлагдсан file ~110MB). Суулгац дууссаны дараа бичилтийн хажууд INSTALLED гэсэн жижиг бичвэр гарч ирнэ. Та одоо Удирдах зөвлөлийн менежерийг хааж болно

Arduino Example: анивчих

ESP8266 Arduino цөм болон NodeMCU зөв тохируулагдсан эсэхийг шалгахын тулд бид хамгийн энгийн ноорог болох The Blink-ийг байршуулах болно! Энэ туршилтанд бид самбар дээрх LED-г ашиглана. Энэ зааварт өмнө дурдсанчлан самбарын D0 зүү нь цэнхэр LED-д холбогдсон бөгөөд хэрэглэгч програмчлах боломжтой. Төгс! Ноорог байршуулж, LED-ээр тоглохын өмнө бид самбарыг Arduino IDE дээр зөв сонгосон эсэхийг шалгах хэрэгтэй. Arduino IDE-г нээгээд Arduino IDE > Хэрэгсэл > Самбар цэснээс NodeMCU 0.9 (ESP-12 Module) сонголтыг сонгоно уу.ENGINNERS-NodeMCU-Хөгжлийн-Зөвлөл-9

Одоо ESP8266 NodeMCU-ээ micro-B USB кабелиар дамжуулан компьютертээ холбоно уу. Самбарыг залгасны дараа түүнд өвөрмөц COM порт хуваарилагдах ёстой. Windows машинууд дээр энэ нь COM# шиг байх ба Mac/Linux компьютер дээр /dev/tty.usbserial-XXXXXX хэлбэрээр ирдэг. Arduino IDE > Tools > Port цэсний доор энэ цуваа портыг сонгоно уу. Мөн байршуулах хурдыг сонгоно уу: 115200ENGINNERS-NodeMCU-Хөгжлийн-Зөвлөл-10

Анхааруулга: Самбарыг сонгох, COM портыг сонгох, Байршуулах хурдыг сонгоход илүү их анхаарал хандуулах хэрэгтэй. Хэрэв та шинэ ноорог байршуулж чадахгүй бол espcomm_upload_mem алдаа гарч болзошгүй.

Хийж дууссаныхаа дараа эксийг туршаад үзээрэйampДоорх ноорог.

хүчингүй тохиргоо()
{pinMode(D0, OUTPUT);} хүчингүй давталт()
{digitalWrite(D0, HIGH);
саатал(500);
digitalWrite(D0, БАГА);
саатал(500);
Кодыг байршуулсны дараа LED анивчих болно. Та ноорог зурж эхлэхийн тулд ESP8266-г авахын тулд RST товчийг дарах шаардлагатай байж магадгүй.ENGINNERS-NodeMCU-Хөгжлийн-Зөвлөл-11

Баримт бичиг / нөөц

ENGINNERS ESP8266 NodeMCU Development Board [pdf] Заавар
ESP8266 NodeMCU Development Board, ESP8266, NodeMCU Development Board

Лавлагаа

Сэтгэгдэл үлдээгээрэй

Таны имэйл хаягийг нийтлэхгүй. Шаардлагатай талбаруудыг тэмдэглэсэн *