Arduino-IDE配置ESP32-CAM開發環境踩過的那些坑

Arduino-IDE配置ESP32開發環境踩過的那些坑

坑一IDE下載開發版速度慢:

在首選項裏添加了附加開發版網址:

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
https://dl.espressif.com/dl/package_esp32_index.json

之後在工具的開發版管理下載ESP32相關開發版,速度極慢,解決方案:

  1. 開梯子
  2. 手動下載安裝 (Window參考這裏)
    我上傳了已下載好的軟件包 可以在這裏下載 傳送門

坑二get速度慢:

linux&MacOS適用:
在安裝包裏的tools裏運行get.py下載相關開發工具速度極慢,解決方案

  1. 手機開熱點試試
  2. 在早上等網絡暢通的時候下載,秒完,親測

坑三編譯出錯:

等一切下載安裝完畢後,運行示例CameraWebServer後編譯出錯,解決方案
再裝一遍ESP32

坑N上傳出錯:

網上大多數的配置ESP32的開發版的參數是這樣的,但是並不適用所有的,比如我的這樣設置就無法上傳程序。
在這裏插入圖片描述

坑一:

出現以下錯誤:

項目使用了 2612056 字節,佔用了 (83%) 程序存儲空間。最大爲 3145728 字節。
全局變量使用了54068字節,(16%)的動態內存,餘留273612字節局部變量。最大爲327680字節。
esptool.py v2.6
Serial port /dev/cu.usbserial-14310
Connecting........_____....._____....._____....._____....._____....._____.....____上傳項目出錯
_

A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

是因爲IO_0沒有接GND,因爲IO_0GND是串口燒錄模式。

坑二:

出現以下錯誤:

Arduino:1.8.12 (Mac OS X), 開發板:"ESP32 Wrover Module, Huge APP (3MB No OTA/1MB SPIFFS), QIO, 80MHz, 921600, None"

項目使用了 2612056 字節,佔用了 (83%) 程序存儲空間。最大爲 3145728 字節。
全局變量使用了54068字節,(16%)的動態內存,餘留273612字節局部變量。最大爲327680字節。
esptool.py v2.6
Serial port /dev/cu.usbserial-14310
Connecting.....
Chip is ESP32D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
MAC: 8c:aa:b5:86:72:0c
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...

A fatal error occurred: Timed out waiting for packet content
A fatal error occurred: Timed out waiting for packet content

是由於ESP32的開發版下載速度太大出的問題,把下載速度設爲460800波特率或者更低試試。

坑三:

波特率設置好後,程序下載成功了,出現一下信息,說明程序下載成功:

riting at 0x00204000... (99 %)
Writing at 0x00208000... (100 %)
Wrote 2612176 bytes (2068304 compressed) at 0x00010000 in 52.2 seconds (effective 400.6 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 119...

Writing at 0x00008000... (100 %)
Wrote 3072 bytes (119 compressed) at 0x00008000 in 0.0 seconds (effective 2865.4 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...

斷開IO_0GND並且rst一下ESP32,但是ESP32一直重啓,串口一直打印以下信息:

ets Jun  8 2016 00:22:57

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1216
ho 0 tail 12 room 4
load:0x40078000,len:10864
load:0x40080400,len:6432
entry 0x400806b8
ets Jun  8 2016 00:22:57


rst:0x3 (SW_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1216
ho 0 tail 12 room 4
load:0x40078000,len:10864
load:0x40080400,len:6432
entry 0x400806b8
ets Jun  8 2016 00:22:57

rst:0x3 (SW_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1216
ho 0 tail 12 room 4
load:0x40078000,len:10864
load:0x40080400,len:6432
entry 0x400806b8
ets Jun  8 2016 00:22:57

rst:0x3 (SW_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1216
ho 0 tail 12 room 4
load:0x40078000,len:10864
load:0x40080400,len:6432
entry 0x400806b8
ets Jun  8 2016 00:22:57

......

這是因爲ESP32的芯片頻率設置錯誤,需要把頻率改爲40MHz。

最後全部設置好應該是這樣的:
在這裏插入圖片描述

最終實現效果

一切問題都解決後,串口會打印出以下信息:

ets Jun  8 2016 00:22:57

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1216
ho 0 tail 12 room 4
load:0x40078000,len:10864
load:0x40080400,len:6404
entry 0x400806b8

..
WiFi connected
Starting web server on port: '80'
Starting stream server on port: '81'
Camera Ready! Use 'http://192.168.0.14' to connect

用瀏覽器打開http://192.168.0.14網址就可以看到ESP32-CAM的畫面裏。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章