Poniższy kod jest wsadem do restartera NODa modularnego BM-NODE >>> viewtopic.php?t=16
Mikrokontroler programujemy za pomocą dowolnego programatora, np Arduine IDE następującym kodem:
Kod: Zaznacz cały
#include "LowPower.h"
int h=8; // hours
int m=0; // minutes
int sleepTime = (h*3600)+(m*60);
void setup()
{
Serial.begin(9600);
pinMode(2, OUTPUT);
digitalWrite(2, HIGH);
}
void loop()
{
Serial.println("Reset 2s on GPIO2"); // pin 5
digitalWrite(2, LOW); // reset
delay(2000);
digitalWrite(2, HIGH); // koniec resetu
Serial.print("Sleep for ");
Serial.print(sleepTime);
Serial.println("s");
delay(100);
gosleep();
}
void gosleep()
{
for(int i=1; i<=int(sleepTime/8);i++)
LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF); //przełącz mikrokontroler w tryb Power-down na 8 sekund,
//wyłączając ADC i BoD
Serial.print("Wake up after ");
Serial.print(sleepTime);
Serial.println("s");
}

Rozbudowując ten kod można oczywiście restartować tylko jak się nod zawiesi, tylko ze czasami potrafi się zawiesić w taki sposób, że sygnały na pinach są prawidłowe i wtedy klapa...
PS. Jesli wymagane jest uzupełnienie, coś niejasne? pisać
