Juntar dois codigos.

Boas pessoal preciso de ajuda para juntar dois código em um so para fazer um relojo,quero que o rtc prenda tres leds alternativos mas nao sei juntar os dois.

fica aquí os dois códigos.

obrigado.

//  04/07/12 Probado y modificado por Guillermo Fernández - Juan Pablo Sánchez 
//  para que dia/mes//hora/min/seg aparezca en el LCD con un "0" delante del número 
//  en caso que sea menor que 10...


//  Se aceptan sugerencias y/o modificaciones.


#include <LiquidCrystal.h>
#include <Wire.h>
#include "RTClib.h"

// Connección del LCD:
// rs (LCD pin 4) to Arduino pin 12
// rw (LCD pin 5) to Arduino pin 11
// enable (LCD pin 6) to Arduino pin 10
// LCD pin 15 to Arduino pin 13
// LCD pins d4, d5, d6, d7 to Arduino pins 5, 4, 3, 2
LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);

// Conexión del RTC:
// Pin Sda al pin A4 del arduino
// Pin Scl al pin A5 del arduino
// También como en cualquier módulo, se deben conectar VCC y GND.
RTC_DS1307 RTC;

int backLight = 13;    // pin 13 will control the backlight

void setup()
{
  Serial.begin(57600);
  Wire.begin();
  RTC.begin();
  
  if (! RTC.isrunning()) {
    Serial.println("RTC is NOT running!");
    // following line sets the RTC to the date & time this sketch was compiled
    RTC.adjust(DateTime(__DATE__, __TIME__));
  }
  
  pinMode(backLight, OUTPUT);
  digitalWrite(backLight, HIGH); // turn backlight on. Replace 'HIGH' with 'LOW' to turn it off.
  lcd.begin(16,2);              // columns, rows.  use 16,2 for a 16x2 LCD, etc.
  lcd.clear();                  // start with a blank screen
}

void loop()
{
  DateTime now = RTC.now();
  lcd.clear();
  lcd.setCursor(3,0);
  if(now.day() < 10)
  {   
  lcd.print("0");
  }
  lcd.print(now.day(), DEC);
  lcd.print('/');
  if(now.month() < 10)
  {   
  lcd.print("0");
  }
  lcd.print(now.month(), DEC);
  lcd.print('/');
  lcd.print(now.year(), DEC);
  lcd.setCursor(4,1);
  if(now.hour() < 10)
  {   
  lcd.print("0");
  }
  lcd.print(now.hour(), DEC);
  lcd.print(':');
  if(now.minute() < 10)
  {   
  lcd.print("0");
  }
  lcd.print(now.minute(), DEC);
  lcd.print(':');
  if(now.second() < 10)
  {   
  lcd.print("0");
  }
  lcd.print(now.second(), DEC);
  delay(1000);
}
void setup() {
   pinMode (2,OUTPUT);
   pinMode (3,OUTPUT);
   pinMode (4,OUTPUT);
   digitalWrite(3,HIGH);
   digitalWrite (4,HIGH);
   digitalWrite (5,HIGH);
 }
 void loop() {
   digitalWrite (2,LOW);
   delay (4000);
   digitalWrite (2,HIGH);
   for (int cuenta = 0;cuenta <5;cuenta++)
   {
     digitalWrite (3,LOW);
     delay (1000);
     digitalWrite (3,HIGH);
     delay (200);
    }
   digitalWrite (4,LOW);
   delay (5000);
   digitalWrite (4,HIGH);
 }

Não percebi o que faz o 2º programa e o que deveria fazer o programa final. O que significa “o rtc prenda tres leds”?

Ola Luisilva olha o primeiro programa e um relojo um RTC (REAL TIME CLOK) e eu quero que o relojo au estar encendido tambem aja tres leds encendidos a vez. ¿percebes? a fazer um pis-ca pisca mas tudo junto.

obrigado.

