Tholkiem cuando te mencioné:
RC4:D4
RC5:D5
RC6:D6
RC7:D7
RS y E los puedes dejar igual.
RC4,RC5,RC6,RC7 son los pines del pic y D4,D5,D6,D7 los pines del bus de datos en el lcd.
Bueno si te funciona en proteus debería funcionar en la realidad.
Pero una cosa, dices que lo has probado comenzando desde el 0 y desde el 4.. Pero lo has probado en proteus con la configuración que tienes actualmente? Porque me parece que como lo estás declarando en el flex_lcd tienes conectado el bus de datos comenzando desde portc2... no es así?
Prueba en la realidad conectándolo de esta forma, comenzando desde el pin 4 o desde el 0, y haciendo los ajustes en el programa.
Por otro lado, has probado conectandole la alimentación al backlight, entre los pines 15 y 16?
Bueno prueba eso a ver qué tal.
Y por cierto, no creo que sea problemas del lcd. Es muy raro que vengan dañados.
Generalmente el problema está en el código y en los tiempos de RS y E que a veces varían de un lcd a otro.
Te diré que a mí me pasó lo mismo, cuando trabajé por primera vez con un lcd me tardó bastante en poder hacer que mandara un mensaje.
Sigue probando, y sobre todo el valor de Vee es importantísimo.... debes tener conectado un potenciómetro para ajustar el contraste, pues de lo contrario no verás nada, solo cuadritos negros.
Ok sigue haciendo tus pruebas y ya nos contarás.
Nos leemos!