Вы находитесь на странице: 1из 11

INSTITUTO TECNOLÓGICO SUPERIOR CENTRAL TÉCNICO

MATERIA: INSTRUMENTACIÓN Versión: 1.0


F. elaboración: 20/06/2018
DOCUMENTO: INFORME DE PRÁCTICA F. última revisión: 20/06/2018
Página 1 de 11
REGISTRO

INFORME DE PRÁCTICA

TEMA: ALARMA

MICROCONTROLADORES

JOB NICOLAS GARCÍA V.

TERCERO/ NOCTURNA “A”

2018-2019
INSTITUTO TECNOLÓGICO SUPERIOR CENTRAL TÉCNICO
MATERIA: INSTRUMENTACIÓN Versión: 1.0
F. elaboración: 20/06/2018
DOCUMENTO: INFORME DE PRÁCTICA F. última revisión: 20/06/2018
Página 2 de 11
REGISTRO

Emprender el estudio de microcontroladores para el desarrollo de proyectos electrónicos que sean la


base para nuevas ideas. Con el estudio del compilador PicBasic Pro, hacen de la programación de
microcontroladores una tarea fácil y muy productiva a la hora de desarrollar proyectos que involucren
periféricos como pantallas LCD, teclados matriciales, sensores de temperatura, presión, gas,
humedad, memorias de datos entre otros, y donde una de las características más relevantes es el
considerable ahorro de tiempo, lo que se traduce en efectividad y menos líneas de programa, que el
diseñador puede prestar mayor atención a los detalles, logrando así perfeccionar su desempeño en
cualquiera de las funciones que desee programar.

PROGRAMACION DE ALARMA DE DOS ZONAS MONITOREADAS.

Define LCD_DREG PORTB


DEFINE LCD_DBIT 4
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 3
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 2
Y VAR BYTE
X VAR BYTE
Z1 VAR BYTE
Z2 VAR BYTE
Z3 VAR BYTE
Z4 VAR BYTE
Z5 VAR BYTE
Y1 VAR BYTE
Y2 VAR BYTE
Y3 VAR BYTE
Y4 VAR BYTE
Y5 VAR BYTE
H VAR BYTE
D VAR BYTE
D2 VAR BYTE
M VAR PORTC.0
M1 VAR PORTC.1
F1 VAR PORTD.0
F2 VAR PORTD.1
F3 VAR PORTD.2
F4 VAR PORTD.3
C1 VAR PORTD.4
C2 VAR PORTD.5
C3 VAR PORTD.6
C4 VAR PORTD.7
TRISD=%11110000
TRISC=%00000011
PORTD=%00000000
INSTITUTO TECNOLÓGICO SUPERIOR CENTRAL TÉCNICO
MATERIA: INSTRUMENTACIÓN Versión: 1.0
F. elaboración: 20/06/2018
DOCUMENTO: INFORME DE PRÁCTICA F. última revisión: 20/06/2018
Página 3 de 11
REGISTRO

PORTC=%00000000
X=0
Y1=1
Y2=2
Y3=3
Y4=4
Y5=5

BIEN:
LCDOUT $FE,$80,"BIENVENIDOS"
LCDOUT $FE,$C0,"SIST DE ALARMAS"
F1=1
PAUSE 100
IF C4=1 THEN GOSUB DGC
F1=0
GOTO BIEN

DGC:
X=0
F1=1
X=X+1
IF X=1 THEN
LCDOUT $FE,$1
ENDIF
LCDOUT $FE,$80,"DIGITE CLAVE"
LCDOUT $FE,$C0,"PASS="
PAUSE 2500
GOSUB VERIF
GOTO DGC

VERIF:
GOSUB TECLADO
IF Y1=Y THEN
GOSUB TECLADO
IF Y2=Y THEN
GOSUB TECLADO
IF Y3=Y THEN
GOSUB TECLADO
IF Y4=Y THEN
GOSUB TECLADO
IF Y5=Y THEN
LCDOUT $FE,$1
LCDOUT $FE,$80,"CLAVE CORRECTA"
PORTC.5=0
PAUSE 100
H=0
QUEDAR2
INSTITUTO TECNOLÓGICO SUPERIOR CENTRAL TÉCNICO
MATERIA: INSTRUMENTACIÓN Versión: 1.0
F. elaboración: 20/06/2018
DOCUMENTO: INFORME DE PRÁCTICA F. última revisión: 20/06/2018
Página 4 de 11
REGISTRO

H=H+1
IF H=1 THEN
lcdout $FE,1
ENDIF
LCDOUT $FE,$80,"1.CAMBIAR CLAVE"
F1=1
H=0'SE INICIALIZA A O PARA QUE EN LA RUTINA SOLO SE LIMPIE UNA VEZ
IF C1=1 THEN
GOSUB AR
GOSUB CAMBCLAVE
ENDIF
PAUSE 100
GOTO QUEDAR2
ELSE 'SIEMPRE ES NECESARIO UN ELSE PARA SABER EL CASO EN QUE NO SE CUMPLA Y NO
CREAR UN BUCLE ESTANCANDO EL PROGRAMA
LCDOUT $FE,$1
LCDOUT $FE,$80,"CLAVE INCORRECTA"
PAUSE 100
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
LCDOUT $FE,$80,"CLAVE INCORRECTA"
GOTO VERIF

