// Un commentaire

#include <LiquidCrystal_I2C.h>
#define LE_TEMPS_DUNE_PAUSE 333
#define UNE_SECONDE         1000
#define LED                 13
#define afficher(x)         Serial.print(x)

// Les variables globales
const int brocheDuSenseur   = A0;  
int valeurDuPotentiometre   = 0;   
LiquidCrystal_I2C           lcd(0x27,20,4);  //  LCD address to 0x27 for a 16 chars and 2 line display

void setup()
{
  Serial.begin(9600);
  afficher("Début du programme!");
  lcd.init();                      // initialize the lcd
 
  pinMode(LED, OUTPUT);


  // Print a message to the LCD.
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("Bienvenue a 420-1C4");
  lcd.setCursor(0,1);
  lcd.print("Micro-controleurs");
  lcd.setCursor(0,2);
  lcd.print("--------------------");
  lcd.setCursor(0,3);
  lcd.print("Les variables...");
  delay(UNE_SECONDE * 3);
  lcd.clear();
}

void loop()
{
  static unsigned char compteur = 0;
  // static unsigned char compteur = 0;
  // static int compteur = 0;
  // static long int compteur = 0;
  // static char compteur = 0;
  digitalWrite(LED, !digitalRead(LED));
  lcd.clear();
  lcd.print("DEC: ");
  lcd.print(compteur, DEC);
  lcd.setCursor(0,1);
  lcd.print("HEX: ");
  lcd.print(compteur, HEX);
  lcd.setCursor(0,2);
  lcd.print("BIN: ");
  lcd.print(compteur, BIN);
  lcd.setCursor(0,3);
  lcd.print("OCT: ");
  lcd.print(compteur, OCT);
  compteur++;

  valeurDuPotentiometre = analogRead(brocheDuSenseur);
  afficher("\nValeur du pot: ");
  afficher(valeurDuPotentiometre);  
  delay(LE_TEMPS_DUNE_PAUSE);
}