LA ACLARACION QUE ME HICIERON SIRVIO PERO CON LO DEL REFRESCO SIGO CON PROBLEMAS HE INTENTADO HACERLO POR RETARDOS PERO SIGUE PASANDO LO MISMO, LA INTERRUPCION NO LA PUEDO USAR POR QUE LA TENGO OCUPDA CONTANDO TIEMPOS. ADJUNTO LA PARTE DEL CODIGO DONDE ENCONTRE LO QUE AFECTA EL DISPLAY
LA IDEA NO ES RESTAR NUMEROS, ES HABILITAR UN DIPLAY PRIMERO Y DESPUES EL OTRO, ESTO LO HAGO PORQUE UTILIZO EL MISMO PUERTO PARA ENVIAR LOS DATOS AL DISPLAY, ES UNA VISUALIZACION DINAMICA, ESTA PARTE DEL CODIGO HACE ESO HABILITA UNO MANDA EL DATO, DESPUES LO DESHABILITA, HABILITA EL OTRO Y MANDA EL DATO.
EL PROBLEMA ESTA EN QUE EL PRIMER DISPLAY QUE SE HABILITA ES EL QUE SE VE MENOS BRILLANTE
;*******RUTINA SALIDA DEL DATO AL PUERTO**********************************************
SALPUER BSF PORTA,4 ;DESHABILITA DIS1 CON EL TRANSISTOR
BSF PORTA,5 ;DESHABILITA DIS2 CON EL TRANSISTOR
MOVWF DATOP ;MUEVE EL DATO AL REGISTRO PARA PUERTO
BTFSS DATOP,7 ;REVISA EL BIT DE SIGNO PARA SABER SI ES - O +
GOTO PUERTO ;SI ES POSITIVO VA AL PUERTO
BCF DATOP,7 ;SI ES NEGATIVO LIMPIA EL BIT DE SIGNO
BSF SIGNO,7 ;GUARDA EL SIGNO DE VALOR NEGATIVO
PUERTO MOVLW .10 ;CARGA CON 10 PARA CONVERTIR BCD
DISPL SUBWF DATOP,1 ;HACE LA RESTA
BTFSS STATUS,0 ;REVISA EL RESULTADO
GOTO INICIAL ;SI ES MENOR DE 10 VA A INICIAL
INCF DATOP2,1 ;SI ES MAYOR DE 10 INCREMENTA
GOTO DISPL ;CONTINUA CON EL CICLO
INICIAL ADDWF DATOP,1 ;REGRESA EL VALOR INICIAL
MOVLW .1 ;ESTO DIRECCIONA LA POSISCION
MOVWF PCLATH ;DE LA TABLA DECO
MOVF DATOP2,W ;LLEVO EL DATO MAS ALTO AL PUERTO
CALL DECO ;TABLA DECODIFICADOR
BTFSS SIGNO,7 ;REVISA EL SIGNO
GOTO SALID1 ;SI ES CERO VA DIRECTO AL PUERTO
IORWF SIGNO,W ;SI ES UNO COLOCA EL BIT 7 EN UNO PARA MOSTRAR EN EL SALID1 BSF PORTA,4 ;DESHABILITA DIS1 CON EL TRASISTOR
BCF PORTA,5 ;HABILITA DIS2 CON EL TRANSISTOR
MOVWF PORTB ;CARGA EL DATO ALTO AL PUERTO
CALL RETM2 ;VA AL RETARDO PARA VISUALIZAR
MOVF DATOP,W ;CARGA EL DATO BAJO
CALL DECO ;TABLA DECODIFICADOR
CLRF PCLATH ;LIMPIA PCLATH PARA CONTROL DE TABLAS
BTFSS SIGNO,7 ;REVISA EL SIGNO
GOTO SALID2 ;SI ES CERO VA DIRECTO AL PUERTO
IORWF SIGNO,W ;SI ES UNO COLOCA EL BIT 7 EN UNO PARA MOSTRAR EN EL
SALID2 BCF PORTA,4 ;HABILITA DIS1 CON EL TRASISTOR
BSF PORTA,5 ;DESHABILITA DIS2 CON EL TRANSISTOR
MOVWF PORTB ;CARGA EL DATO AL PUERTO
CALL RETM2 ;VA AL RETARDO PARA VISUALIZAR
CLRF DATOP ;LIMPIA REGISTRO
CLRF DATOP2 ;LIMPIA EL REGISTRO DE INCREMENTO
CLRF SIGNO ;LIMPIA EL REGISTRO DE SIGNO
BSF DIS2,1 ;CAMBIA EL ESTADO DE LA BANDERA A UNO
RETURN