Inviare testo tramite porta seriale a un LCD

Ho collegato un lcd ad arduino per riuscire a visualizzare il testo immesso tramite la porta seriale ma non riesco a creare una variabile per contenere una stringa di testo.Fino ad ora sono riuscito solo ad assegnare ad a un solo carattere...

#include <LiquidCrystal.h>


LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
 lcd.begin(16, 2);
 Serial.begin(9600);
   }

void loop() {
if (Serial.available()) {
    char a = Serial.read();
    lcd.setCursor(0, 0);
    lcd.print(a);
     }
   }

Intanto per cominciare si saluta
per continuare ... togli quel titolo tutto maiuscolo che non siamo ciechi... hai visto qualche treadh su questo forum in maiuscolo?
e ancora ... il codice va postato negli appositi tag (simpolo "#")
e ancora ... una presentazione non guasterebbe
e ancora ... più importante Leggiti un po' di regolamento [REGOLAMENTO] Come usare questa sezione del forum - Italiano - Arduino Forum
infine anche un grazie rende più felici tutti

Nemmeno la domanda hai fatto :fearful:

Grazie a te per la collaborazione

La presentazione è utile se ci dici anche quali conoscenze hai, sia di elettronica che di programmazione.
Una serie di link utili in generale:

Cioè il tuo problema è che ricevi e sai gestire un solo carattere?
Arduino si programma in C/C++ e non ci sono le Stringhe del Basic o del Java.
Il testo è un array/vettore di caratteri terminato da carattere speciale '\0'
Ci sono in Arduino anche gli oggetti String ma sono pesanti e possono dare problemi di memoria, su un MCU con appena 2Kb di SRAM.
Puoi usare la ReadBytesUntil(): Serial.readBytesUntil() - Arduino Reference

void loop() {
  if (Serial.available()) 
  { char buf[40];
    int n=Serial.readBytesUntil('\n', buf, sizeof(buf));      // attende un new line o timeout
    if(n>0)
    { buf[n]='\0';
      lcd.setCursor(0, 0);
      lcd.print(buf);
    }
  }
}

Dovrai nel serial monitor impostare che quando si invia il testo con INVIO deve anche aggiungere il carattere "a capo NL".