This website requires JavaScript.
優惠券
寄往
部落格

ESP32 功耗詳解:電流消耗、睡眠模式與電池續航力

最初發布於 Nov 06, 2026, 更新於 Nov 06, 2026

3 分鐘

目錄
  • ESP32 各模式功耗比較
  • ESP32 電源模式比較:各模式會保留哪些功能供電?
  • 應該使用哪一種 ESP32 睡眠模式?
  • ESP32 深度睡眠時消耗多少電流?
  • 為什麼 ESP32 開發板在深度睡眠時仍消耗數毫安培?
  • 如何降低客製化 PCB 上的 ESP32 功耗
  • 如何根據平均電流計算 ESP32 電池續航時間
  • JLCPCB PCB 組裝中的 ESP32 低功耗設計
  • 結論
  • ESP32 功耗常見問題

重點摘要

  • 各模式功耗: 根據 Espressif 資料表的典型數值,ESP32 在 Wi-Fi 傳輸時的電流約為 240 mA,淺度睡眠時為 0.8 mA,深度睡眠時僅為 10 µA。
  • 深度睡眠電流: ESP32 在僅維持 RTC 計時器與記憶體供電時,深度睡眠電流可低至 10 µA。若讓 ULP 協同處理器持續運作,耗電電流則會增加至約 100–150 µA。
  • 開發板功耗: 一般 ESP32 開發板即使進入深度睡眠,電流仍可能達到約 6.5 mA,約為晶片本身的 650 倍。主要原因是穩壓器、電源 LED 及 USB 轉 UART 晶片仍持續耗電。
  • 電池續航估算: 電池續航取決於平均耗電電流,而不只是深度睡眠電流。例如,客製化 ESP32 電路板每 10 分鐘喚醒 3 秒,平均電流為 0.615 mA,使用 1,600 mAh 電池時,理論上可運作約 108 天。

根據 Espressif 資料表,ESP32 的耗電電流從 Wi-Fi 傳輸時的約 240 mA,到深度睡眠時僅 10 µA 不等。不過,這些數值只適用於 ESP32 晶片本身。模組或開發板的實際功耗可能高得多。

即使 ESP32 晶片本身已進入深度睡眠,一般開發板上的輔助元件,例如穩壓器、電源 LED 和 USB 轉 UART 晶片,仍會持續消耗電流。因此,開發板的耗電電流可能比單獨的 ESP32 晶片高出數百倍。

本指南將介紹:

  • ESP32 在各種電源模式下的耗電電流
  • 如何選擇睡眠模式,以及 ESP32 深度睡眠時的電流
  • 為何開發板在深度睡眠時仍消耗數毫安培,以及如何讓客製化 PCB 降至微安培等級
  • 如何根據平均電流估算電池續航時間

ESP32 各模式功耗的對數刻度圖

圖: ESP32 各模式功耗的對數刻度圖

ESP32 各模式功耗比較

ESP32 晶片的耗電電流約介於 240 mA 至 1 µA,取決於哪些功能區塊仍在供電。以下為 Espressif 對原始 ESP32 晶片提供的典型數值,並非模組或開發板的數值。

模式晶片典型電流條件
運作模式,Wi-Fi 傳輸240 mA802.11b、1 Mbps,輸出功率 +19.5 dBm
運作模式,Wi-Fi 接收95 至 100 mA802.11b/g/n 接收及監聽
運作模式,藍牙傳輸130 mA藍牙或低功耗藍牙(LE),0 dBm
數據機睡眠30 至 68 mA雙核心晶片的 CPU 以 240 MHz 運作,無線電關閉
數據機睡眠20 至 31 mA雙核心晶片的 CPU 以 80 MHz 運作,無線電關閉
淺度睡眠0.8 mACPU 暫停,RTC 記憶體與 RTC 周邊裝置持續運作
深度睡眠10 至 150 µA取決於哪些 RTC 功能區塊仍在供電
休眠模式5 µA僅 RTC 計時器
關閉電源1 µACHIP_PU 腳位維持低電位

注意

Espressif 使用「RTC」表示數位核心休眠時仍保持運作的低功耗電源域,其範圍不只包括實時時鐘。

ESP32 電源模式比較:各模式會保留哪些功能供電?

ESP32 支援五種電源模式:運作模式、數據機睡眠、淺度睡眠、深度睡眠及休眠模式。每種模式在功耗、保留的系統狀態及喚醒方式之間有不同的取捨。

ESP32 進入越深層的省電模式,就會關閉越多晶片功能,電流隨之下降,但喚醒後需要由韌體重新建立的狀態也會增加。

