#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2); // set the LCD address to 0x3F for a 16 chars and 2 line display
// Make custom characters:
byte B_char[] = {
B11110,
B10001,
B11110,
B10001,
B10001,
B11110,
B00000,
B00000
};
byte S_char[] = {
B01110,
B10001,
B01100,
B00010,
B10001,
B01110,
B00000,
B00000
};
void setup() {
// Specify the LCD's number of columns and rows:
lcd.begin(16, 2);
// Create new characters:
lcd.createChar(0, B_char);
lcd.createChar(1, S_char);
// Clears the LCD screen:
lcd.clear();
}
void loop() {
lcd.setCursor(0, 0);
lcd.write(byte(0));
lcd.setCursor(15, 0);
lcd.write(byte(1));
delay(2000); // Display characters for 2 seconds
// Clear the screen
lcd.clear();
for (int i = 0; i <= 6; ++i) {
lcd.setCursor(i, 0);
lcd.write(' ');
lcd.setCursor(15 - i, 0);
lcd.write(' ');
lcd.setCursor(i + 1, 0);
lcd.write(byte(0));
lcd.setCursor(15 - (i + 1), 0);
lcd.write(byte(1));
delay(200);
}
delay(2000); // Display characters for 2 seconds before repeating
}