노드 MCU

NodeMCU
노드 MCU
NodeMCU DEVKIT 1.0.jpg
Node MCU DEVKIT 1.0
개발자ESP8266 Opensource 커뮤니티
유형싱글보드 마이크로컨트롤러
초기 가격$5
CPUESP8266[1](LX106[2])
기억128KB
보관소4[3] MB
유에스비
웹 사이트www.nodemcu.com
Node MCU DEVKIT 1.0, 하단

Node MCU는 저비용 오픈소스 IoT [4][5]플랫폼입니다.처음에는 ESPressif Systems의 ESP8266 Wi-Fi SoC에서 동작하는 펌웨어와 ESP-12 [6][7]모듈을 기반으로 하는 하드웨어가 포함되어 있었습니다.그 후 ESP32 32비트 MCU 지원이 추가되었습니다.

개요

NodeMCU는 오픈 소스 프로토타이핑 보드 설계를 사용할 수 있는 오픈 소스 펌웨어입니다."Node MCU"라는 이름은 "node"와 "MCU"(마이크로 컨트롤러 장치)[8]를 결합한 것입니다.엄밀하게 말하면 "Node MCU"라는 용어는 관련 개발 [citation needed]키트가 아닌 펌웨어를 의미합니다.

펌웨어와 프로토타이핑 보드 디자인은 모두 오픈 [8]소스입니다.

펌웨어는 Lua 스크립트 언어를 사용합니다.펌웨어는 eLua 프로젝트를 기반으로 하며 ESP8266용 Espressif Non-OS SDK를 기반으로 합니다.Lua-cjson[9]SPIFS[10]같은 많은 오픈 소스 프로젝트를 사용합니다.자원 제약으로 인해 사용자는 프로젝트와 관련된 모듈을 선택하고 필요에 따라 펌웨어를 구축해야 합니다.32비트 ESP32 지원도 구현되어 있습니다.

일반적으로 사용되는 프로토타이핑 하드웨어는 이중 인라인 패키지(DIP)로 작동하는 회로 기판으로, USB 컨트롤러를 MCU 및 안테나가 포함된 작은 표면 장착 기판과 통합합니다.DIP 형식을 선택하면 브레드보드에서 쉽게 시제품을 만들 수 있습니다.당초 설계는 ESP8266의 ESP-12 모듈을 기반으로 했습니다.이는 IoT 애플리케이션에서 널리 사용되는 Tensilica Xtensa LX106 코어와 통합된 Wi-Fi SoC입니다(관련 프로젝트 참조).

종류들

Node MCU에는 버전 0.9와 1.0의 2가지 버전이 있습니다.버전 0.9에는 ESP-12가 포함되어 있으며 버전 1.0에는 ESP-12E가 포함되어 있습니다.여기서 E는 "Enhanced"[11]를 나타냅니다.

역사

ESP8266이 출시된 직후에 NodeMCU가 작성되었습니다.2013년 12월 30일, Espressif[6] Systems는 ESP8266의 [12]생산을 개시했습니다.NodeMCU는 2014년 10월 13일 Hong이 GitHub에 [13]nodemcu-firmware의 첫 번째 파일을 커밋했을 때 시작되었습니다.두 달 후 개발자인 Huang R이 ESP8266 보드의 거버 파일인 devkit v0.[14]9를 커밋했을 때 이 프로젝트는 오픈 하드웨어 플랫폼을 포함하도록 확장되었습니다.그 달 말, Tuan PM은 MQ를 포팅했습니다.Contiki에서 ESP8266 SoC [15]플랫폼으로의 TT 클라이언트 라이브러리와 NodeMCU 프로젝트에 커밋된 NodeMCU는 MQT 브로커에 액세스하기 위해 Lua를 사용하여 MQT IoT 프로토콜을 지원할 수 있었습니다.2015년 1월 30일 Devsaurus가 u8glib를[16] NodeMCU [17]프로젝트로 포팅함으로써 NodeMCU는 LCD, 스크린, OLED, VGA 디스플레이까지 쉽게 구동할 수 있게 되었습니다.

2015년 여름, 오리지날 크리에이터가 펌 웨어 프로젝트를 포기해, 독립 출자자 그룹이 그 자리를 계승했습니다.2016년 여름까지 Node MCU에는 40개 이상의 모듈이 포함되었습니다.

