Digital klokkekrets med 16 × 2 LCD-skjerm

Prøv Instrumentet Vårt For Å Eliminere Problemer





Innlegget forklarer hvordan du lager en enkel digital klokke ved hjelp av Arduino og en 16 x 2 LCD-skjerm.

Introduksjon

Som elektronikkentusiast på et tidspunkt hadde vi tenkt hvordan vi skulle lage en digital klokke, spesielt de som er interessert i feltet digital elektronikk. I denne artikkelen skal vi se hvordan du lager en digital klokke, og designet er så enkelt at en noob i Arduino kan utføre prosjektet uten hodepine.



Denne digitale klokken har bare to hovedkomponenter, Arduino og LCD-skjerm . Arduino er hjernen til klokken, som gjør matematiske og logiske funksjoner for å oppdatere klokken hvert sekund.

Prototypebilde:

ledningstilkobling mellom LCD og Arduino

LCD-skjermen er en standard 16-pinners grensesnittskjerm. Den har 16 rader og 2 kolonner, dette betyr at den kan vise 16 ASCII-tegn på rad, og den har to kolonner, og det kalles derfor 16x2-skjerm.



Ledningstilkoblingen mellom LCD og Arduino er standard, og vi kan finne lignende slags tilkoblinger i de fleste andre Arduino-LCD-baserte prosjekter.

Potensiometeret brukes til å justere kontrasten på skjermen.

Brukeren må stille dette optimalt slik at brukeren kan se de viste sifrene / tegnene riktig under alle lysforhold.

Det er bakgrunnsbelysning som gjør at brukeren kan se skjermen i mørke situasjoner. Arduino kan drives eksternt fra DC-kontakt fra 7 volt til 12 volt.

Kretsskjema:

potensiometer brukes til å justere kontrasten på skjermen.

ARDUINO PROGRAMKODE:

// -------- Program utviklet av 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-------//

MERKNAD: Programmet ovenfor er bekreftet og feilfritt. Hvis du har noen advarsler eller feil, kan du legge til LiquidCrystal-biblioteket manuelt.

Tidsinnstilling:

Det er to trykknapper en for å stille timer og en for å stille inn minutter. Ved å trykke på en av dem økes de tilsvarende sifrene. Trykk timer på knappen for å stille timer, til riktig tid vises, på samme måte i minutter.

MERK:

· Hold knappen inne til ønsket tid når du stiller inn tid. Hvis du trykker kort på knappen, endrer det kanskje ikke tiden.

· Hvert siffer blir inkrementert bare sekunder etter sekund, dette er fordi hele sløyfen i programmet er forsinket i 1 sekund.

· Sekundenes siffer går fra 01 til 60 og sløyfer igjen og viser ikke '00' slik tradisjonell digital klokke gjør.




Forrige: Solar inverter for 1,5 tonns klimaanlegg Neste: Enkel vertikal akse vindturbin generator krets