lcd: simplify line printing

This commit is contained in:
Vasily Davydov
2022-10-27 10:18:55 +03:00
parent 9492081fbb
commit 50b77d39f8
4 changed files with 33 additions and 7 deletions

View File

@@ -187,6 +187,31 @@ LiquidCrystal::print (const char *s)
}
}
void
LiquidCrystal::printOnLineOne (const char *s)
{
setCursor (0, 0);
print (s);
}
void
LiquidCrystal::printOnLineTwo (const char *s)
{
setCursor (0, 1);
print (s);
}
void
LiquidCrystal::printOnLineOne (std::string const &s)
{
printOnLineOne (s.c_str ());
}
void
LiquidCrystal::printOnLineTwo (std::string const &s)
{
printOnLineTwo (s.c_str ());
}
void
LiquidCrystal::setCursor (uint8_t col, uint8_t row)
{

View File

@@ -59,10 +59,8 @@ StateHandler::displaySet (size_t mode)
}
_lcd->clear ();
_lcd->setCursor (0, 0);
_lcd->print (line_up);
_lcd->setCursor (0, 1);
_lcd->print (line_down);
_lcd->printOnLineOne (line_up);
_lcd->printOnLineTwo (line_down);
}
unsigned int

View File

@@ -36,8 +36,8 @@ main (void)
DigitalIoPin d6 (1, 3, false, true, false);
DigitalIoPin d7 (0, 0, false, true, false);
LiquidCrystal lcd (&rs, &en, &d4, &d5, &d6, &d7);
lcd.setCursor (0, 0);
lcd.print ("Vent-Machine");
lcd.clear ();
lcd.printOnLineOne (" ESP-VENT_MAIN ");
/* Timers */
Timer glob_time (ONE_K_HZ, true);