/*
   Exemple d'utilisation d'un LCD sur Wokwi

   Connexion des broches:

   LCD.SDA  ->  Uno.A4
   LCD.SCL  ->  Uno.A5
   LCD.GND  ->  Uno.GND
   LCD.VCC  ->  Uno.5V

   **Voir 'Arduino Uno pinout' pour référence.
*/

#include <LiquidCrystal_I2C.h>
#define UNE_SECONDE 1000

// Définir une variable (objet) de type LiquidCrystal_I2C
LiquidCrystal_I2C lcd(0x27,20,4);       // Renseigner l'adresse I2C du LCD à 0x27 sur 4 lignes et 20 chars
LiquidCrystal_I2C lcd2(0x26,16,2);       // Renseigner l'adresse I2C du LCD à 0x27 sur 4 lignes et 20 chars

void setup()
{
  lcd.init();                           // Initialiser l'écran LCD
  lcd.backlight();                      // Allumer l'éclairage de l'écran

  lcd2.init();                           // Initialiser l'écran LCD
  lcd2.backlight();   
  lcd2.print("Je suis le no 2 ;)");
  lcd2.setCursor(0, 1);
  lcd2.print("Temps: ");
  afficherTemps();

  lcd.setCursor(3,0);                   // Placer le curseur à la position caractère, ligne 
  lcd.print("Bonjour 420-1C4");         // Afficher un msg
  lcd.setCursor(3,1);
  lcd.print("Intro a Arduino");
  lcd.setCursor(0,2);
  lcd.print("--------------------");
  lcd.setCursor(2,3);
  lcd.print("Objets connectes");
  delay(UNE_SECONDE * 2);
}


void loop()
{
  afficherTemps();
  lcd.clear();
  lcd.print("Je suis MOI");
  lcd.setCursor(0,1);
  delay(UNE_SECONDE / 2 );
  afficherTemps();
  lcd.print("Tu es TOI");
  delay(UNE_SECONDE / 2);
  afficherTemps();
  lcd.setCursor(0,2);
  lcd.print("Il est LUI");
  delay(UNE_SECONDE / 2);
  afficherTemps();
  lcd.setCursor(0,3);
  lcd.print("Vive la difference");
  delay(UNE_SECONDE);
  afficherTemps();
  lcd.clear();
  delay(UNE_SECONDE / 2);
}

void afficherTemps() {
  lcd2.setCursor(7, 1);
  lcd2.print(millis() / 1000);
  lcd2.print(" sec");
}