El nombre completo del circuito Integrado RTC (Reloj en Tiempo Real o Real Time Clock) es: ECS-RTC-SOP8-5101A.
Es desarrollado por ECS Inc. International que es una compañía que se dedica a diseñar y fabricar circuitos integrados que
ayudan a cuantificar el tiempo de manera adecuada; ya sea con Relojes en Tiempo Real o con osciladores, etc.
Este reloj en tiempo real, en particular, me gusta mucho por que es muy pequeñito, es de montaje superficial, pero de los que todavía tienen las patitas
para poderlo soldar con un cautín común y corriente. Lo que nos brinda una gran versatilidad a la hora de fabricar y montar los PCBs. Además tiene
las siguientes funciones que nos da una gran ventaja:
Utiliza un bus i2C.
Tiene un bajo consumo de corriente 0.5μA, lo que nos permite operar con baterías.
Cuenta con una Alarma.
Cuenta con un pin especificamente para activar la alarma y despertar al microprocesador.
Lo podemos alimentar desde 1.1V a 5.5V. Lo que nos brinda una gran versatilidad en el diseño y en la operación con baterías.
Corrección de año bisiesto.
Rango de Operación: -40°C a +85°C
El circuito integrado viene en un encapsulado SOP8 (4.9mm × 6.0mm × 1.6mm) y viene rotulado con las siglas 5101A.
La hoja de datos del circuito integrado la puedes descargar aquí: Hoja de Datos RTC5101A.
El acomodo de los pines de este ecapsulado es el siguiente:
Recapitulando y explicando cada uno de los pines mostrados en la imagen/tabla anterior:
No. Pin
Nombre del Pin
Entrada/Salida
Descripción con Comentarios
1
XIN
Bidireccional
Entrada del Oscilador. Que expresamente aquí es donde conectamos un pin del cristal de cuarzo de 32.768kHz de 12.5pF.
Recuerda que los cristales no tienen polaridad, por lo que no importa cual de los dos pines conectes.
2
XOUT
Bidireccional
Entrada del Oscilador. Que expresamente aquí es donde conectamos el otro pin del cristal de cuarzo de 32.768kHz de 12.5pF.
Recuerda que los cristales no tienen polaridad, por lo que no importa cual de los dos pines conectes.
3
/INT
Salida (Open-Drain)
Este es un pin que se puede configurar como salida de la Alarma o como salida del timmer.
Es muy importante considerar en el diseño que esta es una salida Open-Drain, lo que requiere que se le conecte una resistencia (normalmente de 10KΩ).
4
GND
Alimentación
Conectar la tierra.
5
SDA
Bidireccional
Es una señal del bus I2C. Este pin es donde se conecta los datos a transmitir por el I2C.
6
SCL
Entrada
Es una señal del bus I2C. Este pin es donde se conecta la señal de reloj proveniente por el Maestro del I2C.
7
FOUT
Salida
Este pin es puede ser utilizado para sacar la señal de frecuencia que puede generar el RTC 5101A del que hablamos en esta página de internet.
8
VDD
Alimentación
Este es el pin de alimentación positiva. También conocido como +Vcc.
CONEXIONES DEL RTC5101A
Vdd se conecta directo al positivo de la alimentación +Vcc. Que debe de estar entre 1.1v y 5.5v.
GND se conecta directamente a tierra.
Xout y Xin se conecta directamente al cristal de cuarzo de 32.768kHz de 12.5pF.
SDA se debe conectar la línea de datos (SDA) proveniente del maestro, que normalmente es el microprocesador.
SCL es la línea de reloj del bus I2C, proveniente del maestro, que normalmente es el microprocesador.
/INT o el pin de Interrupción (Negado) va conectado a la entrada del microprocesador para que ejecute la rutina que corresponda.
Se activa con un nivel bajo, es una salida Open-Drain, por lo que debemos de conectar una resistencia de 10kΩ a positivo (+Vcc).
Fout es la señal para generar una onda cuadrada a una frecuencia configurada en el RTC.
Para efectos de esta conexión, no la vamos a usar por lo que la dejamos sin conectar.
Comunicación I2C.
La dirección del RTC para el bus I2C es 65h para lectura de un registro y 64h para la escritura. Pero para ponerlo en el arduino es 32h por que se omite el último bit:
Tipo de transferencia de información
Dirección del RTC 5101A
R/W
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
65h Lectura
0
1
1
0
0
1
0
1 Lectura
64h Escritura
0 Escritura
32h Arduino
0
1
1
0
0
1
0
X
Lectura o Escrutura según corresponda, lo asigna el compilador.