ESP32快速入門指南

楊騏銘? 21009102182


在本篇文章中,您將了解到ESP32 Wi-Fi和藍牙模塊以及如何進行設(shè)置。


什么是ESP32?

ESP8266 Wi-Fi模塊是過去幾年中最受歡迎和最實用的模塊之一。市場上有這種模塊的各種版本。


ESP32模塊是ESP8266的升級版本。除了Wi-Fi模塊,該模塊還包含藍牙4.0模塊。雙核CPU工作頻率為80至240 MHz,包含兩個Wi-Fi和藍牙模塊以及各種輸入和輸出引腳, ESP32是物聯(lián)網(wǎng)項目的理想選擇。





ESP32模塊引腳分布





雖然ESP32的引腳數(shù)比常用的處理器少,但在引腳上復(fù)用多個功能時不會遇到任何問題。

警告:ESP32引腳的電壓電平為3.3伏。如果要將ESP32連接到其他工作電壓為5伏的設(shè)備,則應(yīng)使用電平轉(zhuǎn)換器轉(zhuǎn)換電壓電平。



電源引腳:該模塊有兩個電源引腳 - 5V和3.3V。您可以使用這兩個引腳來向其他設(shè)備和模塊供電。





GND引腳:該模塊的接地有3個引腳。

啟用引腳(EN):該引腳用于啟用和禁用模塊。引腳為高電平時啟用模塊,低電平禁用模塊。

輸入/輸出引腳(GPIO):您可以使用32個GPIO引腳與LED、開關(guān)和其他輸入/輸出設(shè)備進行通信。

您可以在內(nèi)部上拉或下拉這些引腳。

注意:GPIO6至GPIO11引腳(SCK/CLK,SDO/SD0,SDI/SD1,SHD/SD2,SWP/SD3和SCS/CMD引腳)用于模塊內(nèi)部閃存的SPI通信,我們不建議使用它們。

ADC:您可以使用此模塊上的16個ADC引腳將模擬電壓(某些傳感器的輸出)轉(zhuǎn)換為數(shù)字電壓。其中一些轉(zhuǎn)換器連接到內(nèi)部放大器,能夠以高精度測量小電壓。

DAC:ESP32模塊有兩個數(shù)模轉(zhuǎn)換器,精度為8位。

觸摸焊盤:ESP32模塊上有10個引腳,對電容變化很敏感。您可以將這些引腳連接到某些焊盤(PCB上的焊盤),并將它們用作觸摸開關(guān)。

SPI:該模塊上有兩個SPI接口,可用于連接顯示屏、SD / microSD存儲卡模塊、外部閃存等。

I2C:SDA和SCL引腳用于I2C通信。

串行通信(UART):該模塊上有兩個UART串行接口。使用這些引腳,您可以在兩個設(shè)備之間傳輸高達5Mbps的信息。 UART0還具有CTS和RTS控制。

PWM:幾乎所有ESP32輸入/輸出引腳都可用于PWM(脈沖寬度調(diào)制)。使用這些引腳可以控制電機、LED燈和顏色等。


ESP32模塊模式

ESP32芯片有5種模式:

活動模式:在這種模式下,Wi-Fi和藍牙發(fā)射器和接收器的所有部分都是活動的。在這種情況下,電流消耗在80和260mA之間。

調(diào)制解調(diào)器睡眠模式:處理器仍處于活動狀態(tài),但Wi-Fi和藍牙已禁用。在這種情況下,電流消耗在3到20mA之間。

輕度睡眠模式:主處理器停止工作,但RTC單元和ULP處理器單元仍處于活動狀態(tài)。電流消耗約為0.8 mA。

深度睡眠模式:只有RTC單元處于活動狀態(tài)。在這種情況下,Wi-Fi和藍牙通信的數(shù)據(jù)存儲在RTC的存儲器中。在此模式下,電流消耗在10到150μA之間。

休眠模式:除了用于時鐘的RTC定時器和連接到RTC的一些I / O引腳外,所有單元均被禁用。 RTC定時器或連接的引腳可以將芯片從此狀態(tài)喚醒。在這種情況下,電流消耗約為2.5μA。

