Real Time Clock DS1307 interactuando con Arduino Uno

2

Actualmente estoy trabajando en un proyecto de electrónica para construir mi propio reloj de pared digital. Para eso intenté hacer un módulo RTC con DS1307 IC.

Seguí las siguientes instrucciones de este sitio web .

Pero cuando intenté leer y escribir la hora en el IC usando el monitor de serie en el software Arduino obtuve el siguiente resultado.

Misentradasfueronlassiguientes:

primeroi/p:T000021240114

segundoi/p:R

¿Puede alguien ayudarme a encontrar mi error?

    
pregunta BharathYes

1 respuesta

1

Desde el código:

second = (byte) ((Serial.read() - 48) * 10 + (Serial.read() - 48));
minute = (byte) ((Serial.read() - 48) *10 +  (Serial.read() - 48));
hour  = (byte) ((Serial.read() - 48) *10 +  (Serial.read() - 48));
dayOfWeek = (byte) (Serial.read() - 48);
dayOfMonth = (byte) ((Serial.read() - 48) *10 +  (Serial.read() - 48));
month = (byte) ((Serial.read() - 48) *10 +  (Serial.read() - 48));
year= (byte) ((Serial.read() - 48) *10 +  (Serial.read() - 48));

Todos tienen dos caracteres a excepción de dayOfWeek

Por ahora (2014-01-25 13:58:00) serían 14 caracteres (incluida 'T')

T0058136250114

Solo tienes 13 caracteres en tu comando.

También necesitas 4K7 - 10K pullups en SDA y SCL. Tenga en cuenta que "Comando: 13" en el registro es solo el carácter de retorno de carro (ingresar). Como tenía muy pocos caracteres en el comando, se interpretó como parte del comando.

    
respondido por el geometrikal

Lea otras preguntas en las etiquetas