2018年3月10日 星期六

如何將 NodeMCU-32S Lua ESP32 開發板改成 Arduino ESP32 Wifi+Bluetooth 開發板


之前都用 Arduino MEGA 2560 / UNO 在寫各種控制程式, 但是 MEGA 2560 和 UNO 用的是低階的 CPU,速度慢,記憶體小且開發板又貴。因為要做一些 IOT 的應用,因此需要 Wifi 的模組。之前的做法都是用 MEGA 2560 或 UNO 加 ESP8266 模組或 ESP32 模組,此做法不只價錢貴,模組多,體積大又耗電。在 espressif (ESP8266 Wifi & ESP32 Wifi/BT IC 的製造商) 還沒有提供 Arduino 的核心程式時, 我就只能使用很複雜的 Free RTOS 來開發單晶片 Wifi IOT的方案。既然 espressif 已提供Arduino 的核心程式,因此現在可以很簡單的利用 ESP8266或ESP32的模組來實現單晶片 Wifi IOT 的方案。

首先,要安裝 Arduino 的核心程式 (https://github.com/espressif/arduino-esp32) 在 NodeMCU-32S Lua ESP32 開發板上, 本機的 ESP32 開發板為安信可原廠 NodeMCU-32S Lua ESP32S
https://seller.shopee.tw/portal/product/928485364
http://goods.ruten.com.tw/item/show?21808691311673
在使用 Arduino IDE 時最大的好處就是在每一次上傳草稿(程式)到 ESP32 模組時不用在按 BOOT 和 RESET 鍵.


Mac 的安裝方式如下:

1. 打開 Terminal 程式
2. 然後在命令列下,輸入以下命令,每次只輸入一行的命令(不要全部拷貝和貼上)
  mkdir -p ~/Documents/Arduino/hardware/espressif && \
cd ~/Documents/Arduino/hardware/espressif && \
git clone https://github.com/espressif/arduino-esp32.git esp32 && \
cd esp32 && \
git submodule update --init --recursive && \
cd tools && \
python get.py

4. 完成後重新打開 Arduino 就可看到如下的 "ESP32 dev module"


如果沒有看到這個 "ESP32 dev Module"

請看這篇 ==> 如何解決安裝 Arduino ESP32 開發版程式的問題
https://www.blogger.com/blogger.g?blogID=7530656930048997875#editor/target=post;postID=9018136909947391513;onPublishedMenu=allposts;onClosedMenu=allposts;postNum=1;src=postname

下圖是安裝 ESP32核心程式前內建開發板的列表





在Windows底下的安裝方式可參考:
https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/windows.md

步驟如下:
- 到 git-scm.com 下載 git 程式並執行
- 執行後,選擇 Clone Existing Repository 
- 然後複製 https://github.com/espressif/arduino-esp32.git 到 Arduino 草稿簿目錄 (不可在別的目錄)
- 再來開啟 Windows 的命令列,並在 Arduino 草稿簿目錄下輸入 
    git submodule  --init  --recursive 
- 改變目錄到 hardware\expressif\esp32\tools
- 執行 get 執行檔,完成後,軟體安裝就完成了。然後把 USB 線插到 ESP32 開發板,此時電腦會自動下載驅動程式。
- 重新啟動 Arduino 主程式,到 Tools -> Board 下,就可以看到 "ESP32 Dev Module"
- 把開發板改成 "ESP32 Dev Module" 並選擇正確的 COM Port
- 按一下開發板上的 RESET 鍵,此時可看到如下圖右邊的資訊了並開始寫程式了。




先用 ESP32 的範例程式 (在 File -> Examples -> WiFi -> WiFiScan) 上傳到 ESP32 開發板, 成功後, 就可以看到附近所有的 WIFI AP 的名字和訊號強度 如下圖.




下一篇: Arduino ESP32 和 1.3" 12864 點陣 OLED 模組應用

沒有留言:

張貼留言