This is an old revision of the document!
Codul din laboratoarele anterioare transmitea periodic pachete de date în rețea dar, în intervalele de timp dintre două transmisiuni succesive, cicla inutil. Acest lucru duce la un consum de energie ridicat, ce poate avea un impact semnificativ asupra timpului de viață al nodului senzorial în cazul în care acesta este alimentat de la o baterie.
Din acest motiv, este preferabil ca nodurile să intre într-o stare de low-power în momentele de inactivitate. Pentru aceasta, veți folosi o biblioteca ZigduinoSleep.
Codul pentru biblioteca ZigduinoSleep poate fi descărcat de aici.
Pentru a testa modul de sleep, putem folosi exemplul de mai jos:
#include <ZigduinoSleep.h> int led = 11; int state = 0; void setup() { pinMode(led, OUTPUT); Serial.begin(9600); Serial.println("Sleep test"); ZigduinoSleepInit(); } void loop() { ZigduinoSleepSet(1); //Code that is executed before sleep state ^= 1; if(state == 0) digitalWrite(led, HIGH); else digitalWrite(led, LOW); Serial.begin(9600); Serial.println("Test"); Serial.flush(); Serial.end(); //End of code ZigduinoSleep(); }