Muy buenas, estoy usando un PIC16F876 recibiendo datos por la UART, si hago un retardo largo en el programa principal y durante ese retardo le envio los datos, funciona perfectamente, pero el aparato funcionaria a baterias, por lo que deberia dormirlo cuando no haya datos y despertarlo en cuanto comience a recibir datos. Para despertarlo he puenteado las lineas RX y RB0 y he programado la interrupcion INT0, como no uso el puertoB puedo hacerlo sin problemas y ademas el micro se despertara antes de que haya terminado el bit de "start" y pueda coger todo el primer byte correctamente. Pues bien, al llegar los datos, el micro se despierta, pero no recibe los datos, cuando entra en la rutina de atencion a la INT0 la desprogramo porque ya no me hace falta y asi solamente saltara la interrupcion por recepcion, he comprobado con un led los flags necesarios para la recepcion y estan correctamente, tambien he comprobado con un contador que sin dormirlo recibe 11 datos (correcto) y durmiendolo no recibe ningun dato . Algo pasa al dormirlo que me estropea la recepcion de datos y no se que es, he probado a volver a configurarlo segun salta la INT0 y ese tipo de cosas pero nada. No se si es porque no recibe bien el primer bit y pierde toda la sincronizacion o que le pasa.
Gracias y un saludo.