Hola, como ya dijeron por ahi, debes recibir letra por letra (mediante getc) y en software almacenar en un buffer y luego que recibiste todos los caracteres, analizar lo que te llegó, finalmente hacer un printf al lcd. El gets lo que hace es recibir caracteres letra por letra ( usando getc, o sea te lo hace por vos...) PERO hasta que llega un 0x0D o un ENTER o RETURN que es lo mismo y lo almacena en una variable que tu le designas.
#use rs232..........
Examples:
char string[30];
printf("Password: ");
gets(string);
if(strcmp(string, password))
printf("OK");
El ejemplo del ccs explica un poco mejor eso. Si desde la pc haces que cada palabra termine con un 0x0D , es decir un caracter extra, podrás usar gets para tu cometido...