Muy buenas. Tengo un problema con un programilla, lo que hago basicamente es con un pulsador pongo en marcha o paro el programa, lo hago con las interrupciones del RB, cuando el programa funciona solamente tiene que usar el ADC y sacar el valor por pantalla, y cuando esta parado, saco un mensaje por pantalla para avisar y le dejo en sleep habilitando el pulsador para poder encenderlo. La rutina de atencion del pulsador no es mas que cambiar un bit de un registro, asi sabe si esta encendido o apagado y cambia ese valor al pulsar. El problema es que cuando habilito la interrupcion RBIE, el micro se queda parado despues de haber usado el CAD y sacado el dato por pantalla 1 vez, solamente con poner BSF INTCON,RBIE y seguido BCF INTCON,RBIE se supone que no pasaria nada si el flag RBIF esta a 0 (lo borro previamente) pues ya no funciona, se queda dormido en ese punto, lo se porque despues de ese punto saco un mensaje por pantalla y al pulsar el boton salta la interrupcion, el programa continua el flujo y me sale el mensaje por pantalla, lo mismo que si hubiera hecho un sleep y al saltar la interrupcion del pulsador continuase el programa. Logicamente, si no habilito la RBIE, el CAD funciona continuamente y puedo verlo en pantalla variando la tension que le meto con un potenciometro, pero entonces ya no puedo detener el aparato usando el pulsador porque no esta habilitada la RBIE. Llevo 2 dias parado con este problema, y anteriormente lo intente hacer usando un timer, cada cierto tiempo saltaba el timer y me sacaba el valor usando el CAD, pero tenia el mismo problema con el pulsador y no funcionaba bien. Intentare comprar otro micro (16F876A) para ver si es eso, pero no lo creo...
Si alguien me puede echar un cable se lo agradeceria enormemente.
Saludos.