Estoy haciendo un pequeño proyecto, tengo una aplicacion en mi celular donde simula un dipswith de 8 bits, y del otro lado un display, asi que te da en valor en decimal del valor binario que este en los pics, tengo el material, lo voy a hacer, claro, con un dip swith, 3 displays de esos normales creo que se llaman de 8 segmentos, asi que voy a ir checando el estado del dip y mostrar el valor del 0 al 256 en los display.
El problema es que por el metodo que lo estoy haciendo es demaciado largo, chequen mi codigo, solo hice una pequeña parte, pues se repetiria muchas veces, 256 checadas del dip y 256 para imprimir el numero en los display, me preguntaba si no hay otra forma de hacerlo:
Muchas gracias, supongo que debe de haber un algoritmo facil, pero no se me ocurre como.
El problema es que por el metodo que lo estoy haciendo es demaciado largo, chequen mi codigo, solo hice una pequeña parte, pues se repetiria muchas veces, 256 checadas del dip y 256 para imprimir el numero en los display, me preguntaba si no hay otra forma de hacerlo:
Código:
INCLUDE P16F877A.INC
TIME EQU 0X21
DATO EQU 0X22
ORG OXOO
BSF STATUS,5
BCF STATUS,6
MOVLW B'11111111'
MOVWF TRISA
CLRF TRISB
CLRF TRISC
CLRF TRISD
MOVLW B'00000111'
MOVWF OPTION_REG
BCF STATUS,5
INICIO MOVF PORTA,W
MOVWF DATO
MOVLW B'00000000'
SUBWF DATO,W
BTFSC STATUS,Z
GOTO CERO
MOVLW B'00000001'
SUBWF DATO,W
BTFSC STATUS,Z
GOTO UNO
UNO
MOVLW B'00111111'
MOVWF PORTB
MOVLW B'00111111'
MOVWF PORTC
MOVLW B'00000110'
MOVWF PORTD
RETURN
Muchas gracias, supongo que debe de haber un algoritmo facil, pero no se me ocurre como.