NodeMcu的梳理

關於NODEMCU和ESP8266之間的關係
我本身的理解:php

ESP8266是核心芯片node

NodeMcu開發板是以ESP8266爲核心,擴展的開發板。linux

 

二者端口對應關係以下:git

PIN MAP

一些NodeMcu開發設計的軟件和材料:github

 

對於ESP-12的固件:編程

  • 咱們拿到的esp-12模塊能夠發送AT指令,由於包含AT指令的固件已經燒進mcu。
  • 咱們能用lua語言編程程序上傳運行,由於包含lua模塊和執行器的固件已經燒進mcu

NodeMcu硬件和lua固件的關係 燒寫進nodemcu的lua固件更像一個操做系統,它有對應的文件系統SPIFFSwindows

  • ESPlorer把.lua文件上傳至nodemcu的文件系通通SPIFFS,在物理上是把這部代碼上傳到flash,放在文件系統對應的地址中。api

  • lua固件和文件系統的.lua代碼載入內存運行,固件負責解釋代碼並執行。app

  • 上傳lua與燒寫flash固件的區別是:燒寫固件是將原固件擦除並更新,一般不會影響文件系統。而Esplore上傳.lua只是更新文件系統。文件系統和固件佔用flash的不一樣地址,互不影響。工具

  • 要燒寫nodemcu的固件,windows下須要VM虛擬系統下的linux編譯源碼(樂鑫官方的編譯方式),或者用安信可的SDK,固然你也能夠在網上訂製,點擊NodeMCU custom builds,你須要燒寫工具nodemcu flasher把bin文件寫入flash

  • 切記,一旦你燒寫nodemcu的固件,意味着你更新了操做系統。它可能增長或減小几個功能模塊。而文件系統的.lua文件通常狀況下會保留。這與重裝電腦c盤,d盤的文件不受影響是一個道理。

關於SPIFFS

SPIFFS是nodemcu的文件系統,用於falsh中放置.lua文件,flash也放置固件。查看nodemcu官方文檔SPIFFS的說明,點擊這裏,這裏簡單說一下:

  • SPIFFS 全稱是SPI Flash File System,用於SPI讀寫flash的文件系統,其實也可用於NOR flash
  • SPIFFS 文件系統用於嵌入式平臺的 SPI NOR flash設備,一樣適用於MCU內部的falsh
  • nodmcu的lua固件包含了SPIFFS文件系統的鏡像工具。第一次燒寫flash,沒有檢測到flash中的文件系統,會在flash中新建一個文件系統。文件系統的起始地址=固件結束地址+64K~128K
  • 若是新固件大小<原固件大小+64K,原有的文件系統就會保留,不然會新建,原有lua文件丟失

文章部份內容來自:https://blog.csdn.net/qq_32543253/article/details/53240071

相關文章
相關標籤/搜索