Está en la página 1de 6

RELOJ DIGIITAL DE PARED

Eduardo Israel Brito Vivanco


israedu_@hotmail.com

Eduardo Luis Campoverde Encalada


eduardce_925@hotmail.com

Luis Gerardo Hidalgo García


Luisgh9_@hotmail.com

RESUMEN: El presente trabajo tiene como Para el desarrollo de este proyecto utilizamos
objetivo, describir el diseño y construcción de un reloj una lista extensa de materiales, sin embargo los
digital en formato de 24 horas, cuyo segundero se componentes no resultaron ser costos.
encuentra representado por leds.
Los Materiales ocupados fueron:

PALABRAS CLAVES: Reloj digital, Microcontrolador  8 circuitos integrados 74LS164.


ATMEGA32, DS137.  59 resistores de 220Ω.
 3 resistores de 10 kΩ.
INTRODUCCIÓN  3 resistores de 3.3 kΩ.
 4 resistores de 4.7 kΩ.
 1 circuito integrado DS1307.
Como parte de la materia de Sistemas Digitales
 1 microcontrolador ATMEGA32.
y Microcontroladores, a continuación se presenta el
 1 cristal de cuarzo de 32.768 kHz.
desarrollo e implementación de un reloj digital de
pared que posee como parte novedosa su segundero,  1 circuito integrado 74LS04 (compuerta
mismo que se encuentra formado por 59 leds en NOT).
lugar de dos displays de 7 segmentos, distribuidos en  1 circuito integrado 74LS08 (compuerta
forma de circulo a lo largo del borde exterior de la AND).
placa .  1 condensadores electrolítico 1000 uF
(1mF).
 1 pila de 3V.
DESCRIPCIÓN GENERAL DEL  1 zócalo para pila CR-2032.
PROYECTO  1 zócalo para el ATMEGA 32.
 8 zócalos para los circuitos integrados
El reloj digital que hemos desarrollado contiene 74LS164.
cuatro displays de 7 segmentos ánodo común  1 zócalo para la el circuito integrado 74LS04.
encargados de visualizar la hora y minutos en formato  1 zócalo para la el circuito integrado 74LS08.
“HH:MM”, donde los “:” centrales son dos pequeños  4 displays de ánodo común C-1021H de
leds rojos. Para el funcionamiento del reloj en tiempo Paralight.
real se utilizó el circuito integrado DS1307.  62 leds rojos de 5mm.
 3 pulsadores.
Los 59 leds colocados al borde de la placa  4 transistores 2N3904.
realizan la función del segundero. El segundero se
encuentra controlado mediante el clock de la salida
que genera el DS1307. Esto es posible gracias a la
utilización de un registro de desplazamiento
construido a partir de 8 circuitos integrados 74LS164,
donde la salida del DS1307 va a la entrada de reloj de
cada registro, y el pin de “reset” es común para todos
los registros.

Además, el reloj contiene 3 pulsadores, que


servirán para llevar a cabo la tarea de igualar tanto
horas como minutos del dispositivo.

MATERIALES UTILIZADOS
Figura 1. Componentes del reloj digital
 DESCRIPCIÓN DE LOS la otra de la acción de presionar el primer pulsador.
COMPONENTES Por lo tanto, la salida de esta compuerta será un 0
lógico siempre que se encuentren los 59 leds
encendidos o cuando presionemos el primer pulsador,
Microcontrolador ATMEGA32: Dispositivo reiniciando el encendido de los leds.
electrónico encargado de llevar a cabo todas las
tareas necesarias para las que fue programado. Para Cristal de cuarzo de 32.768 kHz: Oscilador
el desarrollo de este trabajo las tareas fueron: la utilizado para cualquier sistema de reloj/calendario en
habilitación y multiplexión de los displays para permitir tiempo real. Este oscilador combina la unidad de
la visualización del tiempo en éstos, y la cristal de 32.768 kHz con el circuito oscilador CMOS
comunicación I2C entre éste y el DS1307. basado en un paquete SMD de cerámica en
miniatura. Posee potencias muy bajas con el
Circuito Integrado 74LS164: Es un registro de consumo de energía en el orden de los 250nA.
desplazamiento de 8 bits con entrada en serie y
salida en paralelo (síncronas) y una entrada de Transistor 2N3904: Transistor BJT NPN
borrado asíncrona CLK, activa para nivel bajo. Posee utilizado generalmente para amplificar voltajes o usos
14 pines, de los cuales 2 son entradas en serie, 1 y 2, de la conmutación. Para el desarrollo del reloj se lo
que acceden a los biestables tras efectuarse una ocupó para amplificar el voltaje Vcc requerido por los
operación NAND sobre ellas, por lo tanto, o bien entra displays, y así tener una mejor visualización de la
la misma señal por ambas, o bien una de ellas se hora que emite el reloj.
mantiene siempre en alto para permitir la entrada de
datos. Los 8 pines de salida del integrado son en
Condensador electrolítico de 1mF:
paralelo, y la señal de reloj CLK que marca el tiempo
Responsable de filtrar y estabilizar la señal de
que se adjudica a cada bit en serie (un ciclo de reloj),
entrada del microcontrolador para evitar que este
es externa y en nuestro caso proviene de la salida del
dispositivo se resetee cuando se produzcan cambios
DS1307.
bruscos en la señal de ingreso.
Circuito Integrado DS1307: Es un reloj de
Displays de 7 segmentos ánodo común:
tiempo real exacto, el cual automáticamente,
Utilizados para la visualización del tiempo
proporciona el tiempo y la fecha actual. Consta de 8
proporcionado por el reloj, existiendo 4 de estos
pines al que se le conecta un cristal de cuarzo
elementos para la visualización tanto de horas como
estándar de 32.768kHz entre los pines 1 y 2 para
minutos. Al ser ánodos común sus entradas son
proveer tiempo base exacto. Opcionalmente se le
activas en bajo y necesitan de Vcc, que en este caso
puede conectar al pin3, una batería de respaldo de 3
procede de la configuración de amplificación de
volt, asegurando que se mantendrá el tiempo y la
voltaje del transistor.
fecha aun cuando este desconectada la fuente de
tensión del circuito principal. El circuito integrado
Leds: utilizados para la visualización de los
automáticamente detecta que se ha removido la
segundos del reloj; así como los puntos que dividen
energía en el circuito principal y se conecta la batería
los displays de horas con los de minutos.
de respaldo cuando es requerido. El pin 7 es una
salida de colector abierto, responsable de generar la
Resistores: Los resistores de 220Ω se los utilizó
señal de reloj que ingresa al 74LS164, y
para limitar la corriente que atraviesa a los leds del
adicionalmente, puede ser programado para hacer
segundero y así alargar su tiempo de vida útil. Los
“flash” cada 1Hz, lo que permite la colocación de un
resistores de 10kΩ se los ocupó para asegurar el cero
led como indicador de segundos en aplicaciones de
lógico de los pulsadores (tierra). Mientras que los
reloj.
resistores de 3.3 kΩ se los ocupó en los pines de
comunicación I2C entre el microcontrolador y el
Circuito Integrado 74LS04: Circuito que
DS1307. Finalmente, Los resistores de 4.7 kΩ se los
contiene 14 pines, con seis compuertas NOT, de los
empleó en la base del transistor del diseño de
cuales 6 son entradas y las otras seis resultan ser las
amplificación de voltaje.
entradas negadas. Dentro de este proyecto se hizo
uso de este integrado para el reseteo de los leds una
Pulsadores: existen 3 dentro de este dispositivo
vez que se encuentran encendidos los 59, la salida
y son los responsables del ajuste de hora.
del último va a una de las entradas de este integrado
y la salida de éste a una de las entradas del integrado
Pila de 3V: Fuente de respaldo que proporciona
74LS08, que al tratarse de una compuerta AND su
la energía necesaria para que el DS1307 siga
salida será un 0 lógico que se envía al “reset” común
funcionando en caso de producirse algún fallo o
de los registros de desplazamiento 74LS164, y así
desconexión de la fuente de alimentación principal.
permitir que pasado 1 minuto empiece de nuevo el
Esto evita tener que volver a poner en hora el Reloj
encendido de los leds (segundero).
cada vez que lo desenchufemos de la red eléctrica.
Circuito Integrado 74LS08: Circuito que
contiene 14 pines, con cuatro compuertas AND de
dos entradas cada una. Una entrada es la proveniente
de la salida del integrado 74LS04 (compuerta NOT) y
CIRCUITO DEL RELOJ DIGITAL
a. DISEÑO EN PROTEUS transistores; teniendo en cuenta que el voltaje de
ingreso para dicha configuración procede de los pines
El diseño del circuito del reloj se lo realizó en el A.3-A.6 del micro.
programa Proteus. A continuación se muestra su
diseño con los distintos componentes que ocupamos: Los pulsadores desempeñan funciones distintas
en el ajuste de hora del reloj. El primero conectado al
pinA.7 es el encargado de enviar la orden al micro
para ajustar el tiempo, el segundo conectado al pinA.1
es el encargado de igualar minutos, y el tercero
conectado al pinA.0 es el responsable de igualar
horas; manteniendo para ambos casos presionado el
primer pulsador.

