Eteindre arduino avec Toggle bouton (On/Off)

Bonjour,
Je suis tout nouveau ici, j'ai cherché sur le forum des réponses à ma question, mais ca ne m'a pas tout à fait satisfait donc me voila !

J'ai un arduino Nano, et je voudrais a l'aide d'un toggle button (deux positions on/off), mettre en veille l'arduino et le rallumer. Sachant que je peux causer des dégâts sur mon arduino je suis venus ici pour m'assurer que je vais pas le mettre en veille de manière irreversible, et surtout savoir si c'est techniquement possible.

J'ai lu, ici Arduino Playground - ArduinoSleepCode , comment le mode veille marche mais par rapport à mon cas où le bouton gère à la fois le réveil et l'endormissement de l'arduino je ne sais pas si je peux l'appliquer

Voici Mon code

#include <avr/sleep.h>
#include <avr/power.h>
#include <SoftwareSerial.h>

#define ButtonInt 3

volatile int State;

void setup() {
  pinMode(ButtonInt,INPUT);
  attachInterrupt(digitalPinToInterrupt(ButtonInt),Switch, CHANGE);
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}

void Switch() {
  State=digitalRead(ButtonInt);
  if (State){
    sleep_disable()
  }
  else{
     set_sleep_mode(SLEEP_MODE_PWR_DOWN);
     sleep_enable();
     sleep_mode();
     sleep_disable();
  }
}

Qui est censé juste s'occuper du bouton pour le mettre en veille et le réveiller, merci d'avance de vos conseils. :wink:

bonjour,
un peu de lecture
http://playground.arduino.cc/Learning/ArduinoSleepCode

Merci de ta réponse, comme indiqué dans mon Post je suis allé sur ce site pour me documenter sur la chose, mais ca n'a pas éclairci mon problème. :s

Au sens ou je ne trouve pas que l'exemple en question soit clair, sachant qu'ici je n'ai pas besoin de Timer.

(Cela veut dire que mon code ne marche pas ? )

jamais testé via un bouton pour sortir d'un mode veille.
change CHANGE par LOW ou HIGH