Proyecto final compuerta inteligente
Proyecto de Microprocesadores
Compuerta Inteligente
;--------------------------- LIBRERÍA ---------------------------
INCLUDE <P16F84A.INC> ; LIBRERIA DEL PIC
;-------------------CONFIGURACIÓN INICIAL ----------------------
__config _XT_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF
CBLOCK 0CH
KEY ; VARIABLE QUE DETERMINA CIERRE O APERTURA
ENDC
ORG00H ; ORIGEN DE PROGRAMA PRINCIPAL
GOTO PRINCIPAL ; RUTINA DE PROGRAMA PRINCIPAL
ORG 04H ; ORIGEN DE INTERRUPCIÓN
GOTO INT_EXT ; RUTINA DE INTERRUPCIÓNEXTERNA
;--------------------------- PRINCIPAL -------------------------
PRINCIPAL
BSF STATUS,RP0 ; NOS PASAMOS A BANCO (1)
MOVLW B'00000001' ; RB0 CONFIGURADO COMO ENTRADA
MOVWFTRISB
CLRF TRISA ; TODO PUERTO A ES DE SALIDA
MOVLW 90H ; HABILITAMOS GIE & INTE
MOVWF INTCON
BSF OPTION_REG,INTEDG ; FLANCO DE SUBIDA (1)
BCF STATUS,RP0 ; NOSPASAMOS A BANCO (0)
CLRF PORTB ; QUITAR BASURA
CLRF PORTA ; QUITAR BASURA
CLRF KEY ; INICIALIZAMOS EN 0
;---------------------------- ESPERAR---------------------------
ESPERAR ; STATUS DE ESPERA
BSF PORTB,1 ; ENCIENDE LED AMARILLO (ESPERAR)
CALL PAUSA_.5SEG ; PAUSA DE .5 SEGUNODS
CALL PAUSA_.5SEG ; PAUSA DE .5SEGUNODS
BCF PORTB,1 ; APAGA LED AMARILLO (ESPERAR)
CALL PAUSA_.5SEG ; PAUSA DE .5 SEGUNODS
CALL PAUSA_.5SEG ; PAUSA DE .5 SEGUNODS
GOTO ESPERAR ; REPETIMOS CICLO DE ESPERAR;------------------------ INTERRUPCIÓN EXTERNA ------------------
INT_EXT
BTFSC KEY,0 ; DECIDA EN BASE AL STATUS DE LA BANDERA
GOTO CLOSE ; FUNCION CERRAR
GOTO OPEN; FUNCION ABRIR
;--------------------------- ABRIR -----------------------------
OPEN
BCF PORTB,1 ; APAGA LED AMARILLO (ESPERAR)
BSF PORTB,2 ; ENCIENDE LED VERDE...
Regístrate para leer el documento completo.