模式CPUWi-Fi 與藍牙持續運作的部分喚醒後的狀態
運作模式運作中開啟整顆晶片不適用
數據機睡眠運作中基頻與無線電關閉CPU、RAM 與數位周邊裝置無須重新啟動即可繼續運作
淺度睡眠暫停,時鐘閘控關閉RAM 與 CPU 狀態、RTC 記憶體、RTC 周邊裝置及 ULP 協同處理器從暫停的位置恢復運作
深度睡眠關閉供電關閉RTC 控制器、RTC 快速及慢速記憶體,以及 ULP 協同處理器重新執行開機程序;RTC 記憶體保留資料
休眠模式關閉供電關閉使用慢速時鐘的一個 RTC 計時器,以及部分 RTC GPIO重新執行開機程序;RTC 記憶體已關閉供電

淺度睡眠或深度睡眠期間都不會維持 Wi-Fi 與藍牙連線。如果裝置必須以低功耗狀態保持與無線存取點連線,Espressif 的 ESP-IDF 軟體框架建議同時啟用 Wi-Fi 數據機睡眠與自動淺度睡眠。

應該使用哪一種 ESP32 睡眠模式?

選擇取決於一個問題:裝置需要多頻繁地運作?兩次運作之間是否必須維持連線?

使用情境建議模式
必須保持 Wi-Fi 連線並回應傳入流量數據機睡眠搭配自動淺度睡眠
每隔幾秒運作一次,且必須保留 RAM 與程式狀態淺度睡眠
每隔幾分鐘或幾小時讀取資料,再傳送出去深度睡眠,保留 RTC 計時器與 RTC 記憶體
主 CPU 關閉時仍須監測感測器深度睡眠搭配 ULP 協同處理器
只需要計時器或 RTC GPIO 重新啟動,且不保留資料休眠模式
持續關閉,直到按鈕或監控晶片啟動裝置透過 CHIP_PU 關閉電源

選擇原則

睡眠時間達數分鐘或更長時,深度睡眠最有效率。若間隔很短,重新開機及重新連接 Wi-Fi 所需的能源可能超過深度睡眠節省的電量,這時淺度睡眠在整體上反而更省電。

ESP32 深度睡眠時消耗多少電流?

在晶片層級,ESP32 的深度睡眠電流介於 10 µA 至 150 µA,取決於哪些 RTC 功能區塊保持供電。只有 RTC 計時器與 RTC 記憶體仍在運作時,才適用 10 µA 這個數值。

ESP32 深度睡眠功耗

圖: ESP32 深度睡眠功耗

深度睡眠設定晶片典型電流保持供電的部分
RTC 計時器與 RTC 記憶體10 µA以計時器喚醒,資料保留於 RTC 記憶體
ULP 感測器監測模式100 µAULP 協同處理器採樣感測器,ADC 工作週期為 1%
ULP 協同處理器開啟150 µAULP 持續供電,GPIO 及 RTC I2C 周邊裝置可運作

ADC 是類比數位轉換器(analog-to-digital converter)的縮寫。ESP-IDF 預設會關閉所有未被已啟用喚醒來源使用的 RTC 電源域。

晶片在深度睡眠時電流仍高於 10 µA 的常見原因包括:

  • ext0 喚醒來源: 啟用 ext0 單一腳位外部喚醒時,ESP-IDF 會讓 RTC 周邊裝置在深度睡眠期間保持供電。
  • 觸控喚醒: 觸控感測器必須在深度睡眠期間持續量測才能喚醒晶片,因此會消耗電流。為降低睡眠電流,Espressif 在自家模組的量測中會關閉觸控喚醒。
  • RTC GPIO 上的拉升/拉低電阻: ESP-IDF 建議在進入深度睡眠前,隔離連接外部上拉或下拉電阻的 RTC GPIO。

ESP32-S3、ESP32-C3 和 ESP32-C6 等其他 ESP32 型號各有不同的睡眠電流規格,因此請查閱所用晶片的資料表。若想深入比較兩款熱門型號,請參閱我們的ESP32-C3 與 S3 比較指南。

為什麼 ESP32 開發板在深度睡眠時仍消耗數毫安培?

因為開發板上的輔助電路仍持續供電,所以在深度睡眠時仍會消耗數毫安培的電流。因此,開發者應直接量測裸模組或客製化 PCB 的電流,而不是使用評估開發板進行量測。

ESP32 開發板與客製化電路板的深度睡眠電流比較

圖: ESP32 開發板與客製化電路板的深度睡眠電流比較

