Hola a todos,
Hice un programita k envia 5 caracteres (contraseña) del pc al pic, este lo compara con otros caracteres.
* Si los caracteres tecleado son correctos prende led por 2seg si no son correctos apaga led por 2 seg.
* Mientras no se envia caracter el led esta oscilando cada 100ms.
Todo funciona bien pero cuando tecleo muy rapido el pic se loquea y ya no me hace caso, a k se debe eso.
Gracias y saludos.
Aqui posteo el codigo.
#include <16f876.h>
#fuses XT,NOWDT,NOPUT
#use delay(clock=20000000)
#use rs232(baud=9600, xmit=pin_C6, rcv=pin_C7, bits=8, parity=N)
void main (void){
int i=0;
char Data[5];
SET_TRIS_A(0x00); // RA0 salida
output_low (pin_A5);
while(TRUE){
if(kbhit()){
Data=getc();
i++;
if(i==5){
i=0;
if(Data[0]=='E'&& Data[1]=='d' && Data[2]=='w'&& Data[3]=='i'&& Data[4]=='n'){ //aqui compara
puts("Recibido");
output_high(PIN_A5);
delay_ms(2000);
}
else{
puts("Error");
output_low(PIN_A5);
delay_ms(2000);
}
}
}
output_high (pin_A5);
delay_ms(100);
output_low (pin_A5);
delay_ms(100);
}
}