有關(guān)更多信息,請查看模塊數(shù)據(jù)表。


ESP32芯片和模塊數(shù)據(jù)表

ESP32模塊及其芯片組的數(shù)據(jù)手冊可以從以下鏈接下載。

https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf

https://espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_en.pdf


ESP32 VS. ESP8266

市場上有各種類型的ESP32和ESP8266模塊。在本節(jié)中,對ESP8266 NodeMcu和ESP32 DEV模塊進行了比較:


ESP8266 NodeMcuESP32 DEV模塊電源3.3V3.3VCPUTensilica L106 32位Xtensa雙核32位LX6藍牙無符合藍牙v4.2 BR/EDR和BLE規(guī)范GPIO1732閃存大小最大16MB最大16MBADC10位12位DAC無2 * 8bitUART22


通常,ESP32模塊比ESP8266價格更貴。因此,如果您不需要藍牙、數(shù)字轉(zhuǎn)換器、許多I/O引腳和......,您可以通過購買ESP8266模塊來節(jié)省資金。


所需的材料

ESP32模塊

Arduino IDE






在Arduino IDE上安裝ESP32

ESP32的安裝過程與ESP8266的安裝幾乎相同。要在Arduino IDE上安裝ESP32,請執(zhí)行以下步驟:

注意:您需要Arduino IDE 1.8.5或更高版本才能在其上安裝ESP32。


第一步:從GitHub下載所需的文件

從GitHub帳戶下載ESP32 Arduino Core。您也可以使用直接下載鏈接。

https://github.com/espressif/arduino-esp32/archive/master.zip

第二步:將文件移動到Arduino sketchbook位置

默認情況下,Arduino sketchbook位于“我的文檔”中。要查找示意圖的確切路徑,請從“文件”菜單中檢查首選項。





在sketchbook位置的Arduino文件夾旁邊創(chuàng)建一個名為hardware的新文件夾。





在hardware文件夾中創(chuàng)建一個名為espressif的文件夾,然后在espressif文件夾中創(chuàng)建另一個名為esp32的文件夾。最后,您創(chuàng)建的路徑應(yīng)如下圖所示:





解壓縮您在上一步中下載的文件,并將其移至此地址。






第三步:運行g(shù)et.exe

要在Arduino軟件上安裝ESP32,您需要在系統(tǒng)上安裝Xtensa GNU編譯器集合。轉(zhuǎn)到esp32> tools并運行g(shù)et.exe文件。





運行g(shù)et.exe后,所需的文件將自動下載并傳輸?shù)絫ools文件夾。此步驟可能需要一些時間。





安裝完成后,必須將新文件添加到tools文件夾中。






使用Arduino IDE在ESP32上上傳代碼

在ESP32模塊上傳代碼與其他Arduino開發(fā)板類似。您可以使用Arduino內(nèi)置示例(如Blink)來測試它。

注意:如果之前未在計算機中安裝CP2102驅(qū)動程序,則應(yīng)從此處下載,然后安裝。


要上傳代碼,請從“工具”菜單中選擇開發(fā)板類型。然后選擇連接到電路板的串口并單擊上載。





void setup() {

? pinMode(2, OUTPUT);

}


void loop() {

? digitalWrite(2, HIGH);? // turn the LED on (HIGH is the voltage level)

? delay(1000);? ? ? ? ? ? ? ? ? ? ? // wait for a second

? digitalWrite(2, LOW);? ? // turn the LED off by making the voltage LOW

? delay(1000);? ? ? ? ? ? ? ? ? ? ? // wait for a second

}

故障排除

如果您遇到以下錯誤,請不要擔心。編程ESP32時通常會出現(xiàn)此問題。執(zhí)行以下步驟來解決問題:





1. 確保正確設(shè)置上傳波特率。通常,此波特率應(yīng)為115200。






2. 按住開發(fā)板上的Boot按鈕。

3. 單擊“上傳”選項。

4. 當您看到消息“Writing at 0x00001000 … (100%)”時,將手指從“Boot”按鈕上移開。




5. 上傳完成后,您可以看到提示上傳消息Done。


轉(zhuǎn)載自知乎https://zhuanlan.zhihu.com/p/105178847

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容