// NOM : BHIJA Imane

#include "led.h"
#include "potentiometre.h"
#include "bargraph.h"

// these constants won't change:
#define MAX_LED 10    // Nombre de Leds sur la bar (peut être 5 ou 10)
#define VOLT_MAX 5    // Voltage Max
#define PORT_SENSOR A0    // Port du Potentiomètre

// instancie 10 Leds (port 2 -> 11) 
Led l1(2, true);
Led l2(3, true);
Led l3(4, true);
Led l4(5, true);
Led l5(6, true);
Led l6(7, true);
Led l7(8, true);
Led l8(9, true);
Led l9(10, true);
Led l10(11, true);

// instancié une bargraph composé des 10 leds déclarées ci-dessus
Bargraph barg(l1, l2, l3, l4, l5, l6, l7, l8, l9, l10);

// instancié un potentiomètre (port A0)
Sensor pot(PORT_SENSOR);

void setup() {
  Serial.begin(9600);
}

void loop() {
  // lire le potentiometer
  int value = pot.getValue(PORT_SENSOR);
  
  // mapper le résultat sur l'intervalle 0 -> nombre des LEDs:
  int ledLevel = map(value, 0, 1023, 0, MAX_LED);

  // Gestion d'affichage 
  barg.set_state(ledLevel, MAX_LED);

  // convertir et lire le voltage du potentiomètre
  Serial.println(pot.getVoltage(VOLT_MAX, value));
}