관련 프로젝트

ESP8266 Arduino 코어

Arduino.cc는 ARM/SAM MCU와 같은 비 AVR 프로세서를 기반으로 새로운 MCU 보드를 개발하기 시작하였고 Arduino Due에 사용되었기 때문에 새로운 프로세서를 위해 대체 툴체인을 지원하도록 IDE를 비교적 쉽게 변경할 수 있도록 Arduino IDE를 수정하여 Arduino C/C+++를 컴파일할 수 있도록 하였습니다.이들은 이사회 매니저와 SAM Core의 도입으로 이를 수행하였다."코어"는 보드 매니저와 Arduino IDE가 타겟 MCU의 머신 언어용 Arduino C/C++ 소스 파일을 컴파일하기 위해 필요한 소프트웨어 컴포넌트 모음입니다.일부 ESP8266 애호가들은 일반적으로 "ESP8266 Core for the Arduino IDE"[18]라고 불리는 ESP8266 WiFi SoC용 Arduino 코어를 개발했습니다.이는 노드 MCU를 포함한 다양한 ESP8266 기반 모듈 및 개발 보드의 주요 소프트웨어 개발 플랫폼이 되었습니다.

Node MCU는 GPIO(General Purpose Input/Output)에 대한 액세스를 제공하며 핀 매핑 테이블은 API [19]문서의 일부입니다.

I/O 인덱스 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 읽기/쓰기에만 사용할 수 있습니다.개방 드레인/인터럽트/PWM/I²C 또는 1-와이어는 지원하지 않습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ 조하이브 하산, 아비지트, 아푸르바 샤르마."Internet of Life(IOL)"(2015). ISBN978-93-5156-328-0
  2. ^ Brian Benchoff (25 October 2014). "An SDK for the ESP8266 Wi-Fi chip". Hackaday. Retrieved 2 April 2015.
  3. ^ Vowstar. "NodeMCU Devkit". Github. NodeMCU Team. Retrieved 2 April 2015.
  4. ^ Zeroday. "A lua based firmware for wifi-soc esp8266". Github. Retrieved 2 April 2015.
  5. ^ Hari Wiguna. "NodeMCU LUA Firmware". Hackaday. Retrieved 2 April 2015.
  6. ^ a b Systems, Espressif. "Espressif Systems". Espressif-WikiDevi. Archived from the original on 1 December 2017. Retrieved 3 June 2017.
  7. ^ Brian Benchoff (2 January 2015). "A DEV BOARD FOR THE ESP LUA INTERPRETER". Hackaday. Retrieved 2 April 2015.
  8. ^ a b "IBM Developer".
  9. ^ Mpx. "Lua CJSON is a fast JSON encoding/parsing module for Lua". Github. Retrieved 2 April 2015.
  10. ^ Pellepl. "Wear-leveled SPI flash file system for embedded devices". GitHub. Retrieved 2 April 2015.
  11. ^ "NodeMCU - A Perfect Board for IoT". circuito.io blog. 2018-11-21. Retrieved 2021-05-27.
  12. ^ Espressif system (December 30, 2013). "IoT Wi-Fi 802.11b/g/n integrated SoC implementation of volume production". 中国上海讯. Archived from the original on 2 April 2015. Retrieved 2 April 2015.
  13. ^ Hong. "First commit of NodeMCU Firmware". Github. Retrieved 2 April 2015.
  14. ^ Huang R. "Initial design of NodeMCU devkit". Github. Retrieved 2 April 2015.
  15. ^ Tuan PM. "MQTT client library for ESP8266". Github. Retrieved 2 April 2015.
  16. ^ Olikraus; Daniel Sittig. "Universal Graphics Library for 8 Bit Embedded Systems". Google code. Retrieved 2 April 2015.
  17. ^ Devsaurus. "U8glib for esp8266". Github. Retrieved 2 April 2015.
  18. ^ "ESP8266 core for Arduino". GitHub. Retrieved 10 January 2019.
  19. ^ "gpio - NodeMCU Documentation". nodemcu.readthedocs.io. Retrieved 2018-11-11.

외부 링크