UH! gracias por el razonamiento... me quede toda la noche programando pero al final lo hice con 2 display de 7 segmentos, ahora tengo el programa en asm en donde uso RB4 como contador de pulsos externos en 1 segundo (pienso ponerle un CI555 para simularlo) ; RA0 y RA1 como señales independientes a la entrada del anodo de cada display y asi multiplexarlos... Me surgio un problema, pense que me iba a andar bien pero lo probe en el proteus y pic simulator IDE y no me funciono. Yo soy nuevo en esto del pic por eso queria saber si me podrian dar una mano y pegarle un vistazo porque por ahi le pifie en algo y no me di cuenta...desde ya gracias!!!
REG1 EQU 0X0C
REG2 EQU 0X0D
REG3 EQU 0X0E
cont_timerd EQU 0X0F ;valor de contador deL tmr0 para calcular decena
cont_dec EQU 0X10 ;valor final de decena
cont_uni EQU 0X20 ;valor final de unidad
multiplex EQU 0X30 ;realiza el multiplexado
cont_timeru EQU 0X40 ;valor de contador del TMR0 para calcular unidad
org 0x0000
INICIO bsf status,rp0
clrf trisb
bsf trisa,4
movlw b'00111000'
movwf option_reg
bcf status,rp0
TIMER clrf tmr0 ; comienza timer en cero
RETARDO movlw 0x45 ;retardo de 1 seg
movwf REG3
TRES movlw 0x45
movwf REG2
DOS movlw 0x45
movwf REG1
UNO decfsz REG1,1
goto UNO
decfsz REG2,1
goto DOS
decfsz REG3,1
goto TRES
PRINCIPAL
movf tmr0,w ;despues de transcurrido el tiempo se lee cuantos pulsos hubo en el contador
movwf cont_timerd
DECENA movlw d'10' ;carga 10 para compararlo con el contador y sacar decenas
subwf cont_timerd,0
btfsc status,0
goto UNIDAD
movwf cont_timerd
movlw 0x00
movwf cont_dec
incf cont_dec,1
goto DECENA
UNIDAD bcf status,0
movf tmr0,w
movwf cont_timeru
movlw d'1' ;carga 1 para compararlo con el contador y sacar unidades
subwf cont_timeru,0
btfsc status,0
goto CALCUL
movwf cont_timeru
movlw 0x00
movwf cont_uni
incf cont_uni,1
goto UNIDAD
CALCUL movlw b'00000010' ; valor para visualizar 1° display
movwf multiplex
movf multiplex,0
movwf porta
movf cont_dec,0
call DISPLAY
movwf portb
bcf status,0
rrf multiplex,1 ;valor para visualizar 2° display
movf multiplex,0
movwf porta
movf cont_uni,0
call DISPLAY
movwf portb
goto TIMER ;vuelve a contar
DISPLAY addwf pcl,f ;tabla del display de 7 segmentos
retlw 3fh
retlw 06h
retlw 5bh
retlw 4fh
retlw 66h
retlw 6dh
retlw 7dh
retlw 07h
retlw 7fh
retlw 6fh
end