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

// Les variables globales
LiquidCrystal_I2C           lcd(0x27,20,4);     // Déclaration du LCD
void setup()
{
  Serial.begin(9600);
  afficher("Démonstration d'une conversion de base");
  delay(1000);
  lcd.init();                                   // Initialisation du LCD
 
  // Afficher des messages sur le 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();
} // setup()

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;
  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++;
  delay(LE_TEMPS_DUNE_PAUSE);
} // loop()