soy nuevo en el foro necesito un favor estoy utilizando el pic 16f877A no se mucho apenas retome y no puedo encender unos leds con un simple boton, mi programa es el siguiente.
La entrada se supone que es en puerto a 0,1 y la salida es el puerto b no me funciona en proteus
__CONFIG _WDT_OFF&_PWRTE_ON&_XT_OSC&_LVP_OFF&_CP_OFF ; Configuración para el programador
LIST P=16F877A
INCLUDE <P16F877A.inc>
PORTA EQU 0x05
PORTB EQU 0x06
ORG 0X00
GOTO inicio
ORG 0X05
inicio
BCF STATUS,RP1 ; BANCO 1
BSF STATUS,RP0; Cambia al banco 0
CLRF PORTA ; inicicaliza el puerto a
CLRF PORTB ; inicializa el puerto b
MOVLW B'00001100';
MOVWF ADCON1;
MOVLW B'11111111' ;
MOVWF TRISA;
MOVLW B'00000000';
MOVWF TRISB
BCF STATUS,RP0; BANCO 0
PRINCIPAL
CLRF PORTB
CLRF PORTA
BTFSS PORTA,0;
GOTO COMP2B2;
GOTO COMPB2;
COMPB2 ;
BTFSC PORTA,1;
GOTO TRES;
GOTO DOS;
COMP2B2 ;
BTFSC PORTA,1;
GOTO CUATRO;
GOTO UNO;
UNO
MOVLW B'00000001'
MOVWF PORTB
GOTO PRINCIPAL
DOS
MOVLW B'00000010';
MOVWF PORTB
GOTO PRINCIPAL
TRES
MOVLW B'00000100'
MOVWF PORTB
GOTO PRINCIPAL
CUATRO
MOVLW B'11110000'
MOVWF PORTB
GOTO PRINCIPAL
END ; FIN DEL PROGRAMA
La entrada se supone que es en puerto a 0,1 y la salida es el puerto b no me funciona en proteus
__CONFIG _WDT_OFF&_PWRTE_ON&_XT_OSC&_LVP_OFF&_CP_OFF ; Configuración para el programador
LIST P=16F877A
INCLUDE <P16F877A.inc>
PORTA EQU 0x05
PORTB EQU 0x06
ORG 0X00
GOTO inicio
ORG 0X05
inicio
BCF STATUS,RP1 ; BANCO 1
BSF STATUS,RP0; Cambia al banco 0
CLRF PORTA ; inicicaliza el puerto a
CLRF PORTB ; inicializa el puerto b
MOVLW B'00001100';
MOVWF ADCON1;
MOVLW B'11111111' ;
MOVWF TRISA;
MOVLW B'00000000';
MOVWF TRISB
BCF STATUS,RP0; BANCO 0
PRINCIPAL
CLRF PORTB
CLRF PORTA
BTFSS PORTA,0;
GOTO COMP2B2;
GOTO COMPB2;
COMPB2 ;
BTFSC PORTA,1;
GOTO TRES;
GOTO DOS;
COMP2B2 ;
BTFSC PORTA,1;
GOTO CUATRO;
GOTO UNO;
UNO
MOVLW B'00000001'
MOVWF PORTB
GOTO PRINCIPAL
DOS
MOVLW B'00000010';
MOVWF PORTB
GOTO PRINCIPAL
TRES
MOVLW B'00000100'
MOVWF PORTB
GOTO PRINCIPAL
CUATRO
MOVLW B'11110000'
MOVWF PORTB
GOTO PRINCIPAL
END ; FIN DEL PROGRAMA