0% acharam este documento útil (0 voto)
20 visualizações5 páginas

Projeto Relógio Digital Com Arduíno

Crie um relógio digital de forma simples com este projeto.

Enviado por

Emerson Emerson
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
20 visualizações5 páginas

Projeto Relógio Digital Com Arduíno

Crie um relógio digital de forma simples com este projeto.

Enviado por

Emerson Emerson
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 5

Projeto

Relógio Digital com Arduino


Neste projeto, você criará um relógio digital usando o Arduino. Ele exibirá a
hora atual em um display LCD ou LED utilizando um módulo RTC (Real Time
Clock) para manter o horário preciso, mesmo sem energia.

Componentes Necessários
1. Microcontrolador
o 1x Arduino Uno (ou equivalente)

2. Display
o 1x Módulo Display LCD 16x2 com Interface I2C OU 1x Display
de 7 Segmentos com Controlador TM1637 (escolha o que
preferir).
3. Módulo RTC
o 1x Módulo RTC DS3231 (ou DS1307)

4. Fonte de Alimentação
o 1x Cabo USB para o Arduino

5. Protoboard e Fios
o 1x Protoboard

o Fios macho-macho e macho-fêmea

Diagrama de Conexões
Conexão com o Display LCD 16x2 (I2C)

Pino do Pino do
Display Arduino

GND GND

VCC 5V

SDA A4

SCL A5

Conexão com o RTC DS3231

Pino do Pino do
RTC Arduino

GND GND
Pino do Pino do
RTC Arduino

VCC 5V

SDA A4

SCL A5

(Opcional) Conexão com o Display TM1637**

Pino do Pino do
Display Arduino

GND GND

VCC 5V

DIO Pino 2

CLK Pino 3

Código para o Arduino


Código para LCD 16x2 (I2C)
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <RTClib.h>

// Configuração do LCD
LiquidCrystal_I2C lcd(0x27, 16, 2); // Endereço I2C do display pode variar
(0x27 ou 0x3F)

// Configuração do RTC
RTC_DS3231 rtc;

void setup() {
lcd.begin(); // Inicializa o LCD
lcd.backlight(); // Liga a luz de fundo do LCD
lcd.print("Inicializando...");
if (!rtc.begin()) {
lcd.setCursor(0, 1);
lcd.print("Erro RTC!");
while (1); // Para o código se o RTC falhar
}
if (rtc.lostPower()) {
rtc.adjust(DateTime(F(__DATE__), F(__TIME__))); // Configura a hora inicial
}

delay(2000);
lcd.clear();
}

void loop() {
DateTime now = rtc.now(); // Obtém o horário atual do RTC

// Exibe a hora no LCD


lcd.setCursor(0, 0);
lcd.print("Hora: ");
lcd.print(now.hour());
lcd.print(":");
lcd.print(now.minute());
lcd.print(":");
lcd.print(now.second());

// Exibe a data no LCD


lcd.setCursor(0, 1);
lcd.print("Data: ");
lcd.print(now.day());
lcd.print("/");
lcd.print(now.month());
lcd.print("/");
lcd.print(now.year());

delay(1000); // Atualiza a cada segundo


}
Código para Display TM1637
#include <TM1637Display.h>
#include <RTClib.h>

// Configuração do Display TM1637


#define CLK 3
#define DIO 2
TM1637Display display(CLK, DIO);

// Configuração do RTC
RTC_DS3231 rtc;

void setup() {
display.setBrightness(5); // Configura o brilho do display

if (!rtc.begin()) {
while (1); // Para o código se o RTC falhar
}
if (rtc.lostPower()) {
rtc.adjust(DateTime(F(__DATE__), F(__TIME__))); // Configura a hora inicial
}
}

void loop() {
DateTime now = rtc.now(); // Obtém o horário atual do RTC

int hora = now.hour();


int minuto = now.minute();
// Exibe a hora no formato HH:MM
display.showNumberDecEx(hora * 100 + minuto, 0x40, true);

delay(1000); // Atualiza a cada segundo


}

Montagem
1. Conecte o RTC e o Display ao Arduino conforme o diagrama.
2. Alimente o Arduino: Use um cabo USB conectado ao computador
ou a uma fonte de 5V.
3. Carregue o Código: Use a IDE Arduino para fazer o upload do
código.
4. Ajuste Inicial do Relógio: O horário será configurado
automaticamente na primeira execução com base no horário do
computador.

Precauções
1. Endereço I2C: Se o LCD não funcionar, verifique o endereço I2C (use
um scanner I2C para encontrar o endereço correto).
2. Alimentação: Certifique-se de que o RTC está conectado ao pino 5V
do Arduino.

Expansões do Projeto
1. Alarmes: Adicione funcionalidade para ativar um buzzer em horários
específicos.
2. Interface de Configuração: Integre botões para ajustar o horário
diretamente pelo Arduino.
3. Display OLED: Substitua o LCD por um display OLED para um design
mais moderno.

Você também pode gostar