#include <LiquidCrystal_I2C.h>
#define LCD_I2C_ADDR (0x27)
#define LCD_COLUMNS 20
#define LCD_LINES 4
LiquidCrystal_I2C lcd(LCD_I2C_ADDR, LCD_COLUMNS, LCD_LINES);
void setup() {
lcd.init();
lcd.backlight();
image();
lcd.setCursor(0, 0);
lcd.print("Battery");
lcd.setCursor(10, 0);
lcd.print("Signal");
}
void loop() {}
// https://tusindfryd.github.io/screenduino/
void image() {
lcd.clear();
byte image1[8] = {B01111, B10000, B10111, B10111, B10111, B10111, B10000, B01111};
byte image2[8] = {B11111, B00000, B11111, B11111, B11111, B11111, B00000, B11111};
byte image3[8] = {B11111, B00000, B11111, B11111, B11111, B11111, B00000, B11111};
byte image4[8] = {B11111, B00000, B00000, B00000, B00000, B00000, B00000, B11111};
byte image5[8] = {B11100, B00010, B00010, B00001, B00001, B00010, B00010, B11100};
byte image6[8] = {B00111, B00101, B00101, B00101, B00101, B00101, B00101, B00111};
byte image7[8] = {B00000, B00000, B00111, B00101, B00111, B00111, B00111, B00111};
byte image8[8] = {B00000, B00000, B00000, B00000, B00000, B00111, B00111, B00111};
lcd.createChar(0, image1);
lcd.createChar(1, image2);
lcd.createChar(2, image3);
lcd.createChar(3, image4);
lcd.createChar(4, image5);
lcd.createChar(5, image6);
lcd.createChar(6, image7);
lcd.createChar(7, image8);
lcd.setCursor(0, 1);
lcd.write(byte(0));
lcd.setCursor(1, 1);
lcd.write(byte(1));
lcd.setCursor(2, 1);
lcd.write(byte(2));
lcd.setCursor(3, 1);
lcd.write(byte(3));
lcd.setCursor(4, 1);
lcd.write(byte(4));
lcd.setCursor(15, 1);
lcd.write(byte(5));
lcd.setCursor(14, 1);
lcd.write(byte(6));
lcd.setCursor(13, 1);
lcd.write(byte(7));
}