Hola,
Estoy usando el ingreso de caracteres por el UART para salir del lazo Do-Where, pero por mas que introdusco los caracteres correctos ('N', 'b', 'p', 'P', 'H') no logro salir de lazo, alguien me puede decir cual es mi error?
Estoy usando CCS V4.074
Aqui esta mi codigo:
#include <18F4620.h>
#fuses HS,NOWDT,NOPROTECT,NOLVP,NOBROWNOUT
#use delay(clock=20MHz)
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)// RS232 Estándar
char Keypress=' ';
#int_rda
void serial_isr() {
Keypress=0x00;
if(kbhit()){
Keypress=getc();
if(Keypress!=0x00){
putchar(keypress);
keypress=0x00;
}
}
}
void main() {
enable_interrupts(global);
enable_interrupts(int_rda);
printf("\r\n\Listen on RS232 \r\n");
do {
} while ((Keypress != 'N') && (Keypress != 'b') && (Keypress != 'h') && (Keypress != 'H') && (Keypress != 'P'));
printf("\r\n\The End\r\n");
while(1);
}