Bonjour jackk
Merci d'avoir répondu
mais j'avoue ne pas comprendre l'astuce pour le temps plus long
dans l'exemple ci-dessous , le temps de sommeil est de 30s
or je ne vois pas quel est l’intérêt de compter le nb de mise en sommeil de l'ESP32
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
|
#define uS_TO_S_FACTOR 1000000 /* Conversion factor for micro seconds to seconds */
#define TIME_TO_SLEEP 30 /* Time ESP32 will go to sleep (in seconds) */
#define Orange_Led 33
RTC_DATA_ATTR int bootCount = 0;
void print_wakeup_reason(){
esp_sleep_wakeup_cause_t wakeup_reason;
wakeup_reason = esp_sleep_get_wakeup_cause();
switch(wakeup_reason)
{
case 1 : Serial.println("Wakeup caused by external signal using RTC_IO"); break;
case 2 : Serial.println("Wakeup caused by external signal using RTC_CNTL"); break;
case 3 : Serial.println("Wakeup caused by timer"); break;
case 4 : Serial.println("Wakeup caused by touchpad"); break;
case 5 : Serial.println("Wakeup caused by ULP program"); break;
default : Serial.println("Wakeup was not caused by deep sleep"); break;
}
}
void setup()
{
Serial.begin(115200);
delay(1000); //Take some time to open up the Serial Monitor
pinMode(Orange_Led, OUTPUT);
//Increment boot number and print it every reboot
++bootCount;
Serial.println("Boot number: " + String(bootCount));
print_wakeup_reason();
esp_sleep_enable_timer_wakeup(TIME_TO_SLEEP * uS_TO_S_FACTOR);
Serial.println("Setup ESP32 to sleep for every " + String(TIME_TO_SLEEP) +
" Seconds");
Fast_Blink_LED();
Serial.println("Going to sleep now");
esp_deep_sleep_start();
Serial.println("This will never be printed");
}
void loop()
{
//This is not going to be called
}
void Fast_Blink_LED(void)
{
digitalWrite(Orange_Led, HIGH);
delay(200);
digitalWrite(Orange_Led, LOW);
delay(200);
digitalWrite(Orange_Led, HIGH);
delay(200);
digitalWrite(Orange_Led, LOW);
delay(200);
} |
et si je veux un temps de sommeil de 12h comment dois-je faire svp ?
mettre par ex :
#define TIME_TO_SLEEP 43200
pascal
Partager