Vumètre à LEDs

Le vumètre est un instrument montrant le niveau (ou volume) d'un signal audio. Dans ce projet, on en construit une version simplifiée constituée de quelques LEDs en ligne, qui s'allument selon le volume détecté par un micro d'ambiance.

INTERMÉDIAIRE

Une fois le circuit monté, on peut commencer par tester le contrôle des LEDs. Puis, on peut brancher le micro, et se donner une idée des valeurs qu'ils envoie à l'aide du moniteur série, afin de bien l'étalonner.

Fiche de présentation du projet

Matériel

Circuit

Sch%C3%A9ma_bb

Code


#define BROCHE_MICRO A0

#define SENSIBILITE_SEUIL 500
#define SENSIBILITE_PAS 6

int leds[6] = {13, 12, 11, 10, 9, 8};
int niveaux[6] = {0, 0, 0, 0, 0, 0};

void setup()
{
    pinMode(BROCHE_MICRO, INPUT);
    niveaux[0] = SENSIBILITE_SEUIL;
    for (int i = 1; i < 6; i++)
    {
        niveaux[i] = niveaux[i - 1] + SENSIBILITE_PAS;
    }

    for (int i = 0; i < 6; i++)
    {
        pinMode(leds[i], OUTPUT);
        digitalWrite(leds[i], HIGH);
        delay(100);
        digitalWrite(leds[i], LOW);
    }
}

void loop()
{
    int valeur = analogRead(BROCHE_MICRO);
    for (int i = 0; i < 6; i++)
    {
        if (valeur <= niveaux[i])
        {
            digitalWrite(leds[i], HIGH);
        }
        else
        {
            digitalWrite(leds[i], LOW);
        }
    }
}

Article précédent Article suivant