0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

技術(shù)分享 | 這么“省”是不是有點(diǎn)過(guò)頭了?

啟明云端 ? 2023-03-15 14:21 ? 次閱讀

ESP32 是設(shè)計(jì)用來(lái)應(yīng)對(duì)移動(dòng)設(shè)備、可穿戴電子設(shè)備和物聯(lián)網(wǎng)IoT芯片,作為一款超低功耗芯片,具有許多特定,比如精細(xì)的時(shí)鐘門(mén)控、節(jié)能模式和動(dòng)態(tài)電壓調(diào)整等。

在使用超低功耗的IoT傳感器Hub應(yīng)用時(shí),ESP32只有在某些特定情況下才會(huì)被周期性喚醒,能夠極大地降低消耗。通過(guò)調(diào)整射頻放大器的輸出功率,還能實(shí)現(xiàn)通信距離、數(shù)據(jù)傳輸速度和功耗的最佳平衡。


ESP32先進(jìn)的電源管理技術(shù),可以在不同的功耗模式之間切換,樂(lè)鑫目前的ESP系列芯片都支持三種低功耗模式:

Modem-sleep 模式:CPU 可運(yùn)行,時(shí)鐘頻率可配置。Wi-Fi 及 Bluetooth LE 的基帶和射頻關(guān)閉, 但 Wi-Fi 或 Bluetooth LE 可保持連接。

Light-sleep 模式:CPU 暫停運(yùn)行。任何喚醒事件(MAC、主機(jī)、RTC 定時(shí)器或外部中斷)都會(huì)喚 醒芯片。Wi-Fi 或 Bluetooth LE 可保持連接。

Deep-sleep 模式:CPU 和大部分外設(shè)都會(huì)掉電,只有 RTC 存儲(chǔ)器處于工作狀態(tài)。Wi-Fi 連接數(shù)據(jù) 存儲(chǔ)在 RTC 中。RTC 時(shí)鐘定時(shí)器或RTC GPIO 可以將芯片從 Deep-sleep 模式中喚醒。

01

2464c6d6-c2e1-11ed-ad0d-dac502259ad0.jpg

02

248d371a-c2e1-11ed-ad0d-dac502259ad0.jpg

03

24a96390-c2e1-11ed-ad0d-dac502259ad0.jpg

04

24d1a4d6-c2e1-11ed-ad0d-dac502259ad0.jpg

不同模式下的ESP32功能框圖

其中在 Modem-sleep 模式和 Light-sleep 模式下WiFi、藍(lán)牙可以保持連接(詳細(xì)功耗數(shù)據(jù)可以參考規(guī)格書(shū))以ESP32為例,功耗可以參考下表

24e7b55a-c2e1-11ed-ad0d-dac502259ad0.png

Light-sleep 模式下保持連接

硬件準(zhǔn)備

ESP32/ESP32C3/ESP32S3系列模組既支持外置 32.768 kHz 的時(shí)鐘振蕩器作為 RTC 睡眠時(shí)鐘,也支持外 部激勵(lì)信號(hào)(如有源晶振)作為 RTC 睡眠時(shí)鐘。外置 32.768 kHz 晶振的電路如下圖所示:

25218b7c-c2e1-11ed-ad0d-dac502259ad0.png

32.768 kHz 晶振選擇要求:

等效內(nèi)阻 (ESR) ? 70 K?。

兩端負(fù)載電容值根據(jù)晶振的規(guī)格要求進(jìn)行配置。

并聯(lián)電阻 R18 用于偏置晶振電路,電阻值要求 5 M? < R18 ? 10 M?。

ESP32-D0WD-V3 外接 32.768 kHz 晶振時(shí),并聯(lián)的電阻必須上件;ESP32 系列其他芯片建議預(yù)留。

軟件配置

編譯時(shí)可使用CONFIG_PM_ENABLE選項(xiàng)啟用電源管理功能。

啟用電源管理功能將會(huì)增加中斷延遲。額外延遲與多個(gè)因素有關(guān),例如:CPU頻率、單/雙核模式、是否需要進(jìn)行頻率切換等。CPU 頻率為 240 MHz 且未啟用頻率調(diào)節(jié)時(shí),最小額外延遲為0.2 us;如果啟用頻率調(diào)節(jié),且在中斷入口將頻率由40 MHz 調(diào)節(jié)至 80 MHz,則最大額外延遲為 40 us。


通過(guò)調(diào)用 esp_pm_configure()函數(shù)可以在應(yīng)用程序中啟用動(dòng)態(tài)調(diào)頻(DFS) 功能和自動(dòng)Light-sleep 模式。此函數(shù)的參數(shù) esp_pm_config_t 定義了頻率調(diào)節(jié)的相關(guān)設(shè)置。在此參數(shù)結(jié)構(gòu)中,需要初始化以下三個(gè)字段:

