UNO D1 R32(ESP32)Arduino開發環境構築

本文介紹使用UNO D1 R32(ESP32)開發板構建嵌入式開發環境的方法。

ESP32是啥?

用廠家的話來講,ESP32 採用 40 nm 工藝製成,具有最佳的功耗性能、射頻性能、穩定性、通用性和可靠性,適用於各種應用場景和不同功耗需求。以下是ESP32的主要參數:

項目數值核心數2架構32bitWifiYes藍牙Yes內存512K閃存16MGPIO36通訊協議SPI, IIC, I2S, UART, CANADC(模數轉換器)18通道12位DAC(數模轉換器)2通道8位存儲卡接口1溫度傳感器1

從ESP32的芯片參數可以看出,它的功能非常強大;另外一條也也很重要:它非常便宜。這兩個要素決定了:它非常適合目前流行的物聯網開發,也非常適合學習嵌入式開發。

準備硬件

既然是嵌入式開發,不可避免的會涉及到輸入。這裡一般有兩種方式,選用最簡單ESP32開發板,但是這樣需要我們自己準備輸入輸出擴展。雖然算不上有多困難,總是有些麻煩。我們選擇另一種方式:遵循Ardino規範的UNO D1 R32開發板:

UNO D1 R32(ESP32)Arduino開發環境構築

通過和一元硬幣的比較可以知道,UNO D1 R32還是很小的。

安裝Arduino

百度百科中對Arduino的說明如下:

Arduino是一款便捷靈活、方便上手的開源電子原型平臺。包含硬件(各種型號的Arduino板)和軟件(ArduinoIDE)。由一個歐洲開發團隊於2005年冬季開發。其成員包括Massimo Banzi、David Cuartielles、Tom Igoe、Gianluca Martino、David Mellis和Nicholas Zambetti等。它構建於開放原始碼simple I/O介面版,並且具有使用類似Java、C語言的Processing/Wiring開發環境。主要包含兩個的部分:硬件部分是可以用來做電路連接的Arduino電路板;另外一個則是Arduino IDE,你的計算機中的程序開發環境。你只要在IDE中編寫程序代碼,將程序上傳到Arduino電路板後,程序便會告訴Arduino電路板要做些什麼了。

要做的其實很簡單:到以下網頁下載並安裝ArduinoIDE軟件即可

https://www.arduino.cc/en/Main/Software

也可以直接使用以下鏈接下載。

Window Installer

安裝ESP32開發包

在ArduinoIDE中安裝ESP32有幾個方法,最後好用的是參考文檔(一波三折那篇)最接近成功,但是下載安裝包的過程還是一波三折,主要的問題就是文件下載太困難。因此作者首先將這些文件收集起來,安裝步驟修改如下:

1.Arduino安裝下的hardware目錄中,創建espressif/esp32目錄

UNO D1 R32(ESP32)Arduino開發環境構築

2.從github下載arduino-esp32支持包:

UNO D1 R32(ESP32)Arduino開發環境構築

3.將下載得到的Zip文件解壓縮到第一步中創建的esp32目錄中。

4.進入espressif/esp32/tools目錄,執行目錄中的get.ext.

UNO D1 R32(ESP32)Arduino開發環境構築

5.自動進行安裝。但是在第三個文件的時候,一直不能完成。

UNO D1 R32(ESP32)Arduino開發環境構築

直接在網上直接檢索檢索可以找到下面的網頁:https://github.com/igrr/mkspiffs/releases/tag/0.2.3

UNO D1 R32(ESP32)Arduino開發環境構築

可以直接選擇下載mkspiffs-0.2.3-arduino-esp32-win32.zip或者直接點擊下面的鏈接下載:https://github.com/igrr/mkspiffs/releases/download/0.2.3/mkspiffs-0.2.3-arduino-esp32-win32.zip

如果還是不能下載,可以使用作者的備份文件。

6.進入espressif/esp32/tools/dist目錄:

UNO D1 R32(ESP32)Arduino開發環境構築

7.將下載的mkspiffs-0.2.3-arduino-esp32-win32.zip拷貝到dist目錄並重新執行get.exe。這次會很快結束。

選擇開發板

啟動Arduino進入工具菜單,如下圖選擇ESP32 Dev Module。

UNO D1 R32(ESP32)Arduino開發環境構築

動作確認

啟動Arduino並輸入驗證程序:

<code>void setup() {
pinMode(2, OUTPUT); //設置管腳2為輸出模式
}

void loop() {
digitalWrite(2, HIGH); // 點亮LED
delay(500); // 等待500ms
digitalWrite(2, LOW); // 熄滅LED
delay(500); // 等待500ms
}/<code>

使用MicroUSB線連接計算機和UNO D1 R32開發板,並選擇端口:

UNO D1 R32(ESP32)Arduino開發環境構築

這裡有兩點需要注意:

1.讀者的計算機的端口號可能會有所不同,如果端口號是灰色的需要安裝參考信息中的CH340驅動。2.使用計算機背後的端口。作者使用前面板上的USB端口搞了好半天都無法穩定地下載程序。

上傳程序到UNO D1 R32.

UNO D1 R32(ESP32)Arduino開發環境構築

也可以使用工具欄中的上傳按鈕[->]上傳程序。

完成後可以看到開發板上的藍色LED開始閃爍!

UNO D1 R32(ESP32)Arduino開發環境構築

參考信息

一波三折,分享我的esp32編譯環境搭建arduino

https://www.arduino.cn/thread-91658-1-1.html


在Arduino IDE上安裝ESP32

https://www.yiboard.com/thread-1218-1-1.html


Installing the ESP32 Board in Arduino IDE (Windows, Mac OS X, Linux)

https://randomnerdtutorials.com/installing-the-esp32-board-in-arduino-ide-windows-instructions/


How to Set Up and Use WeMos TTgo ESP32 Uno D1 R32

https://www.instructables.com/id/How-to-Set-Up-WeMos-TTgo-ESP32-Uno-D1-R32/


CH340驅動

http://www.wch.cn/download/CH341SER_EXE.html


WeMos R1 R32 ESP32

https://www.fambach.net/wemos-d1-r32-esp32/


原文鏈接:

https://github.com/xueweiguo/EmbeddedCpp/blob/master/Arduino/ESP32/Startup/ESP32Startup.md


覺得本文有幫助?請分享給更多人。

面向對象開發,面向對象思考!


分享到:


相關文章: