顯示具有 Lua 標籤的文章。 顯示所有文章
顯示具有 Lua 標籤的文章。 顯示所有文章

2022年8月23日 星期二

NodeMCU 入門

 

介紹

ESP8266是樂鑫開發的  一款低成本的 Wi-Fi 芯片,採用 TCP/IP 協議。

有關 ESP8266 的更多信息,您可以參考 ESP8266 WiFi 模塊。

NodeMCU 是一個基於LUA的固件,我們需要下載到 ESP8266 芯片上。

要下載 NodeMCU 固件,請訪問  https://nodemcu-build.com/

  • 輸入你的電子郵箱。

進入電子郵件窗口

  • 選擇要構建的分支

選擇分支構建窗口

  • 選擇要安裝的模塊。

例如,如果您想在 NodeMCU 中使用模擬傳感器,則選擇將提供對內置 ADC 訪問的 ADC 模型。

選擇要包含窗口的模塊

  • 我們可以為 TLS/SSL 支持、調試以及 FatFS 支持選擇其他選項,如下所示

其他選項窗口

  • 單擊開始構建。

開始構建窗口

  • 構建完成後,您將收到一封電子郵件,其中包含下載自定義固件的鏈接。點擊鏈接下載。
  • 請注意,您將獲得兩個自定義固件鏈接,一個是支持浮動的 NodeMCU,第二個是不支持浮動的 NodeMCU,即整數。
  • 如果不需要浮動支持,請下載整數支持固件 bin 文件,否則,下載浮動支持固件 bin 文件。

我們需要在 ESP8266 芯片上刷入上面下載的自定義固件。有一個名為 ESP8266Flasher 的工具,用於刷寫 ESP8266 芯片。

  • 下載ESP8266Flasher.exe從

            32位:https ://github.com/nodemcu/nodemcu-flasher/tree/master/Win32/Release

            64位:https ://github.com/nodemcu/nodemcu-flasher/tree/master/Win64/Release

  • 打開ESP8266Flasher.exe並點擊配置。

安裝 NodeMCU 固件

  • 單擊設置圖標,然後選擇在第一步中下載的固件

安裝 NodeMCU 固件

  • 選擇 COM 端口(在我的情況下是 COM 7)

安裝nodemcu固件

  • 將 USB 線連接到 NodeMCU 模塊,如下圖所示

NodeMCU 與 PC 的連接

NodeMCU 與 PC 的連接

然後點擊 Flash

  • 安裝固件後會出現一個綠色勾號

安裝nodemcu固件

  • 你好!ESP8266 與 Node-MCU 固件的設置已完成!

用 Node-MCU 固件設置 ESP 後,我們來看看開發 NodeMCU 所需的 IDE(集成開發環境)。

帶有 ESPlorer 的 NodeMCU

Lua腳本通常用於對 NodeMCU 進行編碼。Lua 是一種建立在 C 編程語言之上的開源、輕量級、可嵌入的腳本語言。

有關如何為 NodeMCU 編寫 Lua 腳本的更多信息,請參閱 使用 ESPlorerIDE 開始使用 NodeMCU

帶 Arduino 的 NodeMCU

這是使用眾所周知的 IDE(即 Arduino IDE)開發 NodeMCU 的另一種方法。我們還可以使用 Arduino 開發環境在 NodeMCU 上開發應用程序。這使得 Arduino 開發人員比學習 NodeMCU 的新語言和 IDE 更容易。

有關如何為 NodeMCU 編寫 Arduino 草圖的更多信息,請參閱 使用 ArduinoIDE 開始使用 NodeMCU

 

資料來源:https://www.electronicwings.com/nodemcu/getting-started-with-nodemcu

NodeMCU簡介

 

介紹

NodeMCU 是為 ESP8266 wifi 芯片開發的基於LUA的開源固件。通過探索 ESP8266 芯片的功能,NodeMCU 固件隨附 ESP8266 開發板/套件,即 NodeMCU 開發板。

NodeMCU 開發板/套件 v0.9

NodeMCU 開發板/套件 v0.9 (Version1)

由於 NodeMCU 是一個開源平台,它的硬件設計是開放的,可以編輯/修改/構建。

NodeMCU 開發套件/板由支持 ESP8266 wifi 的芯片組成。ESP8266是樂鑫開發的  一款低成本的 Wi-Fi 芯片,採用 TCP/IP 協議。有關 ESP8266 的更多信息,您可以參考 ESP8266 WiFi 模塊。

