Auteur/autrice : Olli

  • Sons du robot

    [int frequence = 500;] cette ligne sert a : -crée une variable appelée frequence

    -stocke la fréquence du son

    -démarre à 500 Hz

    [bool ancienA0 = LOW;
    bool ancienA1 = LOW;

    bool ancienA2 = LOW;] cette ligne sert a : -détecter et éviter des répétitions trop rapides

    [pinMode(A0, INPUT);] cette ligne sert a : -configure la broche A0

    -en entrée (INPUT)

    -pour lire le bouton 1

    [pinMode(A1, INPUT);] cette ligne sert a : -configure la broche A0

    -en entrée (INPUT)

    -pour lire le bouton 2

    [pinMode(A2, INPUT);] cette ligne sert a : -configure le bouton obstacle

    [pinMode(8, OUTPUT);] cette ligne sert a : -configure la pin 8 en sortie

    -pour envoyer le son au buzzer

    [bool etatA0 = digitalRead(A0);] cette ligne sert a : -lire l’état du bouton A0

    [bool etatA1 = digitalRead(A1);] cette ligne sert a : -lire l’état du bouton A1

    [bool etatA2 = digitalRead(A2);] cette ligne sert a : -lire l’état du bouton A2

    [if (etatA0 == HIGH && ancienA0 == LOW)] Cette condition signifie : -ET il ne l’était pas avant

    -le bouton est appuyé maintenant

    [frequence = frequence + 100;] cette ligne sert a : -augmente la fréquence de 100 Hz

    -le son devient plus aigu

    [if (frequence > 2000)] cette ligne sert a : -vérifie si le son devient trop aigu

    [frequence = 2000;] cette ligne sert a : -bloque la fréquence maximum à 2000 Hz

    [tone(8, frequence, 200);] cette ligne sert a : -Jouer un son

    -pendant 200 ms

    -sur la pin 8

    -avec la fréquence choisie

    [frequence = frequence – 100;] cette ligne sert a : -diminue la fréquence

    -le son devient plus grave

    [if (frequence < 100)] cette ligne sert a : -vérifie si le son est trop grave

    [noTone(8);] cette ligne sert a : -arrête complètement le buzzer

    [frequence = 100;] cette ligne sert a : -empêche la fréquence de descendre sous 100 Hz

    [else] cette ligne sert a : -le son continue normalement

    [tone(8, frequence, 200);] cette ligne sert a : -jouer le nouveau son grave

    [if (etatA2 == HIGH && ancienA2 == LOW)] cette ligne sert a : -détecté un nouvel appui sur le bouton obstacle

    [noTone(8);] cette ligne sert a : -coupé immédiatement le son précédent

    [tone(8, 2500, 1000);] cette ligne sert a : -émettre le sons de l’alarme

    [ancienA0 = etatA0;
    ancienA1 = etatA1;

    ancienA2 = etatA2;] cette ligne sert a : -mémorise l’état actuel des boutons

    -pour comparer au prochain tour

    [delay(10);] cette ligne sert a : -attendre 10 millisecondes