許多低成本開發板的主要耗電來源是穩壓器、電源 LED 和 USB 轉 UART 橋接晶片。橋接晶片會將 USB 轉換成用於燒錄程式的通用非同步收發器(UART)介面。

開發板上的耗電來源典型耗電電流數據依據
AMS1117-3.3 穩壓器靜態電流 5 mA,最高 11 mAAMS1117 資料表,輸入與輸出電壓差為 1.5 V 至 12 V
搭配 1 kΩ 電阻的電源 LED約 1.3 mA(3.3 V − 2.0 V)÷ 1 kΩ,假設正向電壓為 2.0 V
CP2102N USB 轉 UART 橋接晶片USB 暫停時為 195 µA,維持重置時為 1.3 mACP2102N 資料表,由 3.3 V 電源軌供電時
深度睡眠中的 ESP32 晶片10 µAESP32 資料表,RTC 計時器與 RTC 記憶體
總計約 6.5 mA約為晶片本身電流的 650 倍

這些元件常見於許多開發板,但並非每塊板都如此,因此請先檢查原理圖。我們的ESP32 開發板選擇指南比較了常見的開發板。若要量測微安培等級的電流,應使用裸模組或客製化電路板。

如何降低客製化 PCB 上的 ESP32 功耗

當穩壓器、電源及睡眠期間的負載都選用低耗電元件時,客製化 PCB 的深度睡眠功耗便能接近晶片本身的數值。

依靜態電流與輸出電流選擇穩壓器

靜態電流是穩壓器為維持自身運作所消耗的電流,在深度睡眠時,這部分會直接加到 ESP32 的最低耗電電流上。穩壓器還必須承受傳輸時的峰值電流;Espressif 建議使用額定輸出電流至少 500 mA 的 3.3 V 電源。

穩壓器典型靜態電流額定輸出電流是否適合電池供電的 ESP32
AMS1117-3.35 mA1 A不適合:靜態電流是晶片 10 µA 的 500 倍
MCP1700-3.31.6 µA250 mA不適合:輸出電流低於建議的 500 mA
RT9080-332 µA600 mA適合:符合兩項要求

選擇原則: 選擇靜態電流最低、同時符合 500 mA 額定輸出電流要求,並能在電池最低工作電壓下維持穩壓的元件。

壓差(Dropout Voltage)決定穩壓器所需的最低輸入電壓。RT9080 在 600 mA 下的壓差為 0.31 V,表示滿載時若要輸出 3.3 V,輸入約需 3.6 V。AMS1117 在 800 mA 下的典型壓差為 1.1 V,因此需要約 4.4 V 輸入,已高於鋰離子電池完全充電時的 4.2 V。若輸入電壓較高,具備輕載模式的降壓轉換器(Buck Converter)可能比低壓差穩壓器(LDO)更有效率。

為傳輸峰值電流與低電池電壓配置電源

即使是低功耗電源,也必須能在短時間內提供數百毫安培的電流:

  • 峰值電流: ESP32-WROOM-32E 資料表列出,在 +19.5 dBm 的 802.11b 傳輸期間,峰值電流為 379 mA。額定輸出 250 mA 的穩壓器可能在這段突發傳輸期間失去穩壓能力。
  • 儲能電容: Espressif 硬體設計指南建議在主要電源輸入端配置至少 10 µF 的電容,並在數位電源接腳附近配置 0.1 µF 電容。
  • 低電壓重置: Espressif 建議在電池供電設計中使用電源電壓監控晶片,當電壓低到不足以啟動晶片時,讓 CHIP_PU 保持低電位。

如何根據平均電流計算 ESP32 電池續航時間

電池續航取決於平均電流,而不只是深度睡眠的電流數值。先計算完整週期中的運作及睡眠平均電流,再以可用電池容量除以平均電流。

ESP32 單次喚醒週期中的電流變化

圖: ESP32 單次喚醒週期中的電流變化

  • 平均電流 =(運作電流 × 運作時間 + 睡眠電流 × 睡眠時間)÷ 週期時間
  • 電池續航時間(小時) =可用容量(mAh)÷ 平均電流(mA)

以下為一個計算示例,假設條件如下:

  • 喚醒週期: 每 10 分鐘讀取一次數據,每次喚醒 3 秒,假設運作期間平均電流為 120 mA,介於晶片無線通訊模式的 95 至 240 mA 範圍內。
  • 睡眠電流: 客製化電路板為 15 µA,其中晶片為 10 µA,並假設穩壓器、監控晶片及漏電電流合計為 5 µA。
  • 電池容量: 假設 2,000 mAh 電池按 80% 折減後,可用容量為 1,600 mAh。

