//Informations sur le branchement de l'émetteur/récepteur ultrason (NE PAS MODIFIER) const int trigPin = 10; //L'émetteur ultrason (Trigger = déclencheur) //est branché sur la broche digitale D10 const int echoPin = 9; //Le récepteur ultrason (Echo) est branché sur la broche digitale D9 long duree; //Déclare une variable de type "long" appelée duree float distance,vitesse_son; //Remarques : "const" indique qu'il s'agit d'une constante (valeur non modifiable) // "int" indique qu'il s'agit d'un nombre entier /*------------------------------------------------------------------------------------------------- SETUP -------------------------------------------------------------------------------------------------*/ void setup() { Serial.begin(9600); // ouvre la communication avec le moniteur série //Déclaration des entrées et sorties (NE PAS MODIFIER) pinMode(trigPin, OUTPUT); // indiquer que le connecteur "trig" est une sortie (elle va émettre un ultrason) pinMode(echoPin, INPUT); // indiquer que le connecteur "echo" est une entrée (elle va capter l'ultrason) } // fin de la boucle setup() : seule la boucle loop() sera maintenant exécutée /*------------------------------------------------------------------------------------------------- LOOP = Boucle sans fin -------------------------------------------------------------------------------------------------*/ void loop() { //Emetteur/récepteur ultrason (NE PAS MODIFIER) digitalWrite(trigPin, LOW); // Met un niveau logique LOW (=bas) sur la broche trigPin delayMicroseconds(2); // Temporise le programme pendant 2 µs (cette fonction n'accepte que des nombres entiers) digitalWrite(trigPin, HIGH); // Met un niveau logique HIGH (=haut) sur la broche trigPin delayMicroseconds(10); // Temporise le programme pendant 10 µs digitalWrite(trigPin, LOW); // Met un niveau logique LOW (=bas) sur la broche trigPin duree = pulseIn(echoPin, HIGH); // Entre dans la variable "duree" la valeur de la durée de l'aller-retour de l'onde //sonore. La valeur est exprimée en µs ! //----Début du code source à compléter------ distance = 0.20; //Indiquer la valeur de la distance en mètres vitesse_son = distance*2/duree*1000000; //Calcule la vitesse du son //----Fin du code source à compléter-------- // informations affichées sur le moniteur série (loupe en haut et à droite du logiciel) (NE PAS MODIFIER) Serial.println("MESURE VITESSE DU SON"); //affiche "MESURE VITESSE DU SON" (sans retour à la ligne) Serial.print("Duree d'un aller-retour = "); //affiche "Duree d'un aller-retour = " (sans retour à la ligne) Serial.print(duree); //affiche la valeur de la variable "duree" (sans retour à la ligne) Serial.println(" µs"); //affiche " µs" (avec retour à la ligne = println) Serial.print("Distance parcourue = "); Serial.print(distance); Serial.println(" m"); Serial.print("Vitesse du son = "); Serial.print(vitesse_son); Serial.println(" m/s"); Serial.println("------------"); delay(1000); } // fin de la boucle loop() : cette boucle est effectuée en continu