Code pour controler moteur DC

Sur les conseils de infobarquee nous avons essayer ceci:

 if (Serial.available() > 0) // On detecte un appui sur une touche
  {
    int touche = Serial.read(); // On lit la valeur de la touche appuyée
    switch (touche){
       case "Z":
         Serial.print("Avancer");

         moteurGauche->run(FORWARD);
         moteurDroit->run(FORWARD);
         for (i=0; i<255; i++) 
          {
           moteurGauche->setSpeed(i);
           moteurDroit->setSpeed(i);
          }
         for (i=255; i!=0; i--) 
          {
           moteurGauche->setSpeed(i);
           moteurDroit->setSpeed(i);
          }
          break;
        case "S":
         Serial.print("Reculer");

        moteurGauche->run(BACKWARD);
        moteurDroit->run(BACKWARD);
        for (i=0; i<255; i++) {
          moteurGauche->setSpeed(i);
          moteurDroit->setSpeed(i);  
          }
        for (i=255; i!=0; i--) 
        {
        moteurGauche->setSpeed(i);
        moteurDroit->setSpeed(i);  
        }
        break;
  }
  }
}

et nous avons les erreurs suivantes:
_2.ino: In function 'void loop()':
_2:38: error: case label does not reduce to an integer constant
_2:54: error: case label does not reduce to an integer constant

Nous avons essayer de chercher sur internet ce que cela signifiait et on pense que les constantes ne peuvent pas être compiler.
Comment utiliser un switch en disant lorsque l'on appuie sur "Z", les moteurs avancent.. Lorsque on appuies "S", les moteurs reculent..
Faut-il définir toutes les touches de commande comme variables dès le début du programme ?

Veuillez nous excuser d'avance pour toute ces questions qui peuvent surement être idiotes, mais nous somme bloqués et nous aimerions bien avancer tout en apprenant :slight_smile: