Error en programa modo sleep despertar por interrupción.

#include <VirtualWire.h>  //Libreria para los sensores RF

#include <LowPower.h>

                //Botones primer paso conectados en paralelo.
 int boton=10;  //Pin 11 digital para dos pulsadores en paralelo. pin 2 en la interrupcion "0"
 int boton1=11; //Pin 12 digital para dos pulsadores en paralelo. pin 3 en la interrupción "1"
 
 int lectura;   //Variable creada para almacenar la lectura de los dos primeros pulsadores en paralelo.
 int lectura1;  //Variable almacenar lectura de los segundos pulsadores conectados en paralelo.

 
 
 //int led1=2;    //Pines de arduino para cada led.
 int led2=3;
 int led3=4;
 int led4=5;
 int led5=6;
 int led6=7;
 int led7=8;
 int led8=14;  //Pin ánalogico convertido a digital.*/
  
 int buzzer=9;  // pin asignado al buzzer.
 
 int t=150;
 int t1=300;
 int t2=500; //tiempo para el buzzer.

 const int wakeUpPin = 2;//Instrucciones para la interrupción

  int contador = 0;
  int n = contador ;
[b][/b][u][b][i][/i][/b][/u]
 void setup()
{
                //Iniciamos el Serial y la comunicación por radiofrecuencia.
          
  Serial.begin(9600);
  Serial.write("Sistema encendido\n");
  vw_setup(2000);
  
  pinMode(boton, INPUT);   //Configuramos como entradas los pines 10 y 11, cada pin para cada par de pulsadores.
  pinMode(boton1, INPUT);

  pinMode( wakeUpPin, INPUT);  

 // pinMode(2, OUTPUT);  //Configuramos como salidas los pines 4, 5, y 6 de arduino para los leds
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);
  pinMode(8, OUTPUT);
  pinMode(14, OUTPUT);
  
  pinMode(9, OUTPUT);     //Configuramos como salida el pin 9 para el buzzer.  

  digitalWrite(9, HIGH);  //Buzzer activo tres pitidos solo al inicio.

    digitalWrite(6, HIGH);
    digitalWrite(5, HIGH); 
    delay (t1);
    
    digitalWrite(9, LOW);

    digitalWrite(6, LOW);
    digitalWrite(5, LOW);
    delay (t1);
    
    digitalWrite(9, HIGH);

    digitalWrite(7, HIGH);
    digitalWrite(4, HIGH);  
    delay (t1);
    
    digitalWrite(9, LOW);

    digitalWrite(7, LOW);
    digitalWrite(4, LOW);  
    delay (t1);
    
    digitalWrite(9, HIGH);
     
    digitalWrite(8, HIGH);
    digitalWrite(3, HIGH);  
    delay (t1);
    
    digitalWrite(9, LOW);

    digitalWrite(8, LOW);
    digitalWrite(3, LOW);   
    delay (t1);

    digitalWrite(9, HIGH);

    digitalWrite(14, HIGH);
    digitalWrite(2, HIGH);
    delay(t1);

    digitalWrite(9, LOW);

    digitalWrite(14, LOW);
    //digitalWrite(2, LOW);
    delay(t1);

   
}

void loop ()
{

        attachInterrupt( 0, servicioBoton, FALLING);
       LowPower.powerDown(SLEEP_FOREVER, ADC_OFF, BOD_OFF); 
       detachInterrupt(0); 

       if (n != contador){
        
       
    lectura=digitalRead(boton);      //pulsador B de activación de alarma.
    
    if(lectura==1){
      
    digitalWrite(9, HIGH);          //Buzer activo tres pitidos solo al inicio.
    //digitalWrite(2, HIGH);
    delay (t2); 
    digitalWrite(9, LOW);
    //digitalWrite(2, LOW);
    delay (t2);
    digitalWrite(9, HIGH);
    digitalWrite(3, HIGH);
    delay (t2);
    digitalWrite(9, LOW);
    digitalWrite(3, LOW);
    delay (t2);
    digitalWrite(9, HIGH);
    digitalWrite(4, HIGH);
    delay (t2);
    digitalWrite(9, LOW);
    digitalWrite(4, LOW);
    delay (t2);
    digitalWrite(9, HIGH);
    digitalWrite(5, HIGH);
    delay (t2);
    digitalWrite(9, LOW);
    digitalWrite(5, LOW);
    delay (t2);
    digitalWrite(9, HIGH);
    digitalWrite(6, HIGH);
    delay (t2);
    digitalWrite(9, LOW);
    digitalWrite(6, LOW);
    delay (t2);
    digitalWrite(9, HIGH);
    digitalWrite(7, HIGH);
    delay (t2);
    digitalWrite(9, LOW);
    digitalWrite(7, LOW);
    delay(t2);
    digitalWrite(9, HIGH);
    digitalWrite(8, HIGH);
    delay(t2);
    digitalWrite(9, LOW);
    digitalWrite(8, LOW);
    delay(t2);
    }
   }
    
  while(lectura==1)         //Alarma comienza a funcionar intermitentemente.
  {
    
    //digitalWrite(2, HIGH);
    digitalWrite(3, HIGH);
    digitalWrite(4, HIGH);
    digitalWrite(5, HIGH);
    digitalWrite(6, HIGH);
    digitalWrite(7, HIGH);
    digitalWrite(8, HIGH);
    digitalWrite (14, HIGH);
    delay(t);
    
    //digitalWrite(2, LOW);
    digitalWrite(3, LOW);
    digitalWrite(4, LOW);
    digitalWrite(5, LOW);
    digitalWrite(6, LOW);
    digitalWrite(7, LOW);
    digitalWrite(8, LOW);
    digitalWrite(14, LOW);
    delay(t);

    //digitalWrite(2, HIGH);
    digitalWrite(3, HIGH);
    digitalWrite(4, HIGH);
    digitalWrite(5, HIGH);
    digitalWrite(6, HIGH);
    digitalWrite(7, HIGH);
    digitalWrite(8, HIGH);
    digitalWrite (14, HIGH);
    delay(t);
 
    //digitalWrite(2, LOW);
    digitalWrite(3, LOW);
    digitalWrite(4, LOW);
    digitalWrite(5, LOW);
    digitalWrite(6, LOW);
    digitalWrite(7, LOW);
    digitalWrite(8, LOW);
    digitalWrite(14, LOW);
    delay(t2);
  
   send("Encender");          //Envia mensaje a la torre receptora para que se encienda.
  delay(500);
  
  lectura1=digitalRead(boton1);   //Pulsador A
   
    if(lectura1==1)               //S
    {
        
    //digitalWrite(2, LOW);
    digitalWrite(3, LOW);
    digitalWrite(4, LOW);
    digitalWrite(5, LOW);
    digitalWrite(6, LOW);
    digitalWrite(7, LOW);
    digitalWrite(8, LOW);
    digitalWrite(14, LOW);
    
    send("Apagar");

     
    break;
  }
  n = contador ;
        Serial.flush();
    
 }
  delay(1000);
 }

  //Función para enviar el mensaje al receptor RF
  
void send (char *message)
{
  vw_send((uint8_t *)message, strlen(message)); //Envia el mensaje
  vw_wait_tx(); //Espera hasta que se haya acabado de transmitir todo
  
  Serial.println(message); //Muestra el mensaje por Serial
}

void servicioBoton() 
   {   
    contador++ ;
   }

Y como adivinamos cual es el error si no te explicas?

UPS!! Pues se ha borrado el resto del mensaje.