Pages: [1]   Go Down
Author Topic: Problemas RTC 1302  (Read 1296 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 13
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Estoy intentando hacer funcionar la RTC 1302
He copiado el ejemplo y las librerias de  http://www.henningkarlsen.com/electronics/library.php?id=5.

Tengo una LCD con teclado     http://www.miniinthebox.com/es/16-x-2-lcd-protector-de-teclado-para-mega-arduino-uno-duemilanove_p340888.html
Y la RTC 1302  http://www.miniinthebox.com/es/ds1302-modulo-de-tiempo-real-reloj-con-bateria-cr2032-201211270080052_p478888.html

Code:
// DS1302_LCD (C)2010 Henning Karlsen
// web: http://www.henningkarlsen.com/electronics
//
// A quick demo of how to use my DS1302-library to make a quick
// clock using a DS1302 and a 16x2 LCD.
//
// I assume you know how to connect the DS1302 and LCD.
// DS1302:  CE pin    -> Arduino Digital 2
//          I/O pin   -> Arduino Digital 3
//          SCLK pin  -> Arduino Digital 4
// LCD:     DB7       -> Arduino Digital 6
//          DB6       -> Arduino Digital 7
//          DB5       -> Arduino Digital 8
//          DB4       -> Arduino Digital 9
//          E         -> Arduino Digital 10
//          RS        -> Arduino Digital 11

#include <LiquidCrystal.h>
#include <DS1302.h>

// Init the DS1302
DS1302 rtc(2, 3, 4);

// Init the LCD
LiquidCrystal lcd(11, 10, 9, 8, 7, 6);

void setup()
{
  // Set the clock to run-mode, and disable the write protection
  rtc.halt(false);
  rtc.writeProtect(false);
 
  // Setup LCD to 16x2 characters
  lcd.begin(16, 2);

  // The following lines can be commented out to use the values already stored in the DS1302
  rtc.setDOW(FRIDAY);        // Set Day-of-Week to FRIDAY
  rtc.setTime(12, 0, 0);     // Set the time to 12:00:00 (24hr format)
  rtc.setDate(6, 8, 2010);   // Set the date to August 6th, 2010
}

void loop()
{
  // Display time centered on the upper line
  lcd.setCursor(4, 0);
  lcd.print(rtc.getTimeStr());
 
  // Display abbreviated Day-of-Week in the lower left corner
  lcd.setCursor(0, 1);
  lcd.print(rtc.getDOWStr(FORMAT_SHORT));
 
  // Display date in the lower right corner
  lcd.setCursor(6, 1);
  lcd.print(rtc.getDateStr());

  // Wait one second before repeating :)
  delay (1000);
}

Los Pins que uso para el LCD     LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
y para el RTC                          DS1302 rtc(1, 2, 3);

Leer si que lee bien pero no consigo hacer entrar los datos de la fecha actual.

La lectura que me da es 21/11/2006  00:05:00  , que no coincide con lo que en teoria se le introduce.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 13
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Antes de que se me olvide.
He visto por el foro que hay muchos problemas en los programas por culpa del tipo de placa que se usa.
Informo,  la mia es una Mega 2560, a ver si el problema viene de ahí.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 13
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ja he encontrado el problema, como la pantalla usa el pin 4 habia corrido el RTC a los pines 11 - 12 y 13, con lo cual no funcionaba,
sacando la LCD y colocanolos en el 2 - 3 y 4 con otro programa funciona a las mil maravillas.
Ahora pregunto yo, ¿los pins del 2 al 13 no son todos iguales?.
Si es asi por que solo funciona con los pis 2 al 4????
Gracias.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 1
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Jaja me recordaste a adal ramones "quieren un monologo!!" vos te lo hechaste, te preguntaste y te contestaste solito. al parecer nadie entra por aca a contestar. yo tengo problemas tambien con este rtc, baje ciertas librerias y unas funionan bien, otras una me da una fecha distinta cada vez que leo la fecha y con otra libreria me lee bien la fecha y la hora pero los segundos son erraticos no siguen una secuencia por ejemplo en lugar de ir 1,2,3,4,5,6,7 va asi 1,5,3,9,5,10,7 o sea un seg bueno y otro malo.
Logged

Pages: [1]   Go Up
Jump to: