Probleme avec la fonction millis()

Merci beaucoup voila grace a votre aide comment j'ai résolut mon problème

void loop() {

if (temps > 1000){
      digitalWrite(10,0);
    }

 if (recep.decode(&resul)){                                 
  
  
  if (resul.value == 0xFF30CF){                       // Un apuis sur 1 alume une led pendant 1 seconde 
    top_chrono();
    digitalWrite(10,1);
  } 

   if (resul.value == 0xFF18E7 && led2 ==0){          // Un apuis sur 2 alume la led un deuxieme apuis l'eteind
    (Serial.println("touche2"));
    digitalWrite (11,1);
    led2=1;
  } 
  else if (resul.value == 0xFF18E7 && led2 ==1){
    (Serial.println("touche2"));
    digitalWrite (11,0);
    led2=0;
  }


  delay(50);                    // evite les redondances
  recep.resume();               // Permet d'apuyer encore sur la telecomande sans cree une boucle infini
 }

Stop();
}


void top_chrono(){
start = millis();
}

void Stop(){
arret = millis();
temps = arret - start;
}

merci beaucoup infobarquee tu m'as fait réfléchir dans le bon sens et m'as donne les outils nécessaire pour pouvoir réaliser ça