Es una mala idea que se haga el sleep en la interrupcion como ya te lo dijeron..
Tambien porque usualmente en tu main vas a hacer cosas, y esas cosas van a quedar a la mitad.
Para lo que queres podes usar la interrupcion externa y listo.
Mientras esta activo el PIC, al enrtar en la interrupcion activa un flag y que luego en el main lo envie a dormir.
Mientras esta dormido tenes activo tu interrupcion externa, y al detectarse de nuevo podes iniciar un reset, o de ultima retomar la actividad.