LIST P=16F84A
INCLUDE<P16F84A.INC>
__CONFIG _CP_OFF&_PWRTE_ON&_WDT_OFF&_XT_OSC
radix hex ;RETARDOS EN HEX
CBLOCK 0x20
TIEMPO
TIEMPO1
TIEMPO2
ENDC
ORG 0x00
BSF STATUS,5
BCF PORTB,0 ;Semaforo 1 ROJO
BCF STATUS,5
BSF STATUS,5
BCF PORTB,1 ;Semaforo 1 AMARILLO
BCF STATUS,5
BSF STATUS,5
BCF PORTB,2 ;Semaforo 1 VERDE
BCF STATUS,5
BSF STATUS,5
BCF PORTB,3 ;Semaforo 2 ROJO
BCF STATUS,5
BSF STATUS,5
BCF PORTB,4 ;Semaforo 2 AMARILLO
BCF STATUS,5
BSF STATUS,5
BCF PORTB,5 ;Semaforo 2 VERDE
BCF STATUS,5
BCF PORTB,0 ;Inicien apagados
BCF PORTB,1 ;Inicien apagados
BCF PORTB,2 ;Inicien apagados
BCF PORTB,3 ;Inicien apagados
BCF PORTB,4 ;Inicien apagados
BCF PORTB,5 ;Inicien apagados
INICIO:
BSF PORTB,0
CALL RETARDO
CALL RETARDO
BCF PORTB,0
CALL RETARDO
BSF PORTB,1
CALL RETARDO
BCF PORTB,1
CALL RETARDO
BSF PORTB,2
CALL RETARDO
CALL RETARDO
BCF PORTB,2
CALL RETARDO
BSF PORTB,5
CALL RETARDO
CALL RETARDO
BCF PORTB,5
CALL RETARDO
BSF PORTB,3
CALL RETARDO
CALL RETARDO
BCF PORTB,3
CALL RETARDO
BSF PORTB,4
CALL RETARDO
BCF PORTB,4
BSF PORTB,5
CALL RETARDO
CALL RETARDO
BCF PORTB,5
GOTO INICIO
RETARDO:
MOVLW 0XFF ;HEX
MOVWF TIEMPO1
CICLO1:
MOVLW 0XFF
MOVWF TIEMPO2
CICLO2:
DECFSZ TIEMPO2,1
GOTO CICLO2
DECFSZ TIEMPO1,1
GOTO CICLO1
RETURN
CICLO:
DECFSZ TIEMPO
GOTO CICLO
RETURN
END
END