Proyek Counter Up dan Counter Down dengan Display 7 Segment 4 Digit With Arduino Uno ini cocok untuk pemula yang sedang belajar pemrograman arduino. Disini pemula bisa belajar bagaimana menggunakan input berupa tombol tact switch yang diolah oleh arduino sehingga bisa menampilkan Angka pada 7 segment. Setelah belajar proyek ini, anda dapat mengembangkannya sesuai dengan keinginan anda.
Kebutuhan Hardware :
1. Arduino Uno
2. Tact Switch
3. 7 Segement Common Anoda 4 Digit
Untuk Pembelian Komponen bisa BELI DISINI.
Berikut ini adalah Schematicnya :
Setelah terkoneksi dengan baik silahkan upload sketch dibawah ini :
Kebutuhan Hardware :
1. Arduino Uno
2. Tact Switch
3. 7 Segement Common Anoda 4 Digit
Untuk Pembelian Komponen bisa BELI DISINI.
Berikut ini adalah Schematicnya :
Setelah terkoneksi dengan baik silahkan upload sketch dibawah ini :
/***************************
Counter Up/Down 4 Digit 7 Segment
Oleh : Workshop Electronics 3 in 1
Website : www.arduinoindonesia.id
Toko Online : www.workshopelectronics3in1.com
Blog : www.edukasielektronika.com
Profil : www.workshopelectronics3in1.co.id
Copyright @2017
****************************/
unsigned int count;
int segA = 2;
int segB = 3;
int segC = 4;
int segD = 5;
int segE = 6;
int segF = 7;
int segG = 8;
int dig1 = 9;
int dig2 = 10;
int dig3 = 11;
int dig4 = 12;
void setup() {
for(char i=2; i<13; i++){
pinMode(i,OUTPUT);
}
pinMode(A0,INPUT);
pinMode(A1,INPUT);
pinMode(A2,INPUT);
digitalWrite(A0,1);
digitalWrite(A1,1);
digitalWrite(A2,1);
}
void loop() {
char seg1 = int(count)/1000;
char seg2 = (int(count)%1000)/100;
char seg3 = (int(count)%100)/10;
char seg4 = (int(count)%100)%10;
if (count < 10){
seg1=10;
seg2=10;
seg3=10;
}
else if (count < 100){
seg1=10;
seg2=10;
}
else if (count < 1000){
seg1=10;
}
digitalWrite(12,1);
digitalWrite(9,0);
displaySeg(seg1);
delay(5);
digitalWrite(9,1);
digitalWrite(10,0);
displaySeg(seg2);
delay(5);
digitalWrite(10,1);
digitalWrite(11,0);
displaySeg(seg3);
delay(5);
digitalWrite(11,1);
digitalWrite(12,0);
displaySeg(seg4);
delay(5);
if (digitalRead(A0)==0 && count < 9999){
count++;
delay(200);
}
else if(digitalRead(A1)==0 && count != 0){
count--;
delay(200);
}
else if(digitalRead(A2)==0){
count=0;
}
}
void displaySeg(char segment){
switch (segment){
case 0: digitalWrite(segA,0);
digitalWrite(segB,0);
digitalWrite(segC,0);
digitalWrite(segD,0);
digitalWrite(segE,0);
digitalWrite(segF,0);
digitalWrite(segG,1);
break;
case 1: digitalWrite(segA,1);
digitalWrite(segB,0);
digitalWrite(segC,0);
digitalWrite(segD,1);
digitalWrite(segE,1);
digitalWrite(segF,1);
digitalWrite(segG,1);
break;
case 2: digitalWrite(segA,0);
digitalWrite(segB,0);
digitalWrite(segC,1);
digitalWrite(segD,0);
digitalWrite(segE,0);
digitalWrite(segF,1);
digitalWrite(segG,0);
break;
case 3: digitalWrite(segA,0);
digitalWrite(segB,0);
digitalWrite(segC,0);
digitalWrite(segD,0);
digitalWrite(segE,1);
digitalWrite(segF,1);
digitalWrite(segG,0);
break;
case 4: digitalWrite(segA,1);
digitalWrite(segB,0);
digitalWrite(segC,0);
digitalWrite(segD,1);
digitalWrite(segE,1);
digitalWrite(segF,0);
digitalWrite(segG,0);
break;
case 5: digitalWrite(segA,0);
digitalWrite(segB,1);
digitalWrite(segC,0);
digitalWrite(segD,0);
digitalWrite(segE,1);
digitalWrite(segF,0);
digitalWrite(segG,0);
break;
case 6: digitalWrite(segA,0);
digitalWrite(segB,1);
digitalWrite(segC,0);
digitalWrite(segD,0);
digitalWrite(segE,0);
digitalWrite(segF,0);
digitalWrite(segG,0);
break;
case 7: digitalWrite(segA,0);
digitalWrite(segB,0);
digitalWrite(segC,0);
digitalWrite(segD,1);
digitalWrite(segE,1);
digitalWrite(segF,1);
digitalWrite(segG,1);
break;
case 8: digitalWrite(segA,0);
digitalWrite(segB,0);
digitalWrite(segC,0);
digitalWrite(segD,0);
digitalWrite(segE,0);
digitalWrite(segF,0);
digitalWrite(segG,0);
break;
case 9: digitalWrite(segA,0);
digitalWrite(segB,0);
digitalWrite(segC,0);
digitalWrite(segD,0);
digitalWrite(segE,1);
digitalWrite(segF,0);
digitalWrite(segG,0);
break;
case 10: digitalWrite(segA,1);
digitalWrite(segB,1);
digitalWrite(segC,1);
digitalWrite(segD,1);
digitalWrite(segE,1);
digitalWrite(segF,1);
digitalWrite(segG,1);
break;
}
}
Counter Up dan Counter Down dengan Display 7 Segment 4 Digit With Arduino Uno
Reviewed by MCH
on
February 15, 2017
Rating:
No comments: