色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

ESP32深度睡眠的教程

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-12-11 17:48 ? 次閱讀

步驟1:所需的零件

ESP32深度睡眠的教程

在本教程中,我將使用以下部分,因此,如果您想自己嘗試本教程,則需要以下內(nèi)容:

任何ESP32開發(fā)板?http://educ8s.tv/part/ESP32

A Firebeetle ESP32開發(fā)板?http://educ8s.tv/part/FireBeetle

面包板?http://educ8s.tv/part/LargeBreadboard

電線?http://educ8s。電視/零件/電線

LED?http://educ8s.tv/part/LEDs

萬用表?http://educ8s.tv/part/Multimeter

步驟2:在ESP32芯片內(nèi)部

在ESP32芯片內(nèi)部,我們可以找到兩種處理方式內(nèi)核,RAMROM存儲(chǔ)器,WiFi模塊,藍(lán)牙模塊,用于加密應(yīng)用程序的硬件加速模塊,RTC模塊以及許多外圍設(shè)備。在RTC模塊內(nèi)部,我們可以找到一個(gè)PMU(相量測(cè)量單元),它是一種小型且低功耗的32位協(xié)處理器以及8Kbs的RAM存儲(chǔ)器。少量的內(nèi)存非常有用,因?yàn)槟芸炀蜁?huì)發(fā)現(xiàn)。還要注意,即使ESP32芯片的RTC內(nèi)存也比Arduino Uno的內(nèi)存大4倍。

WiFi模塊,處理內(nèi)核和藍(lán)牙模塊需要大量電流才能運(yùn)行。因此,如果我們想節(jié)省電量,則必須在不使用它們時(shí)將其禁用。這就是我們現(xiàn)在要做的。我們將把ESP32設(shè)置為Deep – Sleep模式,在該模式下,除RTC模塊外,所有功能都將禁用。有輕度睡眠模式和深度睡眠模式。在深度睡眠模式下,ESP32功耗最低。 在深度睡眠模式下僅需要0.01 mAs的電流,這就是我們今天要嘗試的原因。

步驟3:ESP32深度睡眠模式

在這種模式下,如前所述,所有功能均被禁用。 CPU核心,WiFI模塊,藍(lán)牙模塊,外圍設(shè)備等。連同CPU一樣,芯片的主內(nèi)存也被禁用,因此存儲(chǔ)在內(nèi)存中的所有內(nèi)容都會(huì)永遠(yuǎn)丟失。處于深度睡眠模式時(shí),唯一仍可以工作的模塊是RTC模塊,超低功耗協(xié)處理器及其內(nèi)存!因此,如果將要在深度睡眠模式下生存的數(shù)據(jù)保存到RTC內(nèi)存中,則在喚醒芯片后它們將保持完整。

有三種方法可以喚醒芯片。我們可以使用計(jì)時(shí)器,GPIO引腳或協(xié)處理器。

今天,我們將學(xué)習(xí)如何使用計(jì)時(shí)器在特定時(shí)間后喚醒芯片。讓我們看一個(gè)示例。

步驟4:深度睡眠示例

我已將兩個(gè)LED連接到此ESP32板。 ESP32開機(jī)時(shí),黃色LED會(huì)亮三秒鐘,然后進(jìn)入深度睡眠模式3秒鐘。喚醒后,它會(huì)點(diǎn)亮綠色指示燈3秒鐘,然后返回睡眠狀態(tài)。從現(xiàn)在開始,它只會(huì)閃爍綠色LED,因此該芯片記住這不是它第一次啟動(dòng),因?yàn)槲覀冋谑褂肦TC內(nèi)存來存儲(chǔ)整數(shù)值。

讓我們快速看一下。在這個(gè)項(xiàng)目的代碼。如您所見,代碼非常簡(jiǎn)單。為了使ESP32進(jìn)入深度睡眠模式,我們只需要兩行代碼。

esp_sleep_enable_timer_wakeup(TIME_TO_SLEEP * uS_TO_S_FACTOR);

esp_deep_sleep_start();

我們使用esp_sleep_enable_timer_wakeup函數(shù)啟用計(jì)時(shí)器,輸入以秒為單位的睡眠時(shí)間,然后調(diào)用esp_deep_sleep_start函數(shù)。而已!

#define uS_TO_S_FACTOR 1000000 /* Conversion factor for micro seconds to seconds */

#define TIME_TO_SLEEP 3 /* Time ESP32 will go to sleep (in seconds) */

RTC_DATA_ATTR int bootCount = 0;

盡管與執(zhí)行代碼有一點(diǎn)不同。當(dāng)我們使用深度睡眠功能時(shí),ESP32每次喚醒時(shí),都會(huì)再次執(zhí)行設(shè)置功能。從不調(diào)用循環(huán)函數(shù)。所有變量值都會(huì)丟失,除非我們使用此前綴將它們保存在RTC內(nèi)存中。在此示例中,我將bootCount int變量保存到RTC內(nèi)存中,以便程序知道它是否是第一次運(yùn)行并打開正確的LED。像往常一樣,您可以找到此示例附帶的示例代碼。

步驟5:功耗

現(xiàn)在讓我們看看該板的功耗。 ESP32處于活動(dòng)模式時(shí),會(huì)從電池汲取約60mAs的電流。 ESP32處于深度睡眠模式時(shí),它將消耗約19mAs的電流!這大大降低了電流消耗,但是該芯片的創(chuàng)建者聲稱在深度睡眠模式下需要0.01mA的電流。我們的設(shè)置有什么問題?

罪魁禍?zhǔn)资侵靼濉N沂褂玫氖荄OIT ESP32板,這是大約一年前上市的第一塊ESP32板。電路板的設(shè)計(jì)并未針對(duì)功耗進(jìn)行優(yōu)化,因此,即使在深度睡眠模式下,它也需要大量電流。幸運(yùn)的是,那里有設(shè)計(jì)更好的ESP32板。

例如,DFrobot的Firebeetle ESP32板設(shè)計(jì)得更好,當(dāng)使用3.3V電源供電時(shí),其深度睡眠電流僅為0.01mAs。如果我們使用之前使用的相同電池組為電路板供電,其輸出約為4.8V,則可以看到在活動(dòng)模式下的電流消耗為48mAs,而在深度睡眠模式下的電流僅為0.05mAs!印象深刻不是嗎!如果使用3.3V電池或電源,我們可以進(jìn)一步降低電路板的功耗。我將在以后的視頻中嘗試。在深度睡眠模式下,該板所需的0.05mAs電流是我在功能齊全的ESP32板(具有USB至串行驅(qū)動(dòng)器,調(diào)節(jié)器和電池電路)中消耗的最低電流。

如果您發(fā)現(xiàn)任何板子都能比Firebeetle板子取得更好的效果,請(qǐng)?jiān)谙旅娴脑u(píng)論欄中告訴我,我想嘗試一下。

Firebeetle ESP32板子的功耗在深度睡眠模式非常低。如果使用4節(jié)AA充電電池供電,則每天需要大約1.44毫安時(shí)。因此,從理論上講,如果將其置于深度睡眠模式,則這種具有2.500mAhs容量的移動(dòng)電源可以為該板供電近5年!當(dāng)然,我們將不時(shí)喚醒電路板以執(zhí)行需要更多功率的任務(wù),因此電池壽命將大大減少。

步驟6:深入研究睡眠錯(cuò)誤

不幸的是,ESP32的軟件和硬件尚未成熟。使用深度睡眠模式時(shí),我嘗試在兩個(gè)ESP32板上都出現(xiàn)了一個(gè)軟件或硬件錯(cuò)誤。隨機(jī)喚醒后,ESP32會(huì)進(jìn)入睡眠狀態(tài),并且不會(huì)再次喚醒。此錯(cuò)誤可能在幾次喚醒后或100次之后發(fā)生。它只是隨機(jī)的。

我發(fā)現(xiàn)的一個(gè)簡(jiǎn)單解決方案是在喚醒后和從RTC內(nèi)存讀取之前添加500ms的小延遲。這樣,項(xiàng)目就可以正常工作,但是,當(dāng)然,我們要付出的代價(jià)是減少了電池壽命,因?yàn)槊看螁拘褧r(shí)芯片處于活動(dòng)模式的時(shí)間要長(zhǎng)500ms。我認(rèn)為此錯(cuò)誤將在不久的將來通過新的軟件或硬件修復(fù)得到解決。

void setup(){

pinMode(GREEN_LED_PIN,OUTPUT);

pinMode(YELLOW_LED_PIN,OUTPUT);

delay(500);

if(bootCount == 0) //Run this only the first time

{

digitalWrite(YELLOW_LED_PIN,HIGH);

bootCount = bootCount+1;

}else

{

digitalWrite(GREEN_LED_PIN,HIGH);

}

delay(3000);

digitalWrite(GREEN_LED_PIN,LOW);

digitalWrite(YELLOW_LED_PIN,LOW);

esp_sleep_enable_timer_wakeup(TIME_TO_SLEEP * uS_TO_S_FACTOR);

esp_deep_sleep_start();

}

步驟7:最終想法

我已經(jīng)在項(xiàng)目中使用了深度睡眠功能。您還記得幾周前我發(fā)布的In-Paper電子書溫度計(jì)嗎?不更新時(shí)需要60mAs的電流。現(xiàn)在,使用芯片的深度睡眠功能,我設(shè)法將電流消耗降低到0.43mAs。因此,有了這種移動(dòng)電源,我們現(xiàn)在的電池壽命估計(jì)約為3個(gè)月。很好,不是嗎?

但是我認(rèn)為還有很多改進(jìn)的余地。我的電路中某處有小電流泄漏。如果我們可以減少它,我們可以使該項(xiàng)目用電池運(yùn)行一年以上!我認(rèn)為這太神奇了!我們現(xiàn)在有了一塊功能非常強(qiáng)大的板,功耗非常低。最好的是,我們要做的就是利用這一點(diǎn),只需使用兩行代碼!我將在以后的項(xiàng)目中大量使用此功能。

責(zé)任編輯:wv

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

    關(guān)注

    18

    文章

    971

    瀏覽量

    17201
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    esp32esp8266代碼共用嗎

    本文將介紹ESP32ESP8266兩款流行的微控制器在代碼共用性方面的可能性與差異性。 一、引言 隨著物聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,越來越多的智能設(shè)備開始進(jìn)入我們的生活。其中,ESP32ESP
    的頭像 發(fā)表于 08-19 18:23 ?1114次閱讀

    esp8266和esp32區(qū)別是什么

    以下是關(guān)于ESP8266和ESP32的主要區(qū)別: 處理器和架構(gòu) : ESP8266 :使用一個(gè)Tensilica L106 80MHz的處理器,屬于Xtensa架構(gòu)。 ESP32 :使
    的頭像 發(fā)表于 08-19 18:16 ?5243次閱讀

    esp32用什么軟件編程

    ESP32是一款由樂鑫(Espressif)推出的低功耗、高性能的Wi-Fi和藍(lán)牙雙模微控制器,廣泛應(yīng)用于物聯(lián)網(wǎng)、智能家居、智能穿戴等領(lǐng)域。要對(duì)ESP32進(jìn)行編程,需要選擇合適的編程軟件和開發(fā)環(huán)境
    的頭像 發(fā)表于 08-19 17:24 ?3407次閱讀

    ESP8266-12退出深度睡眠模式時(shí)掛起怎么解決?

    數(shù)據(jù)。 問題是,當(dāng)從深度睡眠中醒來時(shí),ESP8266會(huì)掛起。當(dāng)它處于深度睡眠狀態(tài)時(shí),紅色 LED 會(huì)變暗。當(dāng)它掛起時(shí),它會(huì)變成亮紅色,藍(lán)光
    發(fā)表于 07-22 06:26

    ESP8266 CH_PD引腳的作用是否與“深度睡眠”命令相同?

    SDK 功能system_deep_sleep ESP8266進(jìn)入深度睡眠模式。在RST引腳上的復(fù)位脈沖后,芯片將喚醒。 但是什么是CH_PD引腳功能呢?Simetimes那個(gè)標(biāo)記為CH_EN
    發(fā)表于 07-19 09:57

    ESP32-WROOM-32E、ESP32-WROOM-32D、ESP32-WROOM-32U 有什么區(qū)別?ESP32-WROOM-32 后綴字母代表的意思是?

    相信很多人心里都有這樣的疑問,今天就教大家怎么區(qū)分它們。 32D和32U是同一個(gè)芯片ESP32-D0WD的模組,主要區(qū)別的天線模式,分別是板載和IPEX外接天線。 32E是用的升級(jí)版的芯片
    的頭像 發(fā)表于 07-17 10:09 ?9377次閱讀
    <b class='flag-5'>ESP32</b>-WROOM-32E、<b class='flag-5'>ESP32</b>-WROOM-32D、<b class='flag-5'>ESP32</b>-WROOM-32U  有什么區(qū)別?<b class='flag-5'>ESP32</b>-WROOM-32 后綴字母代表的意思是?

    ESP8266上運(yùn)行AT命令固件,通過發(fā)送命令A(yù)T GSLP使其進(jìn)入深度睡眠狀態(tài),ESP8266如何從深度睡眠中醒來?

    我正在ESP8266上運(yùn)行 AT 命令固件。我可以通過發(fā)送命令 AT GSLP 使其進(jìn)入深度睡眠狀態(tài)。但是我如何從深度睡眠中醒來
    發(fā)表于 07-16 07:32

    當(dāng)ESP8285處于深度睡眠狀態(tài)時(shí),XPD_DCDC狀態(tài)是什么?

    我想知道當(dāng)ESP8285處于深度睡眠狀態(tài)時(shí),XPD_DCDC狀態(tài)是什么。 它是否處于高邏輯水平? 還是在高阻抗下? 換句話說:它是深度睡眠
    發(fā)表于 07-15 08:32

    ESP32 深度睡眠

    使用的是ESP32S2 idf 5.2.2 官方代碼歷程deep_sleep 進(jìn)入深度睡眠 睡眠后功耗為1.9mA,一直降不下去。
    發(fā)表于 07-11 09:50

    ESP32S2最小模塊,采用官方例子進(jìn)入深度睡眠,功耗為什么降不到和官方手冊(cè)一致

    使用的是ESP32S2 idf 5.2.2 官方代碼歷程deep_sleep 進(jìn)入深度睡眠 睡眠后功耗為1.9mA,一直降不下去。
    發(fā)表于 07-10 18:02

    請(qǐng)問ESP8266可以在深度睡眠期間連接到接入點(diǎn)嗎?

    ESP8266可以在深度睡眠期間連接到接入點(diǎn)嗎?
    發(fā)表于 07-08 08:09

    ESP8266在深度睡眠模式下是否會(huì)保持其GPIO狀態(tài)?

    我想知道是否有人知道ESP8266在深度睡眠模式下是否會(huì)保持其 GPIO 狀態(tài)。 簡(jiǎn)單示例:假設(shè)有一個(gè) LED 連接到 GPIO4 之一。我想點(diǎn)亮 LED,然后進(jìn)入深度
    發(fā)表于 07-08 06:39

    樂鑫esp32系列在睡眠模式下保持藍(lán)牙連接的功耗測(cè)試

    本教程適用于ESP32-S3、ESP32-C3、ESP32-C6睡眠模式介紹ESP32系列常見的休眠方式有三種,分別為Modem-sleep
    的頭像 發(fā)表于 06-21 08:04 ?2664次閱讀
    樂鑫<b class='flag-5'>esp32</b>系列在<b class='flag-5'>睡眠</b>模式下保持藍(lán)牙連接的功耗測(cè)試

    使用esp32c3,用不同的io口喚醒深度睡眠,發(fā)現(xiàn)喚醒的原因都是io0喚醒的,這是怎么回事?

    使用esp32c3,用不同的io口喚醒深度睡眠,發(fā)現(xiàn)喚醒的原因都是io0喚醒的,這是怎么回事?
    發(fā)表于 06-18 08:25

    esp32c3喚醒深度睡眠之后如何連接WiFi?

    我使用GPIO2來喚醒深度睡眠,喚醒之后使用wifi_init_sta()函數(shù)想連接WiFi,發(fā)現(xiàn)一直復(fù)位,如何解決這個(gè)問題? switch (esp
    發(fā)表于 06-18 07:37
    主站蜘蛛池模板: 无码国产成人777爽死在线观看| 最美白虎逼| 国产成人免费a在线视频app| 暖暖免费观看日本在线视频 | 永久免费在线看mv| 国产永久免费观看视频软件 | 成人国产在线观看| 暖暖 日本 视频 在线观看免费 | 久久青青草原| 亚洲中文有码字幕日本| 韩国伦理三级| 亚洲精品成A人在线观看| 国产精品九九久久| 色淫阁色九九| 俄罗斯bbbbbbbbb大片| 成人性视频全过程| 久久精品一区二区三区资源网| 亚洲欧美日韩高清中文在线| 国产精品嫩草影院一区二区三区| 欧美zzzoooxxx| 一道精品视频一区二区| 国产99在线视频| 明星三级电影| 阴茎插入阴道| 精品香蕉99久久久久网站| 窝窝影院午夜看片毛片| xxxxxl荷兰| 欧美影院在线观看完整版 mp4| 970女主播电台歌曲| 秋霞电影网午夜一级鲁丝片| CHINA学生白嫩| 欧美亚洲综合另类无码| 啊灬啊灬啊灬快高潮视频| 日本2021免费一二三四区| 扒开老师大腿猛进AAA片邪恶| 日本理伦片午夜理伦片| 青青草久久伊人| 古月娜下面好紧好爽| 无码人妻丰满熟妇区五十路久久| 国产学生无码中文视频一区| 亚洲九九视频|