文章目錄
一. 硬件設(shè)備
ESP32 S3是樂(lè)鑫最新的物聯(lián)網(wǎng)芯片之一,選用它的原因是:
- 同時(shí)支持BLE和WIFI
- 具備USB接口
- 有主頻較高的CPU
為了節(jié)約時(shí)間硬件是在某寶購(gòu)買(mǎi)的開(kāi)發(fā)板。
1.硬件組成
2.原理圖
3.引腳排列圖
二. 為什么是Arduino?
目前開(kāi)發(fā)ESP32系列芯片主要有兩種框架:
- 樂(lè)鑫ESP-IDF
- Arduino
樂(lè)鑫的ESP-IDF能夠?qū)崿F(xiàn)較多功能,但安裝較為復(fù)雜,經(jīng)常出錯(cuò),需要開(kāi)發(fā)者有較強(qiáng)的解決問(wèn)題的能力。Arduino IDE 提供了一個(gè)簡(jiǎn)單、易用和開(kāi)放的開(kāi)發(fā)環(huán)境,適用于初學(xué)者和非專(zhuān)業(yè)開(kāi)發(fā)人員。它具有廣泛的支持和資料庫(kù),使得快速原型設(shè)計(jì)和物聯(lián)網(wǎng)項(xiàng)目開(kāi)發(fā)變得容易和便捷。使用 Arduino IDE 進(jìn)行開(kāi)發(fā)有以下幾個(gè)優(yōu)點(diǎn):
-
易于入門(mén):Arduino IDE 的設(shè)計(jì)初衷是為了讓初學(xué)者和非專(zhuān)業(yè)開(kāi)發(fā)人員能夠快速上手和使用。它提供了簡(jiǎn)單而直觀的界面和易于理解的編程語(yǔ)言,使得初學(xué)者能夠輕松開(kāi)始進(jìn)行物聯(lián)網(wǎng)和嵌入式系統(tǒng)的開(kāi)發(fā)。
-
跨平臺(tái)支持:Arduino IDE 支持多種操作系統(tǒng),包括 Windows、Mac 和 Linux,因此開(kāi)發(fā)人員可以在自己熟悉的操作系統(tǒng)上進(jìn)行開(kāi)發(fā)。這種跨平臺(tái)的特性使得團(tuán)隊(duì)協(xié)作更加方便,并且可以在不同的硬件平臺(tái)上進(jìn)行開(kāi)發(fā)和測(cè)試。
-
豐富的庫(kù)和示例代碼:Arduino IDE 提供了大量的開(kāi)源庫(kù)和示例代碼,涵蓋了各種傳感器、通信模塊和外部設(shè)備的功能。這使得開(kāi)發(fā)人員能夠從現(xiàn)成的代碼中借鑒和學(xué)習(xí),并能夠快速構(gòu)建和測(cè)試自己的項(xiàng)目。
-
開(kāi)放的生態(tài)系統(tǒng):Arduino 是一個(gè)開(kāi)放的平臺(tái),并且有一個(gè)龐大的社區(qū)支持。您可以在社區(qū)中獲取技術(shù)支持、分享項(xiàng)目和與其他開(kāi)發(fā)人員交流。此外,許多供應(yīng)商提供了與 Arduino 兼容的硬件和擴(kuò)展模塊,使得選擇和集成外部設(shè)備更加方便。
-
低成本和可用性:Arduino 板和相關(guān)硬件的成本相對(duì)較低,并且易于獲得。這意味著開(kāi)發(fā)人員可以以較低的成本嘗試和實(shí)驗(yàn)各種項(xiàng)目,并且可以輕松地獲取所需的部件和組件。
三. Arduino ESP32開(kāi)發(fā)環(huán)境安裝
安裝 Arduino ESP32開(kāi)發(fā)環(huán)境主要有兩個(gè)步驟:
- 安裝Arduino IDE
Arduino IDE的官網(wǎng) - 安裝Arduino ESP32庫(kù)
ESP32 Arduino庫(kù)下載地址
安裝和使用軟件不是這篇文章的重點(diǎn),CSDN上有很多介紹,請(qǐng)自行學(xué)習(xí)不再贅述。
四. 驗(yàn)證開(kāi)發(fā)環(huán)境
1.選擇開(kāi)發(fā)板
在Arduino IDE菜單:工具— 開(kāi)發(fā)板中選擇ESP32S3 Dev Module。
2.選擇示例程序
在Arduino IDE菜單:文件— 示例中選擇Blink。
Blink示例程序:
void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(LED_BUILTIN, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
Ardunio的程序讀起來(lái)非常好理解,非專(zhuān)業(yè)工程師也能看懂,這也是為什么這么多人喜歡它的原因。
3.運(yùn)行示例程序
在工具欄上點(diǎn)擊“上傳”圖標(biāo),Ardunio IDE將會(huì)編譯并將固件下載到ESP32S3開(kāi)發(fā)板上(注意:在這一步之前需要選擇通過(guò)哪個(gè)串口連接到開(kāi)發(fā)板,每個(gè)計(jì)算機(jī)有多個(gè)串口,要注意區(qū)分),下載完畢后固件會(huì)自動(dòng)運(yùn)行。
運(yùn)行后,開(kāi)發(fā)板上的LED燈會(huì)閃爍,證明開(kāi)發(fā)環(huán)境設(shè)置成功。