He probado poniendo ldc_init antes del bucle y solo con ese cambio tampoco funciona.
He hecho varias pruebas, y curiosamente si el mensaje es mayor de 7 caracteres se bloquea. He probado este código y funciona:
#include <16F88.h>
#FUSES INTRC, NOWDT, NOLVP, NOCPD, NOWRT, NODEBUG, NOPROTECT, NOFCMEN, NOIESO, NOMCLR, NOBROWNOUT, CCPB3
#use delay(clock=8000000)
#include "lcd_puertoB.c"
void main()
{
setup_oscillator(OSC_8MHZ|OSC_INTRC);
lcd_init();
while(1)
{
delay_ms(1000);
lcd_putc("\f");
delay_ms(1000);
lcd_gotoxy(1,1);
printf(lcd_putc,"Saludos");
delay_ms(1000);
lcd_gotoxy(1,2);
printf(lcd_putc,"que tal");
}
}
¿Qué puede pasar? ¿Alguna mala conexión de algún bit?