#include <LiquidCrystal_I2C.h> // Libreria que controla el I2C
#include <Wire.h> // La libreria Wire viene incluida en el IDE de arduino
LiquidCrystal_I2C lcd_1 (0x27,16,2); // dependiendo del fabricante del LCD, la direccion 0x27 puede cambiar, utilice el I2C_Scan primero por favor!
LiquidCrystal_I2C lcd_2 (0x20,16,2); // dependiendo del fabricante del LCD, la direccion 0x20 puede cambiar, utilice el I2C_Scan primero por favor!
void setup() {
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
lcd_1.init();
lcd_2.init();
lcd_1.backlight();
lcd_2.backlight();
lcd_1.clear();
lcd_2.clear();
lcd_1.setCursor(0,0);
lcd_2.setCursor(0,0);
lcd_1.print("Norte <===> Sur... Normal"); // Mensaje a desplegar en LCD1
lcd_2.print("Oriente <===> Occidente... Normal"); // Mensaje a desplegar en LCD2
lcd_1.setCursor(0,1);
lcd_2.setCursor(0,1);
lcd_1.print("Sur <===> Norte... Normal"); // Mensaje a desplegar en LCD1
lcd_2.print("Occidente <===> Oriente... Normal"); // Mensaje a desplegar en LCD2
delay(3000); // espera 2 segundos con el mensaje estatico
}
void loop() {
for(int c=0;c<16;c++){
lcd_1.scrollDisplayLeft(); // Movimiento a la Izquierda LCD1
lcd_2.scrollDisplayLeft(); // Movimiento a la Izquierda LCD2
delay(180);
}
digitalWrite(2, HIGH);
delay(2500); // Wait for 5000 millisecond(s)
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
delay(1500); // Wait for 2000 millisecond(s)
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
delay(5000); // Wait for 5000 millisecond(s)
digitalWrite(4, LOW);
digitalWrite(3, HIGH);
delay(1500); // Wait for 1000 millisecond(s)
digitalWrite(3, LOW);
digitalWrite(2, HIGH);
delay(2500);
}