Aqui tienes dos formas de construir caracteres:
La intuitiva:
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
void setup() {
// Creando un caracter customizado
byte smiley[8] = {
B00000,
B10001,
B00000,
B00000,
B10001,
B01110,
B00000,
};
lcd.createChar(0, smiley);
// ----------------------------
lcd.begin(16, 2);
lcd.clear();
lcd.print("hello");
delay(500);
lcd.clear();
lcd.write(0);
}
void loop() {}
Y la forma mas comun:
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
void setup() {
lcd.clear();
lcd.begin(16, 2); // 20 ROWS / 4 LINES
// Creando un caracter customizado
uint8_t B_[8] = {0x00, 0x11, 0x00, 0x00, 0x11, 0x0e, 0x00, 0x00}; // Smiley
lcd.createChar(1, B_);
lcd.home();
// ----------------------------
lcd.print("hello");
delay(500);
lcd.clear();
lcd.write(1);
}
void loop() {}