rivale gracias por responder, pues la verdad es que con la ayuda de un foro de todopic titulado si mal no recuerdo lo basico de la comunicacion cdc por C18, pude conseguir lo que usted me menciona, que entiendo es que me rebote cada palara o letra que yo escribo y el codigo es el siguiente:
BYTE numBytesRead;
if((USBDeviceState < CONFIGURED_STATE)||(USBSuspendControl==1)) return;
if(USBUSARTIsTxTrfReady())
{
numBytesRead = getsUSBUSART(USB_Out_Buffer,64);
if(numBytesRead != 0)
{
strcpypgm2ram(USB_In_Buffer,(const rom far char *)"Ha pulsado: "); //codigo del forero de todopic
strncat(USB_In_Buffer, USB_Out_Buffer, numBytesRead); //codigo del forero de todopic
strcatpgm2ram(USB_In_Buffer,(const rom far char *)"\r\n"); //codigo del forero de todopic
putsUSBUSART(USB_In_Buffer); //codigo del forero de todopic
}
}
Se supone que cuando yo abro el hyperterminal presiono una tecla por ejemplo la 'a' y al instante me rebota "ha pulsado: a"
eso lo hace bien, pero cuando intento asegurarme de que letra entro no logro conseguir, por ejemplo yo quiero que si yo presiono la a me cambie el estado de un puerto, que si presiono la b me cambie el estado de otro puerto, y he intentado lo siguiente:
if (numBytesRead== 'a')
{
PORTCbits.RC5 != PORTCbits.RC5;
}
nota: estuve mirando y BYTE es la redefinicion de unsigned char. El programa me corre bien pero en simulacion real no consigo resultados