Huele a trabajo de fin de curso. ¿Me equivoco?
Te voy a dar algunas ideas respecto a lo del pulsador, pero debes de ser tú quien escriba el código.
- El pulsador mételo en la interrupción RB0 (¡¡cuidado con los rebotes!!)
- Cuando se detecte que se ha pulsado por primera vez activa la interrupción del TMR0 para contar los 2s.
- Cuando finalice la temporización de 2s bloquea la interrupción del TMR0, borra todas las variables auxiliares que has usado y asigna el valor del contador a la variable pulsos.