TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: pepemarchena en 06 de Junio de 2011, 13:26:23
-
Hola a todos.
La idea es:
Programo un pic16f628 para que envie y reciba por el puerto serie.
-Ambas cosas las hace bien.
El problema surge cuando recibe datos, ya que para saber cuando acaba un paquete
la linea de recepción debe mantenerse un tiempo (2,5ms) sin movimientos. Así pues, lo
que hago és:
-A cada byte que me llega por el puerto serie, redisparo el timer1 nuevamente., con lo que
cuando dejan de llegar datos el timer llegara a final de cuenta y provocarà la interrupcion
que me permite saber que se ha acabado el paquete. EOF=1;
_ la idea es la correcta, pero simulando se puede comprobar que al llegar el primer byte que es
cuando reedisparo el timer , este ya llega a final de cuenta y pone EOF a 1.
con lo cual no recibo más bytes.
-
por que no usas una interupcion seria mas facil y asi solo estarias enviando datos o haciendo cualquier otra accion antes de recibir
-
Hola
Si que utilizo interrupciones.
Tanto para leer datos des de el puerto serie, como para realizar la
deteccion de final de paquete por timer1
Saludos