Академический Документы
Профессиональный Документы
Культура Документы
Cerradura
electrnica
Laboratorio de sistemas
digitales
ADRIAZOLA VIZARRETA
JUDITH
CAYANI MENDOZA MYCOL
APAZA CONDORI ERNESTO
HECTOR QUISPE
HUAMAN CONDORIMAY
KAREN
CERRADURA ELECTRNICA
Contenido
CERRADURA ELECTRONICA................................................................................. 2
Objetivo:........................................................................................................... 2
Materiales a utilizarse:................................................................................... 2
DESCRIPCION DEL PROYECTO:.......................................................................2
INFORMACION:................................................................................................. 2
CIRCUITO.......................................................................................................... 3
Desarrollo del proyecto:................................................................................... 4
DIAGRAMAS DE FLUJO...................................................................................... 4
Programacin en el lenguaje de programacin C:.....................................7
GESTOR_DE_ERRORES................................................................................... 10
Cdigo del programa principal MAIN:.............................................................11
NOTAS:........................................................................................................... 13
CERRADURA ELECTRNICA
CERRADURA ELECTRONICA
Objetivo:
Materiales a utilizarse:
PICC Compiler
Proteus ISIS (Simulador)
Teclado matricial 4X4
LCD 16X2
PIC18F4550
3 LED (VERDE, ROJO y otro color)
3 Resistencias de 330 Ohms
4 Resistencias de 10K
INFORMACION:
Cerradura electrnica con clave de 4 digitos alfanumricos , es decir, la clave puede ser
con letras o nmeros, usando teclado matricial y LCD. La cerradura contara con leds
indicadores de puerta abierta y puerta cerrada y un led indicador de alarma que se
activara despus de 5 intentos de contrasea equivocados.
Si el usuario introduce la contrasea correcta el sistema le da la bienvenida y da acceso
al sistema pudiendo controlar la apertura y el cierre de la puerta y cambiar la clave.
CERRADURA ELECTRNICA
CIRCUITO
CERRADURA ELECTRNICA
DIAGRAMAS DE FLUJO
MAIN
CONDICIONES INICIALES
-Mensaje de inicio
-Asegurarse de cerrar la
puerta
PEDIR LA CLAVE
-Leer el teclado
-Ver si la clave es correcta
NO
GESTOR_DE_ERRORES
-Mostrar mensaje de error
-Llevar la cuenta de errores
-Activar ALARMA si es
necesario
LABORATORIO DE SISTEMAS DIGITALES
CLAVE CORRECTA?
SI
CONTROL_DE_USUARIO
-Abrir, Cerrar, Cambiar clave
y salir del sistema
-Resetear la cuenta de
errores
4
CERRADURA ELECTRNICA
Observamos que tenemos un esquema general simple ya que esta dividido en varias
tareas que resolveremos por separado posteriormente. Los bloques de CONDICIONES
INICIALES y PEDIR LA CLAVE posiblemente son muy simples y posiblemente no se
ejecuten en diversas partes del programa por lo que probablemente NO nos conviene
hacerlos como funciones.
En el caso de los bloques GESTOR_DE_ERRORES y CONTROL_DE_USUARIO son
bloques que probablemente representen un cdigo largo, nos conviene hacerlos
FUNCIONES ya que posteriormente podremos decidir que cambiar, aadir o mejorar en
cada caso de manera individual evitando cambiar el esquema general del proyecto.
GESTOR DE ERRORES
Incrementar
conta_errores
NO
Conta_errores >= 5?
HACERLA DE TOS!!
-Mostrar mensaje de
ALARMA
-Hacer parpadear un led o
buzzer
-Mostrar un mensaje
disuasivo LLAMANDO A
POLICIA
-Todo esto unos segundos
-Resetear conta_errores
Mostrar mensaje de
ERROR
SI
REGRESAR
CERRADURA ELECTRNICA
CONTROL_DE_USUARIO
MENSAJE DE BIENVENIDA AL
SISTEMA
Muestra MENU de opciones
seleccionLee_teclado;
Seleccin== A?
SI
Seleccin==B?
SI
Seleccin==C?
SI
Seleccin== F?
Funcion ABRIR
Funcion CERRAR
Funcion CAMBIAR
CLAVE
NO
SI
Mostrar mensaje de despedida, cerrar
puerta y resetear contador de errores
CERRADURA ELECTRNICA
REGRESAR
Como vemos las primeras dos variables declaradas son vectores de 4 elementos del tipo
char (caracteres), en el caso del vector llamado contrasea observamos que lo
inicializamos con los valores del 1 al 4 ya que esta ser la contrasea por default. Las
dems variables se vera su utilidad mas adelante en el programa.
3) Las definiciones, estas son aquellas que renombran palabras con la finalidad de facilitar
el entendimiento del programa, por ejemplo, es mas lgico de entender:
output_high(led_cerradura); que output_high(pin_b0);
4) FUNCIONES, aqu vamos a declarar las funciones que hemos visto en los diagramas
de flujo, las primeras funciones que haremos son ABRIR(), CERRAR() y
CAMBIAR_CLAVE() y posteriormente las demas ya que estas funciones se utilizan dentro
de la funcin CONTROL_DE_USUARIO() y por tanto deben definirse primero. Las
LABORATORIO DE SISTEMAS DIGITALES
CERRADURA ELECTRNICA
CERRADURA ELECTRNICA
CERRADURA ELECTRNICA
GESTOR_DE_ERRORES
Ahora hacemos la funcin GESTOR_DE_ERRORES siguiendo o basndonos en el
diagrama de flujo que hicimos en color rojo:
10
CERRADURA ELECTRNICA
(Se inicia el programa MAIN con las condiciones INICIALES mostrando un mensaje
inicial)
11
CERRADURA ELECTRNICA
(Se inicia el ciclo infinito donde lo primero que hacemos es escanear o leer el teclado 4
veces almacenando el valor de la tecla pulsada en cada elemento del vector clave[i])
(Lo siguiente es validar la clave, para esto simplemente hacemos uso de una bandera
asumiendo que no habr error, comparamos uno a uno los elementos de los vectores
clave[i] y contrasena[i] y en caso de que alguno de estos sea distinto levantaremos la
bandera de error, si hubo error o no ejecutamos la funcin pertinente.)
12
CERRADURA ELECTRNICA
NOTAS:
Para este proyecto se hizo la siguiente modificacin a la librera de PICPLAY_4X4.c para
adecuarla al teclado usado en la simulacin:
13
CERRADURA ELECTRNICA
14