NodeMCU - NodeMCU
NodeMCU DEVKIT 1.0 | |
Разработчик | ESP8266 Сообщество Opensource |
---|---|
Тип | Одноплатный микроконтроллер |
Начальная цена | $5 |
ЦПУ | ESP8266[1](LX106[2]) |
объем памяти | 128 КБ |
Место хранения | 4 МБ[3] |
Мощность | USB |
Интернет сайт | www |
NodeMCU это недорогой открытый исходный код Интернет вещей Платформа.[4][5] Первоначально он включал прошивка который работает на ESP8266 Вай фай SoC от Espressif Systems, и оборудования, которое было основано на модуле ESP-12.[6][7] Позже поддержка ESP32 Был добавлен 32-битный MCU.
Обзор
NodeMCU - это прошивка с открытым исходным кодом, для которой прототипирование доступны конструкции досок. Название «NodeMCU» объединяет »узел "и" MCU "(микроконтроллер единица измерения).[8]. Термин «NodeMCU», строго говоря, относится к прошивке, а не к соответствующему комплекты разработки.[нужна цитата ]
Дизайн прошивки и макетной платы Открытый исходный код.[9]
В прошивке используется Lua язык сценариев. Прошивка основана на проекте eLua и построена на Espressif Non-OS SDK для ESP8266. Он использует множество проектов с открытым исходным кодом, таких как lua-cjson[10] и SPIFFS.[11] Из-за ограниченности ресурсов пользователям необходимо выбрать модули, соответствующие их проекту, и создать прошивку, соответствующую их потребностям. Поддержка 32-битной ESP32 также был реализован.
Обычно используемое оборудование для прототипирования представляет собой печатную плату, работающую как двухрядный корпус (DIP), который объединяет контроллер USB с меньшей поверхностной платой, содержащей MCU и антенну. Выбор формата DIP позволяет легко создавать прототипы на макеты. Первоначально за основу был взят модуль ESP-12 ESP8266, который представляет собой Wi-Fi SoC, интегрированный с Tensilica Ядро Xtensa LX106, широко используемое в приложениях IoT (см. связанные проекты ).
История
NodeMCU был создан вскоре после ESP8266 вышел из. 30 декабря 2013 г. Системы Эспресси[6] начал производство ESP8266.[12] NodeMCU стартовал 13 октября 2014 года, когда Хонг передал первый файл прошивки nodemcu на GitHub.[13] Два месяца спустя проект расширился и включил открытую аппаратную платформу, когда разработчик Huang R совершил гербер файл платы ESP8266 с именем devkit v0.9.[14] Позже в том же месяце Tuan PM перенес 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 различных модулей.
Связанные проекты
ESP8266 Ядро Arduino
В качестве Arduino.cc приступили к разработке новых плат MCU на основе не-AVR процессоров, таких как ARM / SAM MCU и используемых в Arduino Due, им необходимо было изменить IDE Arduino так что было бы относительно легко изменить IDE для поддержки альтернативных наборов инструментов, чтобы позволить Arduino C / C ++ скомпилировать для этих новых процессоров. Они сделали это, представив Board Manager и SAM Core. «Ядро» - это набор программных компонентов, необходимых для Board Manager и Arduino IDE для компиляции исходного файла Arduino C / C ++ для машинного языка целевого MCU. Некоторые энтузиасты ESP8266 разработали ядро Arduino для ESP8266 WiFi SoC, обычно называемое «ядром 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
- ^ Брайан Бенчофф. "SDK для микросхемы ESP8266 Wi-Fi". Hackaday. Получено 2 апреля 2015.
- ^ Vowstar. "NodeMCU Devkit". Github. Команда NodeMCU. Получено 2 апреля 2015.
- ^ Зеродей. "Прошивка на основе lua для wifi-soc esp8266". Github. Получено 2 апреля 2015.
- ^ Хари Вигуна. "Прошивка NodeMCU LUA". Hackaday. Получено 2 апреля 2015.
- ^ а б Systems, Espressif. "Эспрессиф Системс". Espressif-WikiDevi. Архивировано из оригинал 1 декабря 2017 г.. Получено 3 июн 2017.
- ^ Брайан Бенчофф. "СОВЕТ DEV ДЛЯ ПЕРЕВОДЧИКА ESP LUA". Hackaday. Получено 2 апреля 2015.
- ^ https://developer.ibm.com/tutorials/iot-nodemcu-open-why-use/
- ^ https://developer.ibm.com/tutorials/iot-nodemcu-open-why-use/
- ^ Mpx. "Lua CJSON - это быстрый модуль кодирования / анализа JSON для Lua". Github. Получено 2 апреля 2015.
- ^ Pellepl. "Изношенная файловая система SPI flash для встраиваемых устройств". GitHub. Получено 2 апреля 2015.
- ^ Система Espressif (30 декабря 2013 г.). «IoT Wi-Fi 802.11b / g / n интегрированная реализация SoC массового производства».中国 上海 讯. Архивировано из оригинал 2 апреля 2015 г.. Получено 2 апреля 2015.
- ^ Hong. «Первая фиксация прошивки NodeMCU». Github. Получено 2 апреля 2015.
- ^ Хуанг Р. «Первоначальный дизайн девкита NodeMCU». Github. Получено 2 апреля 2015.
- ^ Туан П.М. «Клиентская библиотека MQTT для ESP8266». Github. Получено 2 апреля 2015.
- ^ Оликраус; Дэниел Ситтиг. «Универсальная графическая библиотека для 8-битных встраиваемых систем». Код Google. Получено 2 апреля 2015.
- ^ Девзавр. "U8glib для esp8266". Github. Получено 2 апреля 2015.
- ^ «Ядро ESP8266 для Arduino». GitHub. Получено 10 января 2019.
- ^ "gpio - Документация по NodeMCU". nodemcu.readthedocs.io. Получено 2018-11-11.