Projetos de circuito eletrônicoProjetos de engenharia do ArduinoCircuito de relógio digital usando display LCD 16×2

Circuito de relógio digital usando display LCD 16×2

Relacionados

O post explica como fazer um relógio digital simples usando Arduino e um display LCD 16 x 2.

Introdução

Como um entusiasta da eletrônica em um estágio, teríamos pensado em como fazer um relógio digital, especialmente para quem está interessado no campo da eletrônica digital. Neste artigo vamos ver como fazer um relógio digital e o design é tão simples que um noob em Arduino pode realizar o projeto sem dor de cabeça.

Este relógio digital possui apenas dois componentes principais, o Arduino e o display LCD. O Arduino é o cérebro do relógio, que faz funções matemáticas e lógicas para atualizar o relógio a cada segundo.

Imagem do protótipo:

CONEXÃO DE FIO ENTRE O LCD E O ARDUINO

A tela LCD é um display com interface padrão de 16 pinos. Tem 16 linhas e 2 colunas, isso significa que pode exibir 16 caracteres ASCII em uma linha e tem duas colunas e por isso é chamado de exibição 16×2.

A conexão de fio entre o LCD e o Arduino é padrão e podemos encontrar o tipo semelhante de conexões na maioria dos outros projetos baseados em Arduino-LCD.

O potenciômetro é usado para ajustar o contraste do display.

O usuário deve definir isso de forma ideal para que o usuário possa ver os dígitos/caracteres exibidos corretamente em todas as situações de luz.

Há luz de fundo que permite ao usuário ver a tela durante a situação escura. O arduino pode ser alimentado externamente pela tomada DC de 7 volts a 12 volts.

Diagrama de circuito:

POTENCIÔMETRO É USADO PARA AJUSTAR O CONTRASTE DA TELA.

CÓDIGO DO PROGRAMA ARDUINO:

//——– Programa desenvolvido por R.GIRISH———–//
#include
LiquidCrystal lcd(12,11,5,4,3,2);
int h=12;
int m;
int s;
int flag;
int TIME;
const int hs=8;
const int ms=9;
int state1;
int state2;
void setup()
{
lcd.begin(16,2);
}
void loop()
{
lcd.setCursor(0,0);
s=s+1;
lcd.print("TIME:" );
lcd.print(h);
lcd.print(":");
lcd.print(m);
lcd.print(":");
lcd.print(s);
if(flag<12) lcd.print(" AM");
if(flag==12) lcd.print(" PM");
if(flag>12) lcd.print(" PM");
if(flag==24) flag=0;
delay(1000);
lcd.clear();
if(s==60) {
s=0;
m=m+1;
}
if(m==60)
{
m=0;
h=h+1;
flag=flag+1;
}
if(h==13)
{
h=1;
}
lcd.setCursor(0,1);
lcd.print("HAVE A NICE DAY");
//-----------Time setting----------//
state1=digitalRead(hs);
if(state1==1)
{
h=h+1;
flag=flag+1;
if(flag<12) lcd.print(" AM");
if(flag==12) lcd.print(" PM");
if(flag>12) lcd.print(" PM");
if(flag==24) flag=0;
if(h==13) h=1;
}
state2=digitalRead(ms);
if(state2==1) {
s=0;
m=m+1;
}
}
//-------- Program developed by R.GIRISH-------//

NOTA: O programa acima é verificado e livre de erros. Caso você tenha algum aviso ou erro, adicione a biblioteca LiquidCrystal manualmente.

Configuração de tempo:

Existem dois botões, um para definir as horas e outro para definir os minutos. Pressionar qualquer um irá incrementar os dígitos correspondentes. Para definir as horas, pressione o botão hrs até que a hora correta seja exibida, da mesma forma para os minutos.

NOTA:

· Durante o ajuste do tempo, mantenha o botão pressionado até atingir o tempo desejado. Pressionar o botão momentaneamente pode não alterar a hora.

· Cada dígito é incrementado apenas segundo após segundo, porque todo o loop do programa atrasou 1 segundo.

· O dígito dos segundos vai de 01 a 60 e volta a fazer um loop e não exibirá “00” como o relógio digital tradicional.

Hashtags: #Circuito #relógio #digital #usando #display #LCD
 

FONTE


Nota: Este conteúdo foi traduzido do Inglês para português (auto)
Pode conter erros de tradução

Olá, se tiver algum erro de tradução (AUTO), falta de link para download etc…
Veja na FONTE até ser revisado o conteúdo.
Status (Ok Até agora)


Se tiver algum erro coloque nos comentários

Mas se gostou compartilhe!!!

Relacionados

Relacionados