//code de restitution des chiffres et nombres <100 tapes sur le port serie de l'arduino : //quand on tape un chiffre sur le port serie il renvoie, un nombre superieur a 48 ,et un 10. //le 10 est le code de fin de ligne //0 renvoie(48 et 10), 1 renvoie (49 et 10), 2 renvoie (50 et 10), etc... //pour les nombres il y a deux chiffres a recuperer //10 renvoie 49 et 48 et 10, 11 renvoie 49 et 49 et 10, ...,25 renvoie 50 et 53 et 10 etc... // int CodeNombrePortSerie; //recuperation des donnees du port serie int CodeChiffre01; //recuperation du premier chiffre int CodeChiffre02; //recuperation du deuxieme chiffre int nombreImages; //resultat void setup() { // put your setup code here, to run once: Serial.begin(115200); } void loop() { int CodeNombrePortSerie=0; //reinitialisation de la variable de recuperation while (CodeNombrePortSerie < 49) { //tant qu'on a pas recupere sur le port serie un code correspondant a un chiffre superieur a zero Serial.println("Nombre d'images : "); // on pose la question delay(3000); CodeNombrePortSerie = Serial.read(); // on lit le port serie } CodeChiffre01=CodeNombrePortSerie; //recuperation du premier chiffre CodeChiffre02 = Serial.read(); //recuperation du deuxieme chiffre if (CodeChiffre02<49){ //si la deuxieme variablechiffre ne renvoie pas un chiffre nombreImages=(CodeChiffre01-48); //calcul du chiffre tape } if (CodeChiffre02>49){ //si la deuxieme variable chiffre renvoie un chiffre nombreImages=(CodeChiffre01-48)*10+CodeChiffre02-48; //alors c'est un nombre ; CodeChiffre01 est dizaines, CodeChiffre02 est l'unite } Serial.print("le nombre d images choisi est "); Serial.println(nombreImages); delay(3000); }