Está en la página 1de 3

Universidad Distrital Francisco Jos de Caldas. Ingeniera Electrnica.

1

I. PLANTEAMIENTO DEL PROBLEMA

Disear un programa que simule el comportamiento de un
reloj digital con horas, minutos y segundos, y adems que
tenga la fecha actual con ao, mes y da. Todo esto se
mostrara en una LCD y por medio de cuatro pulsadores se
podr modificar la hora (la cual podr ser mostrada en
am/pm o militar) y la fecha, adems se podr activar una
alarma en la fecha y la hora requerida la cual es desactivada
al pulsar cualquier botn.
II. ANALISIS Y MODELAMIENTO

Para el desarrollo del problema se identificaron las acciones
de los pulsadores que son: incrementar, decrementar,
aceptar y cancelar. El programa se encarga de mostrar en
primera instancia la hora y la fecha predeterminada por
software (los valores iniciales de nuestras variables). Al
pulsar incrementar muestra la siguiente pantalla que es la
modificacin de la hora, al volver a pulsar incrementar se
pasa a la pantalla de modificar la fecha y la ltima pantalla
es la de modificar alarma, si se sigue presionando siguiente
se repetir el ciclo, al pulsar decrementar se mostraran las
pantallas en orden descendente. Para poder entrar en alguno
de los mens se pulsa el botn aceptar y para salir de
cualquier botn se pulsa el botn cancelar, al estar adentro
de cualquier men, la modificacin de los valores numricos
se hace por medio de los botones incrementar y decrementar
una vez obtenido el valor requerido se pulsa aceptar para
modificar el siguiente dato y as sucesivamente. Lo nico
diferente es en el men de modificacin de la hora que al
final muestra la opcin de mostrarla en am/pm o militar las
cuales se escogen con aceptar y si no es la que necesita
entonces se le da siguiente y luego aceptar.
Ya habiendo explicado el funcionamiento terminado se
describir un poco el software especificado en asembler. Es
necesario hacer las inicializacin y los comandos necesarios
para utilizar la LCD no entrare en detalles de este mdulo,
en cuanto las variables los todos los contadores del reloj de
la fecha y la alarma (que tiene contador de fecha y reloj
especficos), adems de los contadores de la ubicacin en el
programa y de la funcin a desarrollar. En cada mdulo de
modificacin de los contadores segn fuese el caso se
control el conteo segn las condiciones crticas (Ejemplo:
no todos lo meses tiene la misma cantidad de das; un
minuto solo tiene 60 segundos; etc.).
III. CODIGO
[1] Ver archivo de texto anexo



IV. DIAGRAMA DE FLUJO
[2] Ver anexo al final del documento
V. CONCLUSIONES
Cuando se requieren temporizaciones precisas y el
programa es complejo no se recomienda usar la
temporizacin por software ya que ocupa el
microcontrolador evitando que realice otras tareas.
Cuando se manejan pulsadores u otras seales externas
si no es que se hace un debido circuito de anti rebote es
necesario hacer un anti rebote por software en el cual se
lee la seal por cierto tiempo y luego se vuelve a leer
para verificar su validez, evitando as que el
microcontrolador lo tome repetidas veces.
Si se trabaja con pulsadores u otras seales aleatorias y
externas es conveniente utilizar interrupciones que
ocurran solo cuando estas seales se presentan; en este
proyecto no es una situacin crtica ya que el programa
no realiza tareas tan extensas y verifica los botones en
lapsos lo suficientemente cortos para que no sean
notables al usuario.
Es recomendable al utilizar la LCD crear mtodos
especficos para el envi de comando y datos y as
ahorrar lneas de cdigo y hacer ms entendible el
programa.



























Informe Laboratorio #4 Reloj
Catalina Urdaneta Bernal 20111005094
Universidad Distrital Francisco Jos de Caldas. Ingeniera Electrnica. 2

[2] Anexo al final del documento




























































Inicio
Se definen las
constantes de
enmascaramiento y
ubicacin de bytes
que se necesitan
(para la LCD y
entradas esperadas
de los pulsadores).
Se definen las variables
que van a ser utilizadas
para guardar los datos
generados por los
contadores de fecha,
hora, alarma, ubicacin,
funcin y otras para el
manejo de la LCD.
Se inicializan
cada una de
las variables.
Se hace la debida
configuracin inicial de
la LCD en la cual le
enviamos los comandos
segn se vaya a utilizar.
Se habilita la
temporizacin de un
segundo para hacer
las marcaciones del
reloj por medio de
una interrupcin.
Se leen los pulsadores
con los antirebotes por
software pertinentes y
enmascarando solo los
datos que vamos a leer.
Cancelar
est
activo?
1 2
1
Aceptar
est
activo?
Incremen
tar est
activo?
Decreme
ntar est
activo?
Se lee la variable
Funcin que nos
dice que funcin se
est ejecutando en el
momento.
Es igual
a cero?
Es igual
a uno?
Es igual
a dos?
Se borran las
variables de funcin,
de la ubicacin de
manipulacin de la
hora y la ubicacin
de manipulacin de
la fecha.
2
3
3
Si No
Si
No
No
No
No
No
No
Si
Si
Si
Si
Si
Se incrementa la variable
Funcin y si llega a 4 se
inicializa de nuevo en
cero, debido a que sol solo
cuatro funciones (mostrar
hora fecha, modificar
fecha, modificar hora,
modificar alarma).
Se decrementa la
variable Funcin y si
llega a 0FFH se le
carga el valor de tres,
debido a que sol solo
cuatro funciones.
3
3
Se muestra la
hora y la fecha
actual en la
pantalla LCD
3
Se va al men de configuracin
de hora donde por orden
secuencial va a solicitar el
ingreso de cada uno de los datos
de hora minutos segundos y
am/pm o militares. El ingreso de
los datos se hace por medio del
botn incrementar decrementar
y aceptar para guardar el dato y
solicitar el siguiente dato.
3
4
5
Universidad Distrital Francisco Jos de Caldas. Ingeniera Electrnica. 3



Es igual
a tres?
4
Se va al men de configuracin de
fecha donde por orden secuencial va
a solicitar el ingreso de cada uno de
los datos de ao mes y da. El
ingreso de los datos se hace por
medio del botn incrementar
decrementar y aceptar para guardar
el dato y solicitar el siguiente dato.

5
Se va al men de configuracin de
alarma donde por orden secuencial
va a solicitar el ingreso de cada uno
de los datos de hora minutos
segundos ao mes y da. El ingreso
de los datos se hace por medio del
botn incrementar decrementar y
aceptar para guardar el dato y
solicitar el siguiente dato.

3
3
3

También podría gustarte