Dos soluciones
El pic16f877 tiene una memoria eeprom para estos usos puedes utilizarla para guardar los datos (recuerda 1000000 escrituras, no hagas un buble escribiendo todo el rato, solo cuando cambie o sea necesario)
Puedes utilizar un pulsador, o un detector
En el caso que solo quieras grabarlo pues un pulsador.
Esto es para la baretia.
Lo mejor para evitar caidas de tension es utilizar diodos de germanio o stocky, si eres amante del cachareo mira en alguna fuente conmutada y con el tester mides la caida, posicion diodos, hay algunas que en ver de tener los 0.6V del silicio pueden llegar a tener menos de 0.1.
La bateria debe tener una tension superior de 3V mira en el datacheet, hay dos tensiones la de funcionamiento (depende del cuarzo) y la de retensión que es la minima para que no se borren los datos de la ram.
Tambien puedes poner el micro en sleep para reducir el consumo y despertarlo con un pulsador mediante una interrupcion int0
El condensador de 4700uF permite retirar la bareia unos segundos, si lo aumentas durara mas, y como mas baja es la tension menor tamaño tiene-
Tambien hay unos condensadores memoria utilizados en los videos que pueden mantener la información durante una hora siempre que pongas el micro en sleep te ahorras de poner el diodo derecho y la bateria.
La resistencia en paralelo con la bateria es por si quieres que siempre este recargandose.
El par de resistencia de la izquierda es un detector de desconecxion para que guarda los datos cuando lo desconectes..
En teoria podrias sacar todo el circuito de baterias y dejar el condensador electrolitico, y en el instante en que saques la corriente las resistencias producirian una interrpcion que generaria la grabacion de los datos en la eeprom, durante esos milisegundos el condensador daria la tension necesaria.
Puede que las resistencias deban conectarse en el transformador antes del puente para garantizar un brusca caida, deberia poserse un diodo y un condensador de poca capacidad 100nF