Max_freq_mhz:最大CPU 頻率 (MHz),即獲取 ESP_PM_CPU_FREQ_MAX 鎖后所使用的頻率。該字段通常設(shè)置為 CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ。

Min_freq_mhz:最小CPU 頻率 (MHz),即僅獲取 ESP_PM_APB_FREQ_MAX 鎖后所使用的頻率。該字段可設(shè)置為晶振 (XTAL) 頻率值,或者 XTAL 頻率值除以整數(shù)。注意,10 MHz 是生成 1 MHz 的 REF_TICK 默認(rèn)時(shí)鐘所需的最小頻率。

Light_sleep_enable:沒(méi)有獲取任何管理鎖時(shí),決定系統(tǒng)是否需要自動(dòng)進(jìn)入Light-sleep 狀態(tài) (true/false)。

如果在menuconfig中啟用了CONFIG_PM_DFS_INIT_AUTO選項(xiàng),最大 CPU 頻率將由CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ設(shè)置決定,最小 CPU 頻率將鎖定為 XTAL 頻率。


需要注意的是

自動(dòng) Light-sleep 模式基于FreeRTOS Tickless Idle功能,因此如果在menuconfig 4中沒(méi)有啟用CONFIG_FREERTOS_USE_TICKLESS_IDLE選項(xiàng),在請(qǐng)求自動(dòng) Light-sleep 時(shí),esp_pm_configure()將會(huì)返回 ESP_ERR_NOT_SUPPORTED錯(cuò)誤。Light-sleep 狀態(tài)下,外設(shè)設(shè)有時(shí)鐘門(mén)控,不會(huì)產(chǎn)生來(lái)自GPIO 和內(nèi)部外設(shè)的中斷。睡眠模式文檔中所提到的喚醒源可用于從 Light-sleep 狀態(tài)觸發(fā)喚醒。


Menuconfig配置

253c74f0-c2e1-11ed-ad0d-dac502259ad0.png

256b3646-c2e1-11ed-ad0d-dac502259ad0.png

259d0b08-c2e1-11ed-ad0d-dac502259ad0.png

263ca79e-c2e1-11ed-ad0d-dac502259ad0.png

藍(lán)牙還需要配置 Modem-sleep 相關(guān)配置

27010a08-c2e1-11ed-ad0d-dac502259ad0.png

具體可以參考ESP-IDF下的 power_save 例程

27270dac-c2e1-11ed-ad0d-dac502259ad0.png

