#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 9, 8, 7); // RS, EN, D4, D5, D6, D7 ]
int j, i;
int line[8][8] = {
(2, 1, 2, 3, 4, 5, 2, 6),
(2, 1, 2, 3, 4, 5, 2, 6),
(2, 1, 2, 3, 4, 5, 2, 6),
(2, 1, 2, 3, 4, 5, 2, 6),
(2, 1, 2, 3, 4, 5, 2, 6),
(2, 1, 2, 3, 4, 5, 2, 6),
(2, 1, 2, 3, 4, 5, 2, 6),
(2, 1, 2, 3, 4, 5, 2, 6),
};
uint8_t line0[] = { 0, 0, 0, 0, 0, 0, 0, 31};
uint8_t line1[] = { 0, 0, 0, 0, 0, 0, 31, 0};
uint8_t line2[] = { 0, 0, 0, 0, 0, 31, 0, 0};
uint8_t line3[] = { 0, 0, 0, 0, 31, 0, 0, 0};
uint8_t line4[] = { 0, 0, 0, 31, 0, 0, 0, 0};
uint8_t line5[] = { 0, 0, 31, 0, 0, 0, 0, 0};
uint8_t line6[] = { 0, 31, 0, 0, 0, 0, 0, 0};
uint8_t line7[] = {31, 0, 0, 0, 0, 0, 0, 0};
void setup() {
Serial.begin(115200);
lcd.begin(16, 2);
lcd.clear();
lcd.setCursor(1, 0);
lcd.print(line0[7]);
// lcd.print(line[2][4]);
lcd.createChar(0, line0);
lcd.createChar(1, line1);
lcd.createChar(2, line2);
lcd.createChar(3, line3);
lcd.createChar(4, line4);
lcd.createChar(5, line5);
lcd.createChar(6, line6);
lcd.createChar(7, line7);
}
void loop() {
for (i = 0; i < 7; i++) {
// Serial.print(i);
// Serial.println(8 - i);
lcd.setCursor(0, 0);
if (j)
lcd.write(int(i));
else
lcd.write(7 - i);
delay(50);
}
j = !j;
}