#include <18f2550.h>
#FUSES INTRC_IO,NOWDT,PUT,MCLR,NOBROWNOUT,NOLVP,NOPROTECT,NODEBUG,NOFCMEN,NOIESO
#use delay(Internal=8M)
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)
//------------ Pines del LCD ---------------------//
#define LCD_E PIN_C0
#define LCD_CK PIN_C1
#define LCD_DAT PIN_C2
//--------------------------------------------------//
#include "lcd3.c"
#use standard_io (a)
#use standard_io (b)
void main()
{
char orden,in;
lcd_init();
while(TRUE) {
delay_ms(100);
orden = input_b();
if(input(PIN_C4)==1) {
lcd_gotoxy(1,1);
printf(lcd_putc,"RX En Espera ");
putc(orden);
}
else{
in=getc();
lcd_gotoxy(1,1);
printf(lcd_putc,"Tx En Mando ",);
lcd_gotoxy(8,2);
printf(lcd_putc,"%c",in);
}
}
}
Dejo la simulacion tambien