客製化電路板在喚醒期間消耗 120 mA × 3 s = 360 mA·s,在睡眠期間消耗 0.015 mA × 597 s = 8.96 mA·s。平均電流為 368.96 mA·s ÷ 600 s = 0.615 mA,因此 1,600 mAh ÷ 0.615 mA 約等於 2,600 小時。

設計類型睡眠電流喚醒間隔平均電流預估續航時間
客製化電路板15 µA10 分鐘0.615 mA約 2,600 小時,即 108 天
開發板6.5 mA10 分鐘7.07 mA約 226 小時,即 9.4 天
客製化電路板15 µA60 分鐘0.115 mA約 13,900 小時,即 1.6 年

在客製化電路板上,每個週期中短短 3 秒的喚醒時間,就佔了約 98% 的耗電量。因此,縮短喚醒時間或降低喚醒頻率,是下一步改善的方向。

如何量測 ESP32 的平均電流

只在深度睡眠時使用萬用電表讀取一次電流,並不能代表平均耗電電流。應改用以下方法:

量測 ESP32 平均電流

圖: 使用電流表的量測配置

  • 量測正確的硬體: 使用裸模組或客製化電路板,而非開發板。
  • 涵蓋完整電流範圍: 使用電源分析儀或源測量單元,連續記錄從微安培到數百毫安培的電流變化。
  • 留意負載電壓降: 萬用電表微安培量程中的分流電阻可能產生足夠的壓降,使晶片在傳輸期間因供電不足而重置。
  • 對完整週期取平均值: 記錄數個完整喚醒週期,而不是只量測單一時間點。

JLCPCB PCB 組裝中的 ESP32 低功耗設計

JLCPCB 透過先進的表面黏著技術(SMT)生產線及嚴格的製程控制,協助確保低功耗電路板上從 ESP32 模組到穩壓器的焊點品質一致。

JLCPCB 支援細間距SMT 組裝,標準 PCBA 的 IC 最小腳距為 0.35 mm,經濟型 PCBA 則為 0.40 mm。在確定物料清單(BOM)之前,可使用JLCPCB 零件庫查詢 ESP32 模組及低靜態電流穩壓器的庫存與封裝資訊。

JLCPCB PCBA 組裝服務橫幅
將您的 ESP32 低功耗設計轉化為 PCBA 成品
取得 PCBA 報價
  • 從 ESP32 模組、低靜態電流穩壓器,到細間距 SMT 元件,JLCPCB 可協助您將低功耗 PCB 設計製作成已組裝的電路板。

結論

ESP32 的功耗取決於運作模式及電路板設計:晶片在傳輸時消耗約 240 mA,深度睡眠時為 10 µA,但輔助電路可能使整塊開發板的睡眠電流提高至數毫安培。

當裝置需要睡眠數分鐘或更久時,應使用深度睡眠模式,並選用靜態電流僅為微安培等級、但仍能提供 500 mA 輸出電流的穩壓器。以平均電流而非單一睡眠電流數值進行設計,才能更貼近實際地估算電池續航時間。

設計完成後,可將檔案上傳至 JLCPCB,查看組裝服務選項並立即取得報價。

ESP32 功耗常見問題

問:ESP32 深度睡眠時消耗多少電流?

根據 Espressif 資料表,當只有 RTC 計時器及 RTC 記憶體保持供電時,ESP32 晶片電流約為 10 µA。若 ULP 協同處理器持續運作,電流約為 100–150 µA。

問:為什麼我的 ESP32 在深度睡眠時仍消耗數毫安培?

通常是開發板,而非晶片本身造成的。即使 ESP32 已進入睡眠,穩壓器的靜態電流、電源 LED 及 USB 轉 UART 橋接晶片仍可能持續耗電。

問:ESP32 在深度睡眠時仍會保持 Wi-Fi 連線嗎?

不會。深度睡眠及淺度睡眠均不會維持 Wi-Fi 或藍牙連線。如需以低功耗保持連線,應使用 Wi-Fi 數據機睡眠並搭配自動淺度睡眠。

問:淺度睡眠與深度睡眠,哪一種更省電?

就晶片本身而言,深度睡眠約為 10 µA,淺度睡眠則為 0.8 mA。不過,若睡眠時間很短,重新啟動及重新連線所需的能源可能使淺度睡眠整體上更有效率。

問:ESP32 使用電池可以運作多久?

取決於平均電流。一塊睡眠電流為 15 µA、每 10 分鐘以 120 mA 喚醒 3 秒的客製化電路板,平均電流為 0.615 mA;使用 1,600 mAh 電池時,續航約為 108 天。

持續學習