comment crée une boucle arduino svp ????

Bonjour si quelqu’un sait faire une boucle je serai ravie de s’avoir comment le faire

j’ai mon code et je veux faire que mon buzzer sonne plus longtemps

le code que je veux en faire une boucle et le code en jaune

char DIO_Buzzer = 7; // buzer connecté sur la broche 7
int pinTrig = 2;
int pinEcho = 3;
long temps;
float distance;

void setup() {
pinMode(DIO_Buzzer,OUTPUT);
pinMode(pinTrig, OUTPUT);
pinMode(pinEcho, INPUT);
digitalWrite(pinTrig, LOW);
Serial.begin(9600);
}

void loop() {

digitalWrite(pinTrig, HIGH);
delayMicroseconds(10);
digitalWrite(pinTrig, LOW);

temps = pulseIn(pinEcho, HIGH);

if (distance = (temps*340)/10000.0 < 150) {

digitalWrite(DIO_Buzzer, HIGH);

{// des graves au aigus
for(int note=700;note<2000;note++){
tone(DIO_Buzzer, note, 125);
delay(2);
}
//des aigus au graves
for(int note=2000;note<700;note++){
tone(DIO_Buzzer, note, 125);
delay(2);}
}
}
else {
temps = temps/2;
distance = (temps*340)/10000.0;
Serial.print(“distance:”);
Serial.print(distance);
Serial.println(" cm");
}
delay(2000);
}

Merci de m’aider

lisez comment utiliser le forum (les posts épinglés en haut du forum comme "Bien éditer son post pour les nuls" , "Faire un Nouveau Sujet ou le corriger avec les Balises..." et "Règles du forum francophone"), et faites un post "propre"


les boucles en C ou C++ ça se fait avec un while() ou un for() ou un do/while() ou simplement en laissant la loop() tourner et en arrêtant le son au bout d'un certain temps

Il y a des tonnes de formations en ligne, faites un peu une recherche par vous même... Par exemple en voici une

J-M-L:
lisez comment utiliser le forum (les posts épinglés en haut du forum comme "Bien éditer son post pour les nuls" , "Faire un Nouveau Sujet ou le corriger avec les Balises..." et "Règles du forum francophone"), et faites un post "propre"

Et je rajouterais :
Please, pas de couleur jaune.

Cordialement,
bidouilleelec

Oui, le jaune pique un peu les yeux…

Le fonctionnement de tone est très bien expliqué dans ce post récent, et il y a aussi la référence

J-M-L:
il faut faire

tone(pin, frequence, duree) ; delay(duree);




et vous mettez cela dans une boucle donc

for(byte i=0; i<200; i++) {
  tone(pin, frequence[i], duree[i]) ;
  delay(duree[i]);
}


ou juste 

for(byte i=0; i<200; i++) {
  tone(pin, frequence[i]) ; // joue cette note jusque’à contre-ordre 
  delay(duree[i]);
}
noTone();// pour arrêter le son de la dernière note




si vous ne mettez pas le delay, vous passez directement au son d'après en quelques micro-secondes et vous mangez vos 200 entrées super vite - quasiment rien le temps d'entendre - et le son que vous entendez en entier c'est en fait la dernière note

Bonjour,
Je n'ai pas de problème avec le jaune : je ne le vois pas.

Tu veux dire que tu n'as jamais vu l'intégralité de ton avatar ? ? ?

Je comprends pas, ce type écrit ce code

for(int note=700;note<2000;note++){
    tone(DIO_Buzzer, note, 125);
    delay(2);
    }

et il demande comment on fait une boucle.
De 2 choses l’une, ou il a pompé le code ou il ne sait pas expliquer clairement son besoin.

Je suppose que le fonctionnement de tone non bloquant: documenté par lesept en 3, avec lien vers la solution ) est déroutant:
tone execute très vite le s1700 premières notes, sans délai (non bloquant) et sort du 2000 Hz... de quoi rire jaune.