NodeMCU 開發套件有 Version2 (V2),即NodeMCU Development Board v1.0 (Version2),通常採用黑色 PCB。

NodeMCU 開發板 v1.0

NodeMCU 開發板/套件 v1.0 (Version2)

 

有關市場上可用的 NodeMCU 板的更多信息,請參閱 NodeMCU 開發板

NodeMCU 開發套件在其板上具有類似 Arduino 的模擬(即 A0)和數字(D0-D8)引腳。

它支持串行通信協議,即UART、SPI、I2C等。 

使用此類串行協議,我們可以將其與支持 I2C 的 LCD 顯示器、磁力計 HMC5883、MPU-6050 陀螺儀 + 加速度計、RTC 芯片、GPS 模塊、觸摸屏顯示器、SD 卡等串行設備連接。

如何開始使用 NodeMCU?

NodeMCU 開發板具有 wifi 功能、模擬引腳、數字引腳和串行通信協議。

要開始將 NodeMCU 用於 IoT 應用程序,我們首先需要了解如何在 NodeMCU 開發板中編寫/下載 NodeMCU 固件。在此之前,此 NodeMCU 固件將根據我們的要求獲得。

有可用的在線 NodeMCU 定製版本,我們可以根據我們的要求輕鬆獲得我們的定制 NodeMCU 固件。

要了解有關如何在線構建自定義 NodeMCU 固件和下載的更多信息,請參閱 NodeMCU 入門

如何為 NodeMCU 編寫代碼?

用 Node-MCU 固件設置好 ESP8266 後,我們來看看 NodeMCU 開發所需的 IDE(Integrated Development Environment)。

帶有 ESPlorer IDE 的 NodeMCU

Lua腳本通常用於對 NodeMCU 進行編碼。Lua 是一種建立在 C 編程語言之上的開源、輕量級、可嵌入的腳本語言。

有關如何為 NodeMCU 編寫 Lua 腳本的更多信息,請參閱 使用 ESPlorerIDE 開始使用 NodeMCU

帶有 Arduino IDE 的 NodeMCU

這是使用眾所周知的 IDE(即 Arduino IDE)開發 NodeMCU 的另一種方法。我們還可以使用 Arduino 開發環境在 NodeMCU 上開發應用程序。這使得 Arduino 開發人員比學習 NodeMCU 的新語言和 IDE 更容易。

有關如何為 NodeMCU 編寫 Arduino 草圖的更多信息,請參閱 使用 ArduinoIDE 開始使用 NodeMCU

 

使用 ESPlorer 和 Arduino IDE 的區別

好吧,在使用 ESPlorer IDE 和 Arduino IDE 開發 NodeMCU 應用程序時,我們可以說編程語言存在差異。

如果我們使用 Arduino IDE 開發 NodeMCU 應用程序,我們需要使用 C\C++ 編程語言進行編碼,如果我們使用的是 ESPlorer IDE,則需要使用 Lua 語言。

NodeMCU 基本上就是 Lua 解釋器,所以它可以很容易地理解 Lua 腳本。當我們為 NodeMCU 編寫 Lua 腳本並將其發送/上傳到 NodeMCU 時,它們將按順序執行。它不會為 NodeMCU 編寫代碼的二進制固件文件。它將按原樣發送 Lua 腳本到 NodeMCU 以執行。

在 Arduino IDE 中,當我們編寫和編譯代碼時,後台的 ESP8266 工具鏈會創建我們編寫的代碼的二進制固件文件。當我們將它上傳到 NodeMCU 時,它將使用新生成的二進制固件代碼刷新所有 NodeMCU 固件。事實上,它編寫了完整的固件。

這就是為什麼 NodeMCU 在被 Arduino IDE 刷新後不接受進一步的 Lua 腳本/代碼的原因。在被 Arduino 草圖/代碼刷新後,它將不再是 Lua 解釋器,如果我們嘗試上傳 Lua 腳本,則會出現錯誤。要再次使用 Lua 腳本,我們需要使用 NodeMCU 固件對其進行刷新。

由於 Arduino IDE 編譯和上傳/寫入完整的固件,它比 ESPlorer IDE 需要更多的時間。


資料來源:https://www.electronicwings.com/nodemcu/introduction-to-nodemcu