Hola a todos
Hola Suky.
Pues al final he optado por reducir las tramas enviadas por el gps y quedarme solo con la GPRMC, que me da geoposicion y velocidad. La verdad que desde que plantee la pregunta he estado sin descanso intentando buscar la mejor forma de intercomunicarme con el gps y al final he optado por leer una sola trama.
No encuentro por ningun lado el fallo y me rindo. La solucion no ha sido la que yo hubiera esperado, pero ignoro porque no me mantiene un indice del vector de caracteres.
Como bien dices la rutina de interrupcion siempre hay que entrar y salir lo mas rapido posible. Eso en todos los tipos de interrupciones. En mi caso cojo el caracter, lo meto en el vector y salgo. Solo cuando detecto un retorno de carro activo una variable desde la interrupcion que lo imprime todo desde el main.
He de decir que por otra parte, y pese a la mediocre solucion, he aprendido bastante de la usart, de rellenar vectores y todo eso. Ahora continuare con ello. Mi agradecimiento a RedPic y a mucha otra gente que me ha ayudado directa e indirectamente.
continuará!
pd:Por si alguien le interesa el codigo, es el mismo que ahi arriba. Lo unico que tuve que cambiar la config del gps para que lanzara solo la trama que yo queria