TECLADO:
Y=0
X=X+1
IF X=1 THEN
LCDOUT $FE,$1
ENDIF
F1=1
IF C1=1 THEN
GOSUB AR
Y=1
LCDOUT $FE,$0E,DEC1 Y
pause 100
RETURN
ENDIF
IF C2=1 THEN
GOSUB AR
Y=2
LCDOUT $FE,$0E,DEC1 Y
pause 100
RETURN
ENDIF
INSTITUTO TECNOLÓGICO SUPERIOR CENTRAL TÉCNICO
MATERIA: INSTRUMENTACIÓN Versión: 1.0
F. elaboración: 20/06/2018
DOCUMENTO: INFORME DE PRÁCTICA F. última revisión: 20/06/2018
Página 5 de 11
REGISTRO

IF C3=1 THEN
GOSUB AR
Y=3
LCDOUT $FE,$0E,DEC1 Y
pause 100
RETURN
ENDIF
IF C4=1 THEN
GOSUB AR
Y="A"
LCDOUT $FE,$0E,DEC1 Y
RETURN
ENDIF
F1=0

F2=1
IF C1=1 THEN
GOSUB AR
Y=4
LCDOUT $FE,$0E,DEC1 Y
PAUSE 100
RETURN
ENDIF
IF C2=1 THEN
GOSUB AR
Y=5
LCDOUT $FE,$0E,DEC1 Y
pause 100
RETURN
ENDIF
IF C3=1 THEN
GOSUB AR
Y=6
LCDOUT $FE,$0E,DEC1 Y
RETURN
ENDIF
IF C4=1 THEN
GOSUB AR
Y="B"
LCDOUT $FE,$0E,DEC1 Y
RETURN
ENDIF
F2=0

F3=1
IF C1=1 THEN
GOSUB AR
INSTITUTO TECNOLÓGICO SUPERIOR CENTRAL TÉCNICO
MATERIA: INSTRUMENTACIÓN Versión: 1.0
F. elaboración: 20/06/2018
DOCUMENTO: INFORME DE PRÁCTICA F. última revisión: 20/06/2018
Página 6 de 11
REGISTRO

Y=7
LCDOUT $FE,$0E,DEC1 Y
RETURN
ENDIF
IF C2=1 THEN
GOSUB AR
Y=8
LCDOUT $FE,$0E,DEC1 Y
RETURN
ENDIF
IF C3=1 THEN
GOSUB AR
Y=9
LCDOUT $FE,$0E,DEC1 Y
RETURN
ENDIF
IF C4=1 THEN
Y="C"
LCDOUT $FE,$0E,DEC1 Y
ENDIF
F3=0

F4=1
IF C1=1 THEN
LCDOUT $FE,$0E
LCDOUT $FE,$10
ENDIF
IF C2=1 THEN
GOSUB AR
Y=0
LCDOUT $FE,$0E,DEC1 Y
RETURN
ENDIF
IF C3=1 THEN
LCDOUT $FE,$0E
LCDOUT $FE,$14
ENDIF
IF C4=1 THEN
LCDOUT $FE,$1
LCDOUT $FE,$0E
ENDIF
F4=0
PAUSE 100
GOTO TECLADO

ACTALARMA:
H=H+1
INSTITUTO TECNOLÓGICO SUPERIOR CENTRAL TÉCNICO
MATERIA: INSTRUMENTACIÓN Versión: 1.0
F. elaboración: 20/06/2018
DOCUMENTO: INFORME DE PRÁCTICA F. última revisión: 20/06/2018
Página 7 de 11
REGISTRO

IF H=1 THEN
lcdout $FE,1
ENDIF
LCDOUT $FE,$80,"SIS. ACTIVO"
PORTC.6=M
PORTC.7=M1
IF M=1 | M1=1 THEN
PORTC.5=1
GOSUB DGC
ENDIF
PAUSE 100 'EL PAUSE EN ESTE CASO SIRVE PARA QUE NO EXISTAN SALTOS ILOGICOS HACIA LA
RUTINA INICIAL
GOTO ACTALARMA

ACTALARMA2:
H=H+1
IF H=1 THEN
lcdout $FE,1
ENDIF
LCDOUT $FE,$80,"SIS. ACTIVO"
PORTC.6=M
PORTC.7=M1
IF M=1 | M1=1 THEN
PORTC.5=1
GOSUB VERIF2
ENDIF
PAUSE 100 'EL PAUSE EN ESTE CASO SIRVE PARA QUE NO EXISTAN SALTOS ILOGICOS HACIA LA
RUTINA INICIAL
GOTO ACTALARMA2

