Índice:

Relógio digital simples usando Arduino Nano e DS1307: 4 etapas
Relógio digital simples usando Arduino Nano e DS1307: 4 etapas

Vídeo: Relógio digital simples usando Arduino Nano e DS1307: 4 etapas

Vídeo: Relógio digital simples usando Arduino Nano e DS1307: 4 etapas
Vídeo: Módulos para Arduino - Vídeo 14 - RTC DS1307 e DS3231 2024, Julho
Anonim
Relógio digital simples usando Arduino Nano e DS1307
Relógio digital simples usando Arduino Nano e DS1307

Neste artigo vou mostrar a vocês um tutorial para fazer um relógio digital usando Arduino. A placa Arduino que uso é a Arduino Nano V3, DS1307 como provedor de dados de tempo, MAX7219 7 Segment como display do relógio.

antes de entrar no tutorial, recomendo que você esteja familiarizado com o uso de dispositivos e acessórios Arduino. Isso tornará mais fácil para você seguir o tutorial que mostrei.

Se você não está familiarizado com o uso de placas Arduino, não se preocupe.

Você pode ler este artigo para se aquecer:

  • Como usar o Arduino Nano
  • MAX7219 7 segmentos usando Arduino
  • Como usar o DS1307 usando o Arduino

Etapa 1: Componentes necessários

Componentes Requeridos
Componentes Requeridos
Componentes Requeridos
Componentes Requeridos
Componentes Requeridos
Componentes Requeridos

estes são os componentes de que precisamos para fazer um relógio digital:

  • Arduino Nano V3
  • RTC DS1307
  • MAX7210 7Segment
  • Jumper Wire
  • USBmini
  • Mesa de projeto

Biblioteca necessária:

  • Arame
  • LedControl
  • RTClib

Etapa 2: montar todos os componentes

Monte todos os componentes
Monte todos os componentes

Se todos os componentes foram obtidos, agora é hora de montar.

Veja a descrição abaixo ou veja a imagem acima:

Arduino para RTC DS1307

GND => GND

+ 5V => VCC

A4 => SDA

A5 => SCL

Arduino para MAX7219

+ 5V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS

Depois que todos os componentes forem instalados, continue na seção de programação.

Etapa 3: Programação

copie e cole este esboço no esboço que você fez. Depois disso, faça o upload do programa para a placa arduno

#include #include "LedControl.h" #include "RTClib.h"

RTC_DS1307 rtc;

LedControl lc = LedControl (12, 11, 10, 1);

void setup () {

Serial.begin (57600); if (! rtc.begin ()) {Serial.println ("Não foi possível encontrar RTC"); enquanto (1); } if (! rtc.isrunning ()) {Serial.println ("RTC NÃO está em execução!"); // a linha seguinte define o RTC para a data e hora em que este esboço foi compilado // rtc.adjust (DateTime (F (_ DATE_), F (_ TIME_))); // Esta linha define o RTC com uma data e hora explícitas, por exemplo, para definir // 21 de janeiro de 2014 às 3h, você chamaria: // rtc.adjust (DateTime (2014, 1, 21, 3, 0, 0)); } lc.shutdown (0, falso); lc.setIntensity (0, 8); lc.clearDisplay (0); }

void loop () {

DateTime now = rtc.now (); if (now.second () 40) {lc.setDigit (0, 0, now.second ()% 10, false); lc.setDigit (0, 1, agora.segundo () / 10, falso); lc.setChar (0, 2, '-', falso); lc.setDigit (0, 3, now.minute ()% 10, falso); lc.setDigit (0, 4, now.minute () / 10, false); lc.setChar (0, 5, '-', falso); lc.setDigit (0, 6, now.hour ()% 10, false); lc.setDigit (0, 7, now.hour () / 10, false); }

if (now.second () == 30 || now.second () == 40)

{lc.clearDisplay (0); }

if (now.second ()> = 31 && now.second () <40) {lc.setDigit (0, 6, now.day ()% 10, true); lc.setDigit (0, 7, now.day () / 10, false); lc.setDigit (0, 4, now.month ()% 10, true); lc.setDigit (0, 5, agora.mês () / 10, falso); lc.setDigit (0, 0, (now.year ()% 1000)% 10, falso); lc.setDigit (0, 1, (now.year ()% 1000) / 10, falso); lc.setDigit (0, 2, (now.year ()% 1000) / 100, falso); lc.setDigit (0, 3, now.year () / 1000, false); }}

Etapa 4: Resultado

Depois que todas as etapas forem bem-sucedidas, este é o resultado que você verá: (assistir ao vídeo)

a cada 31 segundos a 40 segundos. 7 segmentos exibirão a data. Exceto por aquele segundo, 7 segmentos exibirão o relógio

Recomendado: