Krug digitalnog sata koji koristi LCD zaslon 16 × 2

Isprobajte Naš Instrument Za Uklanjanje Problema





Post objašnjava kako izraditi jednostavan digitalni sat pomoću Arduina i LCD zaslona 16 x 2.

Uvod

Kao zaljubljenici u elektroniku u fazi bismo pomislili kako napraviti digitalni sat, posebno one koji su zainteresirani za područje digitalne elektronike. U ovom ćemo članku vidjeti kako napraviti digitalni sat, a dizajn je toliko jednostavan da noob u Arduinu može realizirati projekt bez ikakvih glavobolja.



Ovaj digitalni sat ima samo dvije glavne komponente, Arduino i LCD zaslon . Arduino je mozak sata koji vrši matematičke i logičke funkcije za ažuriranje sata svake sekunde.

Slika prototipa:

žičana veza između LCD-a i Arduina

LCD zaslon je standardni 16-pinski spojeni zaslon. Ima 16 redaka i 2 stupca, to znači da može prikazati 16 ASCII znakova u nizu i ima dva stupca i zato se naziva prikaz 16x2.



Žičana veza između LCD-a i Arduina standardna je i slične vrste veza možemo pronaći u većini drugih projekata temeljenih na Arduino-LCD-u.

Potenciometar se koristi za podešavanje kontrasta zaslona.

Korisnik to mora postaviti optimalno kako bi korisnik mogao pravilno prikazati prikazane znamenke / znakove u svim svjetlosnim situacijama.

Postoji pozadinsko osvjetljenje koje omogućava korisniku da vidi zaslon tijekom mračne situacije. Arduino se može napajati izvana iz DC priključka od 7 do 12 volti.

Kružni dijagram:

potenciometar se koristi za podešavanje kontrasta zaslona.

ARDUINO KOD PROGRAMA:

// -------- Program razvio 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-------//

NAPOMENA: Gornji program je ovjeren i bez grešaka. U slučaju da dobijete upozorenje ili pogrešku, dodajte knjižnicu LiquidCrystal ručno.

Postavljanje vremena:

Postoje dvije tipke, jedna za podešavanje sati i druga za podešavanje minuta. Pritiskom na bilo koju od njih povećat će se odgovarajuće znamenke. Za podešavanje sati pritisnite tipku hrs dok se ne prikaže točno vrijeme, slično minutama.

BILJEŠKA:

· Tijekom podešavanja vremena držite pritisnutu tipku dok ne dosegne željeno vrijeme. Kratko pritiskanje tipke možda neće promijeniti vrijeme.

· Svaka se znamenka povećava samo sekundu za sekundom, jer je cijela petlja programa odgođena za 1 sekundu.

· Znamenka sekunde kreće se od 01 do 60 i ponovno se petlja i neće prikazivati ​​'00' kao tradicionalni digitalni sat.




Prethodno: Solarni pretvarač za klima uređaj od 1,5 tone Dalje: Jednostavni krug generatora vjetroagregata okomite osi