CAMBCLAVE
H=H+1
IF H=1 THEN
lcdout $FE,1
ENDIF
LCDOUT $FE,$80,"NEW CLAVE="
GOSUB TECLADO
Z1=Y
GOSUB TECLADO
Z2=Y
GOSUB TECLADO
Z3=Y
GOSUB TECLADO
Z4=Y
GOSUB TECLADO
Z5=Y
PAUSE 200
INSTITUTO TECNOLÓGICO SUPERIOR CENTRAL TÉCNICO
MATERIA: INSTRUMENTACIÓN Versión: 1.0
F. elaboración: 20/06/2018
DOCUMENTO: INFORME DE PRÁCTICA F. última revisión: 20/06/2018
Página 8 de 11
REGISTRO

LCDOUT $FE,1
LCDOUT $FE,$80,DEC1 Z1
LCDOUT $FE,$81,DEC1 Z2
LCDOUT $FE,$82,DEC1 Z3
LCDOUT $FE,$83,DEC1 Z4
LCDOUT $FE,$84,DEC1 Z5
LCDOUT $FE,$85,"="
LCDOUT $FE,$C0,"DIGITE NUEVAMENTE"
PAUSE 500
GOSUB VERIF2
GOTO CAMBCLAVE

VERIF2:
LCDOUT $FE,1
LCDOUT $FE,$80,"*"
LCDOUT $FE,$81,"*"
LCDOUT $FE,$82,"*"
LCDOUT $FE,$83,"*"
LCDOUT $FE,$84,"*"
LCDOUT $FE,$85,"="
PAUSE 200
Y=0
GOSUB TECLADO
IF Z1=Y THEN
GOSUB TECLADO
ELSE
GOSUB VERIF2
ENDIF
IF Z2=Y THEN
GOSUB TECLADO
ELSE
GOSUB VERIF2
ENDIF
IF Z3=Y THEN
GOSUB TECLADO
ELSE
GOSUB VERIF2
ENDIF
IF Z4=Y THEN
GOSUB TECLADO
ELSE
GOSUB VERIF2
ENDIF
IF Z5=Y THEN
LCDOUT $FE,$1
LCDOUT $FE,$80,"CLAVE CORRECTA"
PORTC.5=0
INSTITUTO TECNOLÓGICO SUPERIOR CENTRAL TÉCNICO
MATERIA: INSTRUMENTACIÓN Versión: 1.0
F. elaboración: 20/06/2018
DOCUMENTO: INFORME DE PRÁCTICA F. última revisión: 20/06/2018
Página 9 de 11
REGISTRO

PORTC.6=0
PORTC.7=0
PAUSE 800
H=0
QUEDAR3
H=H+1
IF H=1 THEN
lcdout $FE,1
ENDIF
LCDOUT $FE,$80,"1.ACTIVAR ALARMA"
LCDOUT $FE,$C0,"2.CAMBIAR CLAVE"
F1=1
PAUSE 300
H=0'SE INICIALIZA EN O PARA QUE EN LA RUTINA SOLO SE LIMPIE UNA VEZ
IF C1=1 THEN
GOSUB AR
GOSUB ACTALARMA2
ENDIF
IF C2=1 THEN
GOSUB AR
H=0
GOSUB CAMBCLAVE
ENDIF
GOTO QUEDAR3
ELSE
LCDOUT $FE,$1
LCDOUT $FE,$80,"CLAVE INCORRECTA"
PAUSE 100
ENDIF
GOTO VERIF2

AR:
IF C1=1 | C2=1 | C3=1 | C4=1 THEN
GOTO AR
ELSE
RETURN
ENDIF

END

SIMULACIÓN EN PROTEUS
INSTITUTO TECNOLÓGICO SUPERIOR CENTRAL TÉCNICO
MATERIA: INSTRUMENTACIÓN Versión: 1.0
F. elaboración: 20/06/2018
DOCUMENTO: INFORME DE PRÁCTICA F. última revisión: 20/06/2018
Página 10 de 11
REGISTRO
INSTITUTO TECNOLÓGICO SUPERIOR CENTRAL TÉCNICO
MATERIA: INSTRUMENTACIÓN Versión: 1.0
F. elaboración: 20/06/2018
DOCUMENTO: INFORME DE PRÁCTICA F. última revisión: 20/06/2018
Página 11 de 11
REGISTRO

Conclusiones
Concluimos que mediante la práctica en programación de circuitos podemos entender
satisfactoriamente la lógica de los sistemas embebidos o microcontroladores.
Se pudo llegar a realizar una alarma muy completa con monitoreo de zonas e ingreso por
autenticación, incluido cambio de clave cuando sea necesario.

Recomendaciones
Se recomienda seguir con el mismo empeño de enseñza que se ha venido dando para así
formar profesionales muy útiles en la sociedad.

Вам также может понравиться