Relógio com Arduíno e Modulo RTC
Fala ai pessoal, neste post vou mostrar pra vocês como usar o modulo RTC no Arduíno e fazer um relógio funcional, mais a frente veremos como ligar esse relógio a um visor LCD i2C e também como fazer com que em determinados horários esse modulo controle lampadas, motores e etc.
PARA TUTORIAIS EM VÍDEO, INSCREVE-SE NO CANAL DO YOUTUBE, BASTA CLICAR NO BOTÃO ABAIXO:

O módulo RTC é montado sob o DS1307 ( Serial Real-Time Clock) sua documentação pode ser baixada clicando na imagem ao lado:
Montado pode ser comprado por R$ 10,00 em média, mas alguns usuário preferem montar seus próprios módulos, como podem ver na imagem abaixo, aqui no NK preferimos comprar pronto pois o trabalho é menor e o custo é satisfatório:

Aqui segue imagens de como o módulo geralmente é encontrado:

A bateria moeda de Lítio que vai acoplada e é suficiente para manter este módulo funcionando por pelo menos 9 anos (17 anos é o normal) sem alimentação externa. O DS1307 é acessado pelo protocolo I2C.
Agora vamos ao que interessa, nesta primeira etapa do tutorial vamos exibir as informações de data e hora no “Serial Monitor da IDE do Arduíno, além do módulo RTC tenha em mãos:
Uma placa Arduíno ou qualquer outra com controlador Atmega 328 ou 128;
Fios Jumper de acordo com sua necessidade:
Abaixo seque o esquema de ligação de ligação do RTC ao Arduíno:

Faça o Download da biblioteca DS1307 clicando aqui, e depois copie e cole o código abaixo para sua IDE, logo em seguida faça o upload para sua placa Arduíno:
#include <DS1307.h> //Carrega a biblioteca do RTC DS1307
DS1307 rtc(A4, A5); //Modulo RTC DS1307 ligado as portas A4 e A5 do Arduino
void setup(){
rtc.halt(false); //Aciona o relogio
/*As linhas abaixo servem para configurar a hora do seu RTC e podem ser excluidas
ou comentadas após a primeira utilização*/
rtc.setDOW(TUESDAY); //(DOMINGO=SUNDAY, SEGUNDA=MONDAY, TERÇA=TUESDAY, QUARTA=WEDNESDAY, QUINTA=THURSDAY, SEXTA=FRIDAY, SÁBADO=SATURDAY)
rtc.setTime(12, 17, 0); //(HORA, MINUTOS, SEGUNDOS)
rtc.setDate(25, 10, 2016);//Define o dia, mes e ano (DIA, MÊS, ANO)
rtc.setSQWRate(SQW_RATE_1);//Definicoes do pino SQW/Out
rtc.enableSQW(true);
Serial.begin(9600); //Inicia a porta serial
}
void loop() {
//Mostra as informações no Serial Monitor
Serial.print("Hora : ");
Serial.print(rtc.getTimeStr());
Serial.print(" ");
Serial.print("Data : ");
Serial.print(rtc.getDateStr(FORMAT_SHORT));
Serial.print(" ");
Serial.println(rtc.getDOWStr(FORMAT_SHORT));
delay (1000); //Aguarda 1 segundo e repete o processo
}
Se tudo correr bem ao abrir o Serial Monitor você verá as informações de Hora e Data. Esse código funciona melhor com apenas o modulo RTC ligado ao Arduíno, então para melhores resultados desconecte qualquer outro dispositivo que esteja ligado a sua placa.
Para Download do código e programação usados nesse tutorial clique no botão abaixo:





Relógio com Arduíno e Modulo RTC – Nerd king Descubra quais são os caminhos que você pode seguir para viver de games! Conheça incríveis histórias de Youtubers, Cyber-Atletas, Empreendedores, Gamers de sucesso, pessoas que vivem de games no Brasil! Acesse https://goo.gl/JuS6SU e Saiba Mais!
I could watch Scdelhnir’s List and still be happy after reading this.