NodeMCU
![]() NodeMCU ДЕВКИТ 1.0 | |
Разработчик | Сообщество открытого исходного кода ESP8266 |
---|---|
Тип | Одноплатный микроконтроллер |
Начальная цена | $5 |
Процессор | ЭСП8266 [1] (LX106 [2] ) |
Память | 128 КБ |
Хранилище | 4 МБайт [3] |
Власть | USB |
Веб-сайт | www |
NodeMCU — это недорогая IoT- платформа с открытым исходным кодом. [4] [5] Первоначально он включал прошивку , работающую на ESP8266 Wi-Fi SoC от Espressif Systems, и аппаратное обеспечение, основанное на модуле ESP-12. [6] [7] Позже была добавлена поддержка ESP32 32-битного MCU .
Обзор [ править ]
NodeMCU — это прошивка с открытым исходным кодом, для которой макетных доступны проекты плат с открытым исходным кодом. Название «NodeMCU» объединяет « узел » и «MCU» ( микроконтроллер ). [8] Строго говоря, термин «NodeMCU» относится к прошивке, а не к связанным с ней комплектам разработки . [ нужна ссылка ]
И прошивка, и макетная плата имеют открытый исходный код . [8]
Прошивка использует язык сценариев Lua . Прошивка основана на проекте eLua и построена на Espressif Non-OS SDK для ESP8266. Он использует множество проектов с открытым исходным кодом, таких как lua-cjson. [9] и СПИФФС . [10] Из-за ограниченности ресурсов пользователям необходимо выбирать модули, соответствующие их проекту, и создавать встроенное ПО, адаптированное к их потребностям. поддержка 32-битного ESP32 Также реализована .
Обычно используемое оборудование для прототипирования представляет собой печатную плату, функционирующую как двойной линейный корпус (DIP), который объединяет USB-контроллер с меньшей платой для поверхностного монтажа, содержащей MCU и антенну. Выбор формата DIP позволяет легко создавать прототипы на макетных платах . Первоначально конструкция была основана на модуле ESP-12 ESP8266 , который представляет собой SoC Wi-Fi, интегрированный с ядром Tensilica Xtensa LX106, широко используемым в приложениях IoT (см. связанные проекты ).
Типы [ править ]
Существует две доступные версии NodeMCU: версия 0.9 и 1.0, где версия 0.9 содержит ESP-12 , а версия 1.0 содержит ESP-12E , где E означает «Расширенный». [11]
История [ править ]
NodeMCU был создан вскоре после ESP8266 выхода . 30 декабря 2013 г. Espressif Systems [6] началось производство ESP8266. [12] NodeMCU стартовал 13 октября 2014 года, когда Хонг разместил первый файл прошивки nodemcu на GitHub. [13] Два месяца спустя проект расширился и включил в себя открытую аппаратную платформу, когда разработчик Хуан Р. загрузил gerber- файл платы ESP8266 под названием Devkit v0.9. [14] Позже в том же месяце Туан ПМ перенес MQTT клиентскую библиотеку из Contiki на платформу ESP8266 SoC. [15] и посвятил себя проекту NodeMCU, то NodeMCU смог поддерживать протокол MQTT IoT, используя Lua для доступа к брокеру MQTT. Еще одно важное обновление было сделано 30 января 2015 года, когда Devsaurus портировал u8glib. [16] в проект NodeMCU, [17] позволяя NodeMCU легко управлять ЖК-дисплеями, экранами, OLED и даже VGA-дисплеями.
Летом 2015 года первоначальные создатели отказались от проекта прошивки, и его взяла на себя группа независимых разработчиков. К лету 2016 года в состав NodeMCU входило более 40 различных модулей.
Связанные проекты [ править ]
Ядро Arduino ESP8266 [ править ]
Когда Arduino.cc начала разработку новых плат MCU на базе процессоров, отличных от AVR, таких как микроконтроллер ARM/SAM, используемый в Arduino Due, им потребовалось модифицировать Arduino IDE , чтобы было относительно легко изменить IDE для поддержки альтернативных цепочек инструментов, позволяющих Arduino C/C++ будет скомпилирован для этих новых процессоров. Они сделали это, представив Board Manager и SAM Core. «Ядро» — это набор программных компонентов, необходимых менеджеру платы и среде разработки Arduino для компиляции исходного файла Arduino C/C++ для машинного языка целевого микроконтроллера. Некоторые энтузиасты ESP8266 разработали ядро Arduino для SoC ESP8266 WiFi, обычно называемое «Ядро ESP8266 для Arduino IDE». [18] Она стала ведущей платформой для разработки программного обеспечения для различных модулей и плат разработки на базе ESP8266, включая NodeMCU.
Пины [ править ]
NodeMCU обеспечивает доступ к GPIO (ввод-вывод общего назначения), а таблица сопоставления контактов является частью документации API. [19]
Индекс ввода/вывода | контакт ESP8266 |
---|---|
0 [*] | GPIO16 |
1 | GPIO5 |
2 | GPIO4 |
3 | GPIO0 |
4 | GPIO2 |
5 | GPIO14 |
6 | GPIO12 |
7 | GPIO13 |
8 | GPIO15 |
9 | GPIO3 |
10 | GPIO1 |
11 | GPIO9 |
12 | GPIO10 |
[*] D0 (GPIO16) можно использовать только для чтения/записи GPIO. Он не поддерживает открытый сток/прерывание/ШИМ/I²C или 1-Wire.
См. также [ править ]
Ссылки [ править ]
- ^ Зохайб Хасан, Абхиджит и Апурва Шарма. «Интернет Жизни (ИОЛ)». (2015). ISBN 978-93-5156-328-0
- ^ Брайан Бенчофф (25 октября 2014 г.). «SDK для чипа Wi-Fi ESP8266» . Хакадей . Проверено 2 апреля 2015 г.
- ^ Востар. «Комплект разработчика NodeMCU» . Гитхаб . Команда NodeMCU . Проверено 2 апреля 2015 г.
- ^ Нулевой день. «Прошивка на основе Lua для wifi-soc esp8266» . Гитхаб . Проверено 2 апреля 2015 г.
- ^ Хари Вигуна. «Прошивка NodeMCU LUA» . Хакадей . Проверено 2 апреля 2015 г.
- ↑ Перейти обратно: Перейти обратно: а б Системы, Эспрессиф. «Эспрессиф Системс» . Эспрессиф-ВикиДеви . Архивировано из оригинала 1 декабря 2017 года . Проверено 3 июня 2017 г.
- ^ Брайан Бенчофф (2 января 2015 г.). «СОВЕТ РАЗРАБОТКИ ДЛЯ ИНТЕРПРЕТЕРА ESP LUA» . Хакадей . Проверено 2 апреля 2015 г.
- ↑ Перейти обратно: Перейти обратно: а б «Разработчик IBM» .
- ^ Мпкс. «Lua CJSON — это быстрый модуль кодирования/анализа JSON для Lua» . Гитхаб . Проверено 2 апреля 2015 г.
- ^ Пеллепл. «Устойчивая к износу флэш-файловая система SPI для встраиваемых устройств» . Гитхаб . Проверено 2 апреля 2015 г.
- ^ «NodeMCU — идеальная плата для Интернета вещей» . Блог Circuito.io . 21 ноября 2018 г. Проверено 27 мая 2021 г.
- ^ Система Эспрессиф (30 декабря 2013 г.). «IoT Wi-Fi 802.11b/g/n, интегрированная реализация SoC для серийного производства» . 中国上海讯. Архивировано из оригинала 2 апреля 2015 года . Проверено 2 апреля 2015 г.
- ^ Хонг. «Первая фиксация прошивки NodeMCU» . Гитхаб . Проверено 2 апреля 2015 г.
- ^ Хуан Р. «Первоначальный дизайн комплекта разработки NodeMCU» . Гитхаб . Проверено 2 апреля 2015 г.
- ^ Туан ПМ. «Клиентская библиотека MQTT для ESP8266» . Гитхаб . Проверено 2 апреля 2015 г.
- ^ Оликраус; Дэниел Ситтиг. «Универсальная графическая библиотека для 8-битных встраиваемых систем» . Гугл код . Проверено 2 апреля 2015 г.
- ^ Девзавр. «U8glib для esp8266» . Гитхаб . Проверено 2 апреля 2015 г.
- ^ «Ядро ESP8266 для Arduino» . Гитхаб . Проверено 10 января 2019 г.
- ^ «gpio — Документация NodeMCU» . nodemcu.readthedocs.io . Проверено 11 ноября 2018 г.
Внешние ссылки [ править ]