c. DISEÑO EN ARES
Para la elaboración del circuito del reloj en la
baquela se convirtió el diseño de simulación de
Proteus al diseño de elaboración del Ares. El
resultado de ello se muestra a continuación:

Figura 2. Diseño del reloj en Proteus

b. DESCRIPCIÓN DEL DISEÑO


El diseño del reloj digital posee un
microcontrolador ATmega32, cuyos pines C.0 y C.1
son los pines de comunicación I2C entre el micro y el
DS1307.

En el DS1307, los pines 1 y 2 se encuentran


conectados al cristal de 32.768 kHz, mientras que el
pin 3 se encuentra conectado a la pila de 3V. El pin 7
que es la señal de reloj va al pin 8 de cada registro
74LS164, para de esta forma producir el conteo Figura 3. Diseño en Ares
progresivo de los 59 leds.

Los registros de desplazamiento 74LS164


poseen los pines del 3-6 y del 10-13 como salidas ELABORACIÓN DE LA PLACA
para el encendido de los leds, tomando en cuenta que
la salida 13 de cada registro es la entrada 1 y 2 del
próximo (conexión en cascada). El pin 9-“reset” y a. CIRCUITO IMPRESO
activo en bajo, se encuentra conectado de manera
común para todos los registros de tal forma que la El circuito impreso que alberga toda la lista de
salida después del último led se la conecta al 74LS04 materiales antes citados mide 20cm de diámetro y se
para que a la salida de esta compuerta NOT se tenga encuentra impreso en un PBC de una faz.
un 0 lógico que permitirá que se reseteen todos los
registros y empiece de nuevo el conteo de los
segundos.

Para la visualización de la hora, los displays


correspondientes a los minutos se encuentran
conectados al puerto D del micro, y los responsables
de las horas están conectados al puerto B. Por lo que
al estar conectados de tal forma, se requiere
multiplexarlos. El Vcc de cada display proviene de la
configuración de amplificación de voltaje de los
SOFTWARE

Para el desarrollo del software de


funcionamiento del reloj digital se utilizó el programa
CodeVision AVR. A continuación se presentan las
distintas subrutinas que componen el programa
general:

Directivas Preprocesador

#include <mega32.h>
#include <delay.h>

// I2C Bus functions para comunicación I2C


#asm
.equ __i2c_port=0x15; PORTC
.equ __sda_bit=1
.equ __scl_bit=0
Figura 4. Circuito impreso #endasm
#include <i2c.h>
El tamaño de la placa impresa se debe a la
forma circular en la que se colocaron los leds, // DS1307 Real Time Clock functions
asemejándose a la aguja de del segundero de un reloj #include <ds1307.h>
analógico.
Declaración de Variables Globales
b. MONTAJE Y BAQUELA unsigned char min1, min2, hora1, hora2;
unsigned char h, m, s;
Al momento de colocar los componentes sobre
la placa y soldarlos se consideró en primera instancia
soldar los puentes que tuvo nuestro diseño. Luego, Subrutina de Visualización de Números
los zócalos de diferentes integrados utilizados.
int decodificador (int a)
Realizado ello, se soldó los transistores, el {
capacitor, el cristal de cuarzo, los resistores utilizados switch(a)
en la configuración de ganancia de voltaje y los {
resistores colocados DS1370. Luego los 4 displays case 0x00: a=0b01000000; //visualiza el 0
que muestran la hora. Finalmente, se colocó los leds break;
con sus resistores. case 0x01: a=0b01111001; //visualiza el 1
break;
case 0x02: a=0b00100100; //visualiza el 2
break;
case 0x03: a=0b00110000; //visualiza el 3
break;
case 0x04: a=0b00011001; //visualiza el 4
break;
case 0x05: a=0b00010010; //visualiza el 5
break;
case 0x06: a=0b00000010; //visualiza el 6
break;
case 0x07: a=0b01111000; //visualiza el 7
break;
case 0x08: a=0b00000000; //visualiza el 8
break;
case 0x09: a=0b00010000; //visualiza el 9
break;
}
return a;
}