Na realidade não percebi muito bem, mas imagino que seja qualquer coisa assim:

//  04/07/12 Probado y modificado por Guillermo Fernández - Juan Pablo Sánchez
//  para que dia/mes//hora/min/seg aparezca en el LCD con un "0" delante del número
//  en caso que sea menor que 10...


//  Se aceptan sugerencias y/o modificaciones.


#include <LiquidCrystal.h>
#include <Wire.h>
#include "RTClib.h"

// Connección del LCD:
// rs (LCD pin 4) to Arduino pin 12
// rw (LCD pin 5) to Arduino pin 11
// enable (LCD pin 6) to Arduino pin 10
// LCD pin 15 to Arduino pin 13
// LCD pins d4, d5, d6, d7 to Arduino pins 5, 4, 3, 2
LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);

// Conexión del RTC:
// Pin Sda al pin A4 del arduino
// Pin Scl al pin A5 del arduino
// También como en cualquier módulo, se deben conectar VCC y GND.
RTC_DS1307 RTC;

int backLight = 13;    // pin 13 will control the backlight

const int led1 = 2;
const int led2 = 3;
const int led3 = 4;

int state = 0;

void setup()
{
  Serial.begin(57600);
  Wire.begin();
  RTC.begin();

  pinMode (led1,OUTPUT);
  pinMode (led2,OUTPUT);
  pinMode (led3,OUTPUT);
  digitalWrite(led1,HIGH);
  digitalWrite (led2,HIGH);
  digitalWrite (led3,HIGH);

  if (! RTC.isrunning()) {
    Serial.println("RTC is NOT running!");
    // following line sets the RTC to the date & time this sketch was compiled
    RTC.adjust(DateTime(__DATE__, __TIME__));
  }

  pinMode(backLight, OUTPUT);
  digitalWrite(backLight, HIGH); // turn backlight on. Replace 'HIGH' with 'LOW' to turn it off.
  lcd.begin(16,2);              // columns, rows.  use 16,2 for a 16x2 LCD, etc.
  lcd.clear();                  // start with a blank screen
}

void loop()
{
  DateTime now = RTC.now();
  int seconds;
  int last_seconds;
  seconds = now.second();

  lcd.clear();
  lcd.setCursor(3,0);
  if(now.day() < 10)
  {   
    lcd.print("0");
  }
  lcd.print(now.day(), DEC);
  lcd.print('/');
  if(now.month() < 10)
  {   
    lcd.print("0");
  }
  lcd.print(now.month(), DEC);
  lcd.print('/');
  lcd.print(now.year(), DEC);
  lcd.setCursor(4,1);
  if(now.hour() < 10)
  {   
    lcd.print("0");
  }
  lcd.print(now.hour(), DEC);
  lcd.print(':');
  if(now.minute() < 10)
  {   
    lcd.print("0");
  }
  lcd.print(now.minute(), DEC);
  lcd.print(':');
  if(now.second() < 10)
  {   
    lcd.print("0");
  }
  lcd.print(now.second(), DEC);

  if (seconds != last_seconds) {
    state = !state;
    last_seconds = seconds;
  }

  if (state == 0) {
    digitalWrite(led1,HIGH);
    digitalWrite (led2,HIGH);
    digitalWrite (led3,HIGH);
  }
  else {
    digitalWrite(led1,LOW);
    digitalWrite (led2,LOW);
    digitalWrite (led3,LOW);
  }

  delay(1000);
}

Obrigado vou a experimentar acho que e certo eu quero que o relojo aparte de estar o lcd encendido tenha aparte tres leds tambem encendidos.

muito obrigado luisilva.

Esta a funcionar ,aunque as saidas dos pinos sao a mesmas do lcd,nao da logo algum problema? mas tudo ate agora esta correto.

Novamente obrigado.

Não reparei nesse pormenor. Deixei as mesmas saídas que estavam no segundo programa. É melhor alterar isso para ficar em pinos diferentes dos do LCD.