如果您對(duì) 樂(lè)鑫Light-sleep保持WiFi連接感興趣,或?qū)で笊虡I(yè)項(xiàng)目合作,請(qǐng)后臺(tái)私信聯(lián)系。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2911

    文章

    44837

    瀏覽量

    375213
  • ESP32
    +關(guān)注

    關(guān)注

    18

    文章

    971

    瀏覽量

    17419
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ADS8556電路,測(cè)干電池電壓得到的結(jié)果有上下0.01V的偏差,是不是太大?

    我的ADS8556電路,測(cè)干電池電壓得到的結(jié)果有上下0.01V的偏差,是不是太大?
    發(fā)表于 01-15 08:07

    const定義的是不是常量

    C語(yǔ)言是如何定義常量的?const定義的算不算是常量? 常見(jiàn)的有這么幾種方式。 首先就是宏定義,使用 define 來(lái)定義。 宏的特點(diǎn)就是在預(yù)處理的時(shí)候被替換,比如這個(gè)地方的 SIZE,預(yù)處理后就會(huì)
    的頭像 發(fā)表于 01-14 11:35 ?62次閱讀

    aic23b的AD和DA輸入輸出數(shù)據(jù)總在64000左右,AD設(shè)置的是16位,為什么才進(jìn)來(lái)的數(shù)都這么大,是不是配置不對(duì)?

    你好,aic23b的AD和DA輸入輸出數(shù)據(jù)總在64000左右,AD設(shè)置的是16位,為什么才進(jìn)來(lái)的數(shù)都這么大,是不是配置不對(duì)? 還有就是,輸入電壓和采樣值之間的對(duì)應(yīng)關(guān)系是什么?
    發(fā)表于 11-05 06:53

    揭秘貼片功率電感發(fā)燙究竟是不是燒壞了

    電子發(fā)燒友網(wǎng)站提供《揭秘貼片功率電感發(fā)燙究竟是不是燒壞了.docx》資料免費(fèi)下載
    發(fā)表于 09-30 14:44 ?0次下載

    THS3091放大脈寬是1ns的脈沖,脈沖的脈寬展寬,是不是THS3091的壓擺率不夠?

    用THS3091,放大脈寬是1ns的脈沖,脈沖的脈寬展寬,是不是THS3091的壓擺率不夠。 1ns脈寬的脈沖,是不是壓擺率=2×pi×f×Vpk要大于10000V/us,
    發(fā)表于 08-19 06:02

    放大器工作點(diǎn)過(guò)高會(huì)引起什么失真

    在電子電路中,放大器是一種非常重要的元件,它能夠接收一個(gè)電信號(hào)并將其轉(zhuǎn)換為更大的電流或電壓信號(hào)。放大器的性能受到許多因素的影響,其中之一就是工作點(diǎn)的選擇。工作點(diǎn)過(guò)高是指放大器的靜態(tài)工作電流或電壓超過(guò)
    的頭像 發(fā)表于 08-06 15:29 ?788次閱讀

    谷景告訴你屏蔽繞線功率電感是不是感量越大性能越好

    谷景告訴你屏蔽繞線功率電感是不是感量越大性能越好 編輯:谷景電子 屏蔽繞線功率電感是一種普遍的電路電感元件,它對(duì)于電路運(yùn)行的穩(wěn)定性特別重要。而電感量作為屏蔽繞線功率電感的一個(gè)性能指標(biāo),也是我們?cè)谧?/div>
    的頭像 發(fā)表于 06-10 18:48 ?566次閱讀

    STM32G0如果只執(zhí)行寫(xiě)保護(hù)編程時(shí),先擦除選項(xiàng)字節(jié),此時(shí)讀保護(hù)字節(jié)是FF,那是不是就讀保護(hù)生效

    如果只執(zhí)行寫(xiě)保護(hù)編程時(shí),先擦除選項(xiàng)字節(jié),此時(shí)讀保護(hù)字節(jié)是FF,那是不是就讀保護(hù)生效?程序再修改為A5,會(huì)不會(huì)就引起FLASH整塊擦除?不想修改寫(xiě)保護(hù)會(huì)引起FLASH擦除,是不是不行?
    發(fā)表于 05-20 08:17

    STVD是不是不支持C99?

    內(nèi)容如標(biāo)題所示,麻煩有懂的朋友告訴下我,這個(gè)問(wèn)題花費(fèi)我很多時(shí)間。 不知道STVD是不是不支持C99??
    發(fā)表于 05-16 08:04

    請(qǐng)問(wèn)STM32Cube包含的FATFS例程是不是已經(jīng)支持8G以上的SD卡?

    STM32Cube包含的FATFS例程是不是已經(jīng)支持8G以上的SD卡? 我手頭沒(méi)有合適的卡做測(cè)試,有人知道么 stm324xg_eval_sd.c 文件的uint8_t
    發(fā)表于 05-16 06:18

    RC522寫(xiě)塊操作是不是有什么限制?

    問(wèn)一下RC522增減值是算寫(xiě)塊的一種操作,還是和讀寫(xiě)塊一樣通過(guò)命令操作卡片,如果是寫(xiě)塊操作,是不是有什么限制,沒(méi)有的話增減值是不是只是寫(xiě)值而已,不太了解增減值
    發(fā)表于 04-19 06:38

    共模電感是不是感值越大越好

    電子發(fā)燒友網(wǎng)站提供《共模電感是不是感值越大越好.docx》資料免費(fèi)下載
    發(fā)表于 03-29 14:38 ?2次下載

    一文看懂插件環(huán)形電感線圈究竟是不是隨便繞的

    在插件環(huán)形電感線圈的制造過(guò)程中,繞線是非常重要的一個(gè)環(huán)節(jié)。插件環(huán)形電感線圈繞線看起來(lái)很容易的一個(gè)步驟,但對(duì)于插件環(huán)形電感線圈的性能卻有著特被重要的影響。那么,你覺(jué)得插件環(huán)形電感線圈繞線是不是可以隨便繞制呢?
    的頭像 發(fā)表于 03-12 19:19 ?1719次閱讀
    一文看懂插件環(huán)形電感線圈究竟<b class='flag-5'>是不是</b>隨便繞的

    浪涌保護(hù)器安培是不是越大越好?

    浪涌保護(hù)器安培是不是越大越好? 浪涌保護(hù)器是一種用于保護(hù)電子設(shè)備免受電力系統(tǒng)中的浪涌電流或電壓峰值的裝置。它們能夠?qū)⑦^(guò)高的電壓或電流引導(dǎo)到地線,并確保設(shè)備的正常運(yùn)行。然而,浪涌保護(hù)器的安培值并不總是
    的頭像 發(fā)表于 02-05 14:55 ?1658次閱讀

    浪涌電流是不是啟動(dòng)電流?

    浪涌電流是不是啟動(dòng)電流? 浪涌電流不是啟動(dòng)電流。浪涌電流是指在電器設(shè)備開(kāi)關(guān)或連接電源時(shí)的瞬時(shí)電流峰值。啟動(dòng)電流是指電動(dòng)機(jī)或其他大功率設(shè)備在啟動(dòng)時(shí)需要的電流。 當(dāng)電器設(shè)備啟動(dòng)或重新連接到電源時(shí),通常會(huì)
    的頭像 發(fā)表于 02-05 14:55 ?1328次閱讀