Subrutina para Multiplexar los Displays


Figura 5. Reloj Digital
Por medio de ella multiplixamos tanto los while(PINA.7==1)
displays correspondientes al minutero como los {
displays pertenecientes al horero. Las variables ds4 y if(PINA.0==1)
ds3 pertenecen a los minutos mientras que las {
variables ds2 y ds1 a las horas. h++;
if(h==24) //Para igualar
void presentar(int ds4, int ds3, int ds2, int ds1) { horas
{ h=0;
}
PORTA.3=1; }
PORTD=decodificador(ds4); if(PINA.1==1)
delay_ms(5); {
PORTA.3=0; m++;
Multiplexeo if(m==60) //Para igualar
de de { minutos
PORTA.4=1; minutero m=0;
PORTD=decodificador(ds3); }
delay_ms(5);
PORTA.4=0; delay_ms(200);
rtc_set_time(h,m,0);
rtc_get_time(&h,&m,&s);
min2=m/10;
min1=m%10;
hora2=h/10;
PORTA.5=1; hora1=h%10;
PORTB=decodificador(ds2); presentar(hora2, hora1, min2, min1); ------
delay_ms(5); //presenta hora igualada en los displays
PORTA.5=0;--------------------------------------Multiplexeo }
_______________________________ de horero rtc_get_time(&h, &m, &s);
PORTA.6=1; min2=m/10;
PORTB=decodificador(ds1); min1=m%10;
delay_ms(5); hora2=h/10;
PORTA.6=0; hora1=h%10;
} presentar(hora2, hora1, min2, min1); ___
//presenta tiempo real en displays
};
FUNCIÓN PRINCIPAL }

void main(void)
{ CONCLUSIONES:
//Habilitación de los puertos como entradas y salidas
PORTA=0x00;  Con la elaboración de este trabajo se pudo poner
DDRA=0x3C; en práctica los conocimientos adquiridos durante
Salidas para los displays este ciclo, a más, de lograr destrezas en el
PORTB=0x00; manejo programas tales como CodeVsion,
DDRB=0xFF; Proteus y Ares.

PORTC=0x00; Para la comunicación


DDRC=0xFC; I2C  Con el desarrollo del proyecto se aprendió a
utilizar el bus de comunicación I2C, que permite
PORTD=0x00; que exista comunicación entre el
DDRD=0xFF; microcontrolador y el circuito integrado DS1307
que es un reloj de tiempo real el cual
// I2C Bus initialization automáticamente, proporciona el tiempo y la
delay_ms(10); fecha.
i2c_init(); //inicia la comunicación I2C
delay_ms(10);  La utilización del circuito integrado 74LS164 nos
rtc_init(0,1,0); //inicia comunicación con el permitió ahorrar pines del microcontrolador, pues
delay_ms(10); DS1307 con la salida de reloj al tratarse de un registro de desplazamiento de 8
a una Frecuencia de 1HZ. bits, se obtuvo por cada dispositivo 8 salidas que
rtc_set_time(0,0,0); al estar en sincronía con la señal de reloj enviada
delay_ms(10); por el DS1307, permite visualizar el conteo de los
segundos..
while (1)
{
RECOMENDACIONES:

 Al momento de armar el circuito en Protoboard,


se debe ir implementando sección por sección
del circuito. Para así probar fase por fase el
funcionamiento del mismo, y poder solucionar los
inconvenientes que se produzcan.

 A la hora de colocar la baquela en el ácido de


percloruro férrico se debe tener en cuenta el
tiempo que ésta se la deja en el ácido, para evitar
que se borren las pistas.

 Antes de soldar la placa, se debe verificar si las


pistas no se han borrado y de serlo así se debe
acomodarlas.

 Una vez soldados los distintos componentes, se


debe verificar la existencia de continuidad entre
los caminos que conectan a los elementos.

También podría gustarte