Hola, bueno, te escribo un programita.... pero luego tendras que estudiar el manejo de tablas....
ahora te doy una solución simple, pero no la más elegante....
por eso, te aclaro, que la mejor seria, presentando el valor al display manejando tablas....
INICIO1
movlw b'11100111'
movwf PORTB
call sg1
call sg1
CALL PULSADOR
movlw b'10000100'
movwf PORTB
call sg1
call sg1
CALL PULSADOR
movlw b'11010011'
movwf PORTB
call sg1
call sg1
CALL PULSADOR
movlw b'11010110'
CONTINUAR........
Es decir, solo agrega esto a tu anterior programa ( CALL PULSADOR )
;------------------------------------------------------------------------------------
PULSADOR btfsc porta,0
goto $-1 ;salta una posición para arriba
call demora50ms ;llama a un retardo de 50 milisegundos
btfsc porta,0 ;verifico si mantiene aún pulsado
goto pulsador ; no esta pulsado, entonces fué ruido
btfss pulsador,0 ;espero a que suelten el pulsador
goto $-1
return
;-----------------------------------------------------------------------------------
De esta manera, cada vez que pulse, , pasara a presentar el numero siguiente
Norberto