В версии библиотеки 2.2.0-Beta добавлено 2 константы возвращаемые функцией sleep
MY_WAKE_UP_BY_TIMER — Проснулся по истечению таймера
MY_SLEEP_NOT_POSSIBLE — Вышел из функции, потому что сон в данный момент не возможен
Теперь обработчик должен выглядеть примерно так
1 2 3 4 5 6 7 8 9 10 11 12 13 |
switch ( sleep(digitalPinToInterrupt(DIGITAL_INPUT_SENSOR), CHANGE, SLEEP_TIME) ) { case MY_WAKE_UP_BY_TIMER: sendHeartbeat(); break; case MY_SLEEP_NOT_POSSIBLE: Serial.println("Unable to sleep ;-("); break; default: Serial.println("Sending a message with value = 1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"); send(msg.set(1)); } |