Круг дигиталног сата помоћу ЛЦД екрана од 16 × 2

Испробајте Наш Инструмент За Елиминисање Проблема





Пост објашњава како направити једноставан дигитални сат помоћу Ардуина и ЛЦД екрана 16 к 2.

Увод

Као заљубљеници у електронику у фази бисмо размишљали како направити дигитални сат, посебно оне који су заинтересовани за област дигиталне електронике. У овом чланку ћемо видети како направити дигитални сат, а дизајн је толико једноставан да нооб у Ардуину може да реализује пројекат без икаквих главобоља.



Овај дигитални сат има само две главне компоненте, Ардуино и ЛЦД дисплеј . Ардуино је мозак сата који врши математичке и логичке функције за ажурирање сата сваке секунде.

Слика прототипа:

жичана веза између ЛЦД-а и Ардуина

ЛЦД екран је стандардни дисплеј са 16 пина. Има 16 редова и 2 колоне, што значи да може да прикаже 16 АСЦИИ карактера у низу и има две колоне и зато се назива приказ 16к2.



Жичана веза између ЛЦД-а и Ардуина је стандардна и сличне врсте веза можемо наћи у већини других пројеката заснованих на Ардуино-ЛЦД-у.

Потенциометар се користи за подешавање контраста екрана.

Корисник ово мора да подеси оптимално да би могао правилно да приказује приказане цифре / знакове у свим светлосним ситуацијама.

Постоји позадинско осветљење које омогућава кориснику да види екран током мрачне ситуације. Ардуино се може напајати споља из ДЦ прикључка од 7 до 12 волти.

Шема кола:

потенциометар се користи за подешавање контраста приказа.

АРДУИНО КОД ПРОГРАМА:

// -------- Програм развио Р.ГИРИСХ ------- //
#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-------//

НАПОМЕНА: Горњи програм је верификован и без грешака. У случају да добијете упозорење или грешку, додајте библиотеку ЛикуидЦристал ручно.

Подешавање времена:

Постоје два тастера један за подешавање сати и други за подешавање минута. Притиском на било који од њих повећаће се одговарајуће цифре. За подешавање сати притисните тастер хрс док се не прикаже тачно време, слично минутама.

БЕЛЕШКА:

· Док подешавате време, држите притиснуто дугме док не достигне жељено време. Кратко притискање дугмета можда неће променити време.

· Свака цифра се повећава само секунду за секундом, јер је цела петља програма одложена за 1 секунду.

· Знак секунде се креће од 01 до 60 и поново се петља и неће приказивати „00“ као традиционални дигитални сат.




Претходни: Соларни претварач за клима уређај од 1,5 тоне Следеће: Једноставни круг генератора ветрогенератора вертикалне осе