Jam Digital: Praktikum Komponen List
Jam Digital: Praktikum Komponen List
Praktikum
Komponen List
void setup()
{
// assignes each segment a write number
lcd.createChar(1,bar1);
lcd.createChar(2,bar2);
lcd.createChar(3,bar3);
lcd.createChar(4,bar4);
lcd.createChar(5,bar5);
lcd.createChar(6,bar6);
lcd.createChar(7,bar7);
lcd.createChar(8,bar8);
state=1;
state1=1;
state2=1;
// sets the LCD's rows and colums:
lcd.begin(16, 2);
pinMode(8,INPUT);
pinMode(9,INPUT);
pinMode(10,INPUT);
s=0;
m=0;
h=0;
dt=1;
mo=1;
}
void loop()
{
if(digitalRead(8)&&state==1){
cnt++;
state=0;
cnt=cnt%5;
}else if(!digitalRead(8)&&state==0){
state=1;
}
if (digitalRead(9)&&state1==1){
dg=1;
state1=0;
}else if(!digitalRead(9)&&state1==0){
state1=1;
}
if(digitalRead(10)&&state2==1){
dg=-1;
state2=0;
}else if(!digitalRead(10)&state2==0){
state2=1;
}
switch(cnt){
case 2:
m=m+dg;
dg=0; if(m>59){
m=0;}
if(m<0){
m=59;}
break;
case 1:
h=h+dg;
dg=0;if(h>23){
h=h-24;}
if(h<0){
h=23;}
break;
if(m>59){
m=0;
h++;
if(h>23){
h=0;
dt++;
if(dt>l[mo]){
dt=1;
mo++;
}
if(mo>12){
mo=1;
}
}
}
}
h=h;
d=m%10;
printNumber(d, 10);
d=m/10;
printNumber(d, 7);
lcd.setCursor(14, 0);
lcd.print(s/10);
lcd.print(s%10);
lcd.setCursor(13, 1);
lcd.print(months[mo]);
lcd.print(dt/10);
lcd.print(dt%10);
if(cnt==0){
s++;
lcd.setCursor(6, 0);
lcd.print(" ");
lcd.setCursor(6, 1);
lcd.print(" ");
lcd.setCursor(13,0);
lcd.print(" ");
delay(500);
lcd.setCursor(6, 0);
lcd.print(".");
lcd.setCursor(6, 1);
lcd.print(".");
lcd.setCursor(13,0);
lcd.print(":");
delay(500);
}}