probleme programme 'multitache'

Bonjour, je sollicite votre attention car j'ai besoin d'un peu d'aide.

J'ai fais un programme pour faire tourner un moteur au bout d'un certains intervalle de temps et acquérir des valeurs de tension au bout d'un autre intervalle de temps.

Mon probleme c'est que mon loop() ne se fait qu'une fois, et c'est assez bizarre. Une fois que mon programme a effectué les deux fonctions conditionnelles, le programme s'arrete.

Voici mon programme :

const unsigned long intervalle_moteur=3000;
const unsigned long intervalle_voltmetre=4500;

unsigned long previousMillisMoteur=0;
unsigned long previousMillisVoltmetre=0;

float tension;

void setup() {
  Serial.begin(9600);
  pinMode(13,OUTPUT);  //initialisation moteur voie B
  pinMode(8,OUTPUT);   //Initialisation frein voie B
  
}

void loop() {
 unsigned long currentMillis = millis();  //recupere la valeur actuelle de millis()=temps du programme
 
 
 if (currentMillis - previousMillisMoteur >= intervalle_moteur) {
   previousMillisMoteur = currentMillis;
   
// cette partie fait tourner le moteur sur 7,5 degrés

  digitalWrite(13, HIGH); //etablir la direction 'avant' voie B
  digitalWrite(8, LOW);  //désengage le frein voie B
  analogWrite(11, 255);   //fait tourner le moteur voie B : 255=plein regime
                          //indique le regime du moteur
  delay(170);
  
  digitalWrite(8, HIGH);   //engage le frein voie B
}

//cette partie acquiert les valeurs de tension
 if (currentMillis - previousMillisVoltmetre >= intervalle_voltmetre) {
   
   previousMillisVoltmetre = currentMillis;
   
   tension = 2*analogRead(A0)*(5.0/1023); 
  Serial.print("tension=");
  Serial.println(tension);
  delay(600000);
  }  
//delay(10);  
}

Je vous remercie d'avance.

Excusez moi, j'aurai du relire plusieurs fois avant de poster, j'ai juste oublié un "delay()" de 10min dans le 2eme "if", donc j'avais l'impression que ça ne fonctionnait pas, mais au contraire tout est OK.

Bonne journée et encore merci.

(peut on supprimer un post ?)