/** * Code d'exemple d'affichage binaire pour un bargraphe à LEDs. */ /* Les broches */ const byte PIN_LED_1 = 4; const byte PIN_LED_2 = 5; const byte PIN_LED_3 = 6; const byte PIN_LED_4 = 7; const byte PIN_LED_5 = 8; const byte PIN_LED_6 = 9; const byte PIN_LED_7 = 10; const byte PIN_LED_8 = 11; const byte PIN_LED_9 = 12; const byte PIN_LED_10 = 13; void setup() { /* Met les broches en sorties */ pinMode(PIN_LED_1, OUTPUT); pinMode(PIN_LED_2, OUTPUT); pinMode(PIN_LED_3, OUTPUT); pinMode(PIN_LED_4, OUTPUT); pinMode(PIN_LED_5, OUTPUT); pinMode(PIN_LED_6, OUTPUT); pinMode(PIN_LED_7, OUTPUT); pinMode(PIN_LED_8, OUTPUT); pinMode(PIN_LED_9, OUTPUT); pinMode(PIN_LED_10, OUTPUT); /* Eteint les LEDs */ afficheBargraphe(0); } void loop() { static int valeur = 0; // Affiche la valeur afficheBargraphe(valeur); // Incrémente la valeur de 1, revient à 0 si > 1023 if (++valeur == 1024) { valeur = 0; } // Delai pour la démo delay(250); } /* Affiche la valeur en binaire */ void afficheBargraphe(int valeur) { digitalWrite(PIN_LED_1, bitRead(valeur, 0)); digitalWrite(PIN_LED_2, bitRead(valeur, 1)); digitalWrite(PIN_LED_3, bitRead(valeur, 2)); digitalWrite(PIN_LED_4, bitRead(valeur, 3)); digitalWrite(PIN_LED_5, bitRead(valeur, 4)); digitalWrite(PIN_LED_6, bitRead(valeur, 5)); digitalWrite(PIN_LED_7, bitRead(valeur, 6)); digitalWrite(PIN_LED_8, bitRead(valeur, 7)); digitalWrite(PIN_LED_9, bitRead(valeur, 8)); digitalWrite(PIN_LED_10, bitRead(valeur, 9))