No se explicar exactamente que sucede, a ver si podeis medio saber el pq..
Un sensor me está tomando unas medidas, para hacer la conversión hasta obtener el resultado a mostrar no se hace uso de ninguna interrupción, no usa ningun port q tenga q ver con el problema, el caso esq el error se hace presente en el valor a mostrar de este sensor.
Tengo una interrupción INT_EXT, y esta llama a una función que hace uso del I2C para obtener unos valores (hora y fecha).
Si compilo el programa llamando a la funcion del I2C desde dentro del código de interrupcion, el sensor muestra un valor incorrecto, la primera medida es buena, las demas son todas erroneas...
Sin embargo si compilo el programa sin hacer la llamada a la función del I2C (dentro del código de la interrupción, si la coloco fuera no hay problema) entonces el sensor muestra los datos como debería, ya os digo que no hay ninguna relación ni directa ni indirecta entre el sensor y el I2C, usan puertos distintos, funciones y variables distintas, el caso esq por alguna razón el resultado es erroneo.
Además, en el momento del fallo tampoco estoy haciendo uso del código de la interrupción, es decir, aún no ha habido cambio en el PB0, pero el error está presente, como digo, siempre y cuando llame a esa función desde dentro del codigo de la interrupcion....
Es algun error del compilador? pq es otro fallo sin sentido :S .....
he repasado el código y está bien, una vez dentro d la interrupción no se vuelve a llamar a otra, estan todas las demas deshabilitadas, en fin, que no se me ocurre como solucionar este problema :S
Gracias y perdonad pero esq no se explicarlo mejor!! es muy raro....
Salu2!