Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
CARRERA: PRÁCTICA:
INGENIERIA ELECTRÓNICA CIRCUITO SEMÁFORO
OBJETIVO GENERAL:
Realizar un circuito que simule un cruce de semáforos.
OBJETIVOS ESPECÍFICOS:
Realizar el esquema en diagramas de flujo para entender el funcionamiento del semáforo
Realizar la programación de MPLAB X con sus tiempos de retardos.
ANEXOS:
Flujograma
Inicio
Pulsante
Leds
Pulsante Pulsante
1 2
Semáforo 1
Semáforo 2
Leds
Fin
Código del Programa
LIST P=16F84A,
#include "p16F84A.inc"
__CONFIG _FOSC_XT & _WDTE_OFF & _PWRTE_ON & _CP_OFF
d1 equ 0ch
d2 equ 1ch
d3 equ 2ch
ORG 0
INICIO
BSF STATUS,RP0; PASAMOS AL BANCO1
CLRF PORTB; CONFIGURAMOS PUERTO B COMO SALIDA
BSF PORTA,0; HABILITO UNA ENTRADA DEL PUERTO A (A0)
SEPRENDE
BTFSS PORTA,0
goto SEPRENDE
VERDEROJO
MOVLW b'00100001'
MOVWF PORTB
call Retardo_2s
SEMA2
MOVLW b'00100010'
MOVWF PORTB
;2 segundos
Retardo_2s
movlw d'250'
movwf d1
movlw d'90'
movwf d2
movlw d'5'
movwf d3
Retardo_2
decfsz d1, f
goto $+2
decfsz d2, f
goto $+2
decfsz d3, f
goto Retardo_2
goto $+1
nop
return
;;;1 segundo;;;;
Retardo_1s
movlw d'250'
movwf d1
movlw d'20'
movwf d2
movlw d'2'
movwf d3
Retardo_3
decfsz d1, f
goto $+2
decfsz d2, f
goto $+2
decfsz d3, f
goto Retardo_3
goto $+1
nop
return
END
Esquema de la practica
CONCLUSIONES
Para realizar la programación de un cruce de semáforos teníamos que tener en cuenta los tiempos
de retardos para cada contador, ya que de esa manera tendrá un correcto encendido de cada led
y funcione de manera óptima.
La programación fue algo complicado ya que un semáforo tiene que funcionar de manera real para
demostrar que está correctamente realizado.