Comment traiter une chaîne de caractère

Bonjour à tous,

Nous avons comme projet de coder une imprimante braille sur Arduino Uno. Nous avons réussis à traiter un caractère à la fois mais nous n’arrivons pas à traiter plusieurs caractères ensembles. Notre programme ne prend en compte que le dernier caractère. Par exemple si on écrit “ab” dans le moniteur série, il nous renvoie la commande fonction de b. On souhaiterait qu’il traite la lettre a, puis après un délais, qu’il traite la lettre b.

Voici le code :

const int LED[6]={2,3,4,5,6,7};

void setup()
{
Serial.begin (9600);
for (int i=0; i<=5; i++) {
pinMode(LED*, OUTPUT);*

  • }*
    }
    void allumeLED(byte valeur)
    {
  • for (int i=0; i<=7; i++) {*
    _ digitalWrite(LED*,bitRead(valeur,i));_
    _
    }_
    _
    }_
    void loop ()
    _
    { if ( Serial.available() ) { // nombre d’octet disponibles pour la lecture du port série._
    _
    int lu = Serial.read(); // lit les données séries entrantes*_
    * for (int i=0; i<=2; i++)*
    * if ( lu ==97){ //a*
    * allumeLED(B100000);*
    }
    if ( lu ==98){ //b
    * allumeLED(B101000);*
    }
    if ( lu ==99){ //b
    * allumeLED(B110000);*
    }
    }
    }
    Merci de vos réponses :slight_smile:

Je pense qu'il traite bien le a, mais ça va tellement vite que tu ne vois rien. Tu devrais rajouter un delay quelque part. Et ajouter des Serial.println, pour voir un peu mieux ce que fait ton code....

Merci, en effet, il n’était question que d’une tempo … petit détail qui nous aura bien fait galérer ! merci :wink: