// LCD1602 custom characters example
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 9, 8, 7);
byte angka[10][8] = {
/*0*/{B01110, B10001, B10011, B10101, B11001, B10001, B01110, B00000},
/*1*/{B00100, B01100, B00100, B00100, B00100, B00100, B01110, B00000},
/*2*/{B01110, B10001, B00001, B00010, B00100, B01000, B11111, B00000},
/*3*/{B11111, B00010, B00100, B00010, B00001, B10001, B01110, B00000},
/*4*/{B00010, B00110, B01010, B10010, B11111, B00010, B00010, B00000},
/*5*/{B11111, B10000, B11110, B00001, B00001, B10001, B01110, B00000},
/*6*/{B00110, B01000, B10000, B11110, B10001, B10001, B01110, B00000},
/*7*/{B11111, B10001, B00001, B00010, B00100, B00100, B00100, B00000},
/*8*/{B01110, B10001, B10001, B01110, B10001, B10001, B01110, B00000},
/*9*/{B01110, B10001, B10001, B01111, B00001, B00010, B01100, B00000},
};
uint8_t huruf_w[] = {
0b10001,
0b10001,
0b10101,
0b10101,
0b10101,
0b01010,
0b00000,
0b00000,
};
uint8_t huruf_i[] = {
0b01110,
0b00100,
0b00100,
0b00100,
0b00100,
0b00100,
0b01110,
0b00000,
};
void setup() {
lcd.createChar(3, huruf_w);
lcd.createChar(4, huruf_i);
lcd.createChar(5, angka[0]);
lcd.begin(16, 2);
lcd.print(" I \x03\x04 \x05 \x06 Ww Arduino");
lcd.setCursor(0, 1);
lcd.print("0123456789");
}
byte asd = 0;
void loop() {
uint8_t huruf_w2[8] = {0};
uint8_t huruf_i2[8] = {0};
uint8_t angka1_2[8] = {0};
uint8_t angka_2[8] = {0};
lcd.createChar(6, angka[asd]);
for (int i = 0; i < 8; i++) {
huruf_w2[i] = huruf_w[i];
huruf_i2[i] = huruf_i[i];
angka1_2[i] = angka[0][i];
angka_2[i] = angka[asd][i];
lcd.createChar(3, huruf_w2);
lcd.createChar(4, huruf_i2);
lcd.createChar(5, angka1_2);
lcd.createChar(6, angka_2);
delay(100);
}
delay(500);
asd = (asd + 1) % 10;
}