Fixed an issue where a display with a hardware reset pin (LCD_RESET) may not get initialized properly.

This commit is contained in:
dot-bob 2017-04-15 22:45:15 -06:00
parent 5e9726530f
commit 9c410ddf68

View File

@ -240,7 +240,7 @@ void lcd_printPGM(const char* str) {
for (; char c = pgm_read_byte(str); ++str) lcd_print(c); for (; char c = pgm_read_byte(str); ++str) lcd_print(c);
} }
// Initialize or re-initializw the LCD // Initialize or re-initialize the LCD
static void lcd_implementation_init() { static void lcd_implementation_init() {
#if PIN_EXISTS(LCD_BACKLIGHT) // Enable LCD backlight #if PIN_EXISTS(LCD_BACKLIGHT) // Enable LCD backlight
@ -248,7 +248,11 @@ static void lcd_implementation_init() {
#endif #endif
#if PIN_EXISTS(LCD_RESET) #if PIN_EXISTS(LCD_RESET)
OUT_WRITE(LCD_RESET_PIN, LOW); // perform a clean hardware reset
_delay_ms(5);
OUT_WRITE(LCD_RESET_PIN, HIGH); OUT_WRITE(LCD_RESET_PIN, HIGH);
_delay_ms(5); // delay to allow the display to initalize
u8g.begin(); // re-initialize the display
#endif #endif
#if DISABLED(MINIPANEL) // setContrast not working for Mini Panel #if DISABLED(MINIPANEL) // setContrast not working for Mini Panel