Sei sulla pagina 1di 4

MANUAL DE PROCEDIMIENTO

CARRERA: PRÁCTICA:
INGENIERIA ELECTRÓNICA CIRCUITO SEMÁFORO

EQUIPO: CÁTEDRA O MATERIA REVISIÓN N°: 3


Sala de Cómputo. RELACIONADA:
Sistemas Microprocesados I EDICIÓN: 1
ACCESORIOS:
PIC16F84A
DOCENTE: NÚMERO DE ESTUDIANTES FECHA:
Ing. Luis Serpa POR EQUIPO O PRÁCTICA: 06/06/2016
Kleber Fernando Villacres Miranda
Cindy Herminia Romero Tinoco

TEMA: 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)

BCF STATUS,RP0; REGRESO BANCO 0


TODOAPAGADO
CLRF PORTB

SEPRENDE
BTFSS PORTA,0
goto SEPRENDE

VERDEROJO
MOVLW b'00100001'
MOVWF PORTB
call Retardo_2s

PULSA22 BTFSS PORTA,1


GOTO SEMA2
goto PARPADEO

SEMA2
MOVLW b'00100010'
MOVWF PORTB

PULSA23 BTFSS PORTA,1


GOTO SEMA3
goto PARPADEO

SEMA3 call Retardo_2s


MOVLW b'00100100'
MOVWF PORTB
call Retardo_2s

PULSA24 BTFSS PORTA,1


GOTO SEMA4
goto PARPADEO

SEMA4 MOVLW b'00001100'


MOVWF PORTB
call Retardo_2s

PULSA25 BTFSS PORTA,1


GOTO SEMA5
goto PARPADEO

SEMA5 MOVLW b'00010100'


MOVWF PORTB
call Retardo_2s

PULSA26 BTFSS PORTA,1


GOTO SEMA6
goto PARPADEO

SEMA6 MOVLW b'00100100'


MOVWF PORTB
call Retardo_2s

PULSA2 BTFSS PORTA,1


GOTO VERDEROJO
goto PARPADEO

PARPADEO CLRF PORTB


BSF PORTB,1
BSF PORTB,5
call Retardo_1s
CLRF PORTB
CALL Retardo_1s
GOTO PARPADEO

;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.

Potrebbero piacerti anche