Hola:
En el código de abajo he logrado con un interruptor cambiar de estado. Me gustaría hacer lo mismo pero con un pulsador, es decir, pulso un pulsador (no botón) que pasa de estado 0 y cuando lo suelto vuelve a 1.
Los PORTB, 6 y el 7 sólo son Led para ver como actúan.
Un cordial saludos.
En el código de abajo he logrado con un interruptor cambiar de estado. Me gustaría hacer lo mismo pero con un pulsador, es decir, pulso un pulsador (no botón) que pasa de estado 0 y cuando lo suelto vuelve a 1.
Los PORTB, 6 y el 7 sólo son Led para ver como actúan.
Código:
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC ; Configuración para el
; grabador.
LIST P=16F84A ; Procesador.
INCLUDE <P16F84A.INC> ; Definición de los operandos utilizados.
; ZONA DE CÓDIGOS ********************************************************************
ORG 0 ; El programa comienza en la dirección 0 de memoria de
Inicio ; programa.
bsf STATUS,RP0 ; Pone a 1 el bit 5 del STATUS. Acceso al Banco 1.
clrf PORTB ; Las líneas del Puerto B se configuran como salidas.
movlw b'11111111'
movwf PORTA ; Las líneas del Puerto A se configuran como entradas.
bcf STATUS,RP0 ; Pone a 0 el bit 5 de STATUS. Acceso al Banco 0.
clrf PORTB
clrf PORTA
Principal
btfss PORTA,0 ; ¿Bit 0 del PORTA es "1"?
goto hola
bcf PORTB,6
bsf PORTB,7
goto Principal
hola
bsf PORTB,6
bcf PORTB,7
goto Principal ; Crea un bucle cerrado.
End
Un cordial saludos.