Código:
#include <Wire.h> 
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
void setup()  
{
  Serial.begin(9600);  
  lcd.begin(16,2);   
  lcd.backlight(); 
}
void loop() 
  {   
    lcd.setCursor(0, 0);
  lcd.write("Esperando datos"); 
  lcd.blink();
  delay(1000);
 if (Serial.available()) {
      delay(100);  
       lcd.setCursor (0,1);
      while (Serial.available() > 0) {
        char pepe = Serial.read();
if (pepe == '1')
{
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.write("Mensaje recibido");  
   delay(100);  
       lcd.setCursor (0,1);
lcd.write("Hola");
 lcd.noBlink();
}
 
else if (pepe == '2')
{
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.write("Mensaje recibido");  
   delay(100);  
       lcd.setCursor (0,1);
lcd.write("Adios");
 lcd.noBlink();
}
else 
{
   lcd.clear();
lcd.write("Mensaje erroneo");
 lcd.noBlink();
}