LEÇON 10: Comment lire les Textes, Entiers et Decimeaux à partir des Ports Arduino

Une de mes plus grandes frustrations dans la programmation est la confusion sur la saisie de données sur le port série. Il existe de nombreux tutorials Arduino qui compliquent les choses. Il existe de nombreuses manières difficiles et compliquées de lire les données sur le port série, mais heureusement, il existe un moyen simple. Bien que nous ayons abordé cette question brièvement dans des vidéos précédentes, il s’agit d’un sujet si important que je souhaite aborder dans cette leçon.

Afin de lire les données sur le port série, vous devez d’abord déterminer le type de données que vous attendez. Presque tous les besoins possibles peuvent être couverts par trois types de données simples. Généralement, vous pouvez réaliser à peu près n’importe quel travail de projet avec Strings (Textes), Float’s (Decimaux) ou Int’s (Entiers). Vous devez donc savoir lire ces trois types de données sur le port série. La méthode la plus simple pour lire une chaîne de texte consiste à utiliser la commande Serial.readString (). La manière la plus simple de lire un decimal est d’utiliser la commande Serial.parseFloat () et la manière la plus simple de lire un entier avec la commande Serial.parseInt ().

Pour pratiquer cela, faisons ce qui suit. Écrivez un programme qui demande à l’utilisateur son âge, son poids et ensuite, quelle est sa taille. Imprimez ensuite une sortie joliment formatée qui retransmet cette information à l’utilisateur.

Pour ce faire, la première chose à faire est de décider quel type de variables utiliser pour chacune de ces trois données. Pour le nom de la personne, vous utiliserez naturellement un String (texte), car un nom est une chaîne de texte. Pour stocker le poids, nous arrondirions presque toujours au nombre entier le plus proche, il serait donc judicieux d’utiliser un Int pour cela. En hauteur, nous ne ferions normalement pas le tour au pied le plus proche. . . nous pourrions vouloir dire que quelqu’un mesurait 1.70m. Dans ce cas, nous devrions utiliser un float (decimal), car nous voulons les nombres décimaux. Nous allons donc déclarer ces variables comme étant le type approprié, puis les lire en utilisant les commandes correspondantes.

Rappelez-vous également que lorsque vous allez lire des données depuis le port série, vous devez faire trois choses:

1) Demander à l’utilisateur des données,

2) attendre qu’il saisisse les données et

3) lire les données.

Cela devrait être révisé comme nous l’avons fait dans plusieurs leçons précédentes.

Essayez d’écrire le programme vous-même, mais si vous êtes bloqué, vous pouvez regarder le code ci-dessous que j’ai écrit pour ce problème. Ce code est commenté en anglais pour pousser votre curiosité dans cette langue.


String myName;             //Declare a String variable to hold your name
int age;                   //Declare an Int variable to hold your age
float height;              //Declare a float variable to hold your height

void setup() {
Serial.begin(9600);        // turn on Serial Port
}

void loop() {

Serial.println("Please enter your name: ");             //Prompt User for input
while (Serial.available()==0) 
{                   
    //Wait for user input
}
myName=Serial.readString();                             //Read user input into myName

Serial.println("How old are you? ");                    //Prompt User for input
while (Serial.available()==0) {  

}
age=Serial.parseInt();                                  //Read user input into age

Serial.println("How tall are you? ");                   //Prompt User for input
while (Serial.available()==0) {

}
height=Serial.parseFloat();                             //Read user input into height

Serial.print("Hello ");                                 //Print out nicely formatted output.
Serial.print(myName);
Serial.print(", you are ");
Serial.print(age);
Serial.println(" years old,");
Serial.print("and you are ");
Serial.print(height);
Serial.println(" feet tall.");
Serial.println("");

}

j’espère que vous avez réussi à faire fonctionner cela. Il est maintenant temps pour vous d’aller en solo et d’écrire votre propre programme.

Demander à l’utilisateur son nom et son poids en kg. Ensuite, utilisez-le pour calculer son poids en onces, en grammes et en carats.

Après avoir fait ces calculs, envoyez un message à l’utilisateur pour le saluer par son nom et lui dire qu’il pèse en kg, en onces, en grammes et en carats.

Pour effectuer cette tâche, vous devrez faire des recherches pour déterminer comment effectuer les conversions.

Leave a Reply

Your email address will not be published. Required fields are marked *