Başlangıçta beni çok uğraştıran 7 segment uygulaması
bulunmaktadır. Ben bu uygulamayı yapmaya çalışırken tabi 7 segmentin Anot ve
Katot diye iki çeşidi olduğundan habersizdim. Biraz araştırmadan sonra bunu
öğrendim ama aradaki temel farkın Katotun toprağa Anotun ise 5 Volta
bağlandığını sanmam oldu. İşin aslında Anot’ta “pinMode(a,HIGH);” yazdığımızda a pinine bağlı ledi söndürüyormuş.
Katot display de ise aynı kod ile ledi yakıyormuşuz. Bu biraz alışageldiğim
mantığa ters düştü.Çok basit bir ayrıntı fakat beni fazlaca oyaladı. Aşağıda
Anot 7 segment uygulaması bulunmaktadır. Sonra kodu Katot bir 7 segment ile
denemeyin , acayip sonuçlarla karşılaşabilirsiniz! Fritzing ile oluşturduğum şeması ve kodu
aşağıdaki gibidir;
int a = 2;
int b = 3;
int c = 4;
int d = 5;
int e = 6;
int f = 8;
int g = 7;
void setup(){
pinMode(a,OUTPUT);
pinMode(b,OUTPUT);
pinMode(c,OUTPUT);
pinMode(d,OUTPUT);
pinMode(e,OUTPUT);
pinMode(f,OUTPUT);
pinMode(g,OUTPUT);
}
void loop(){
gecis();
delay(500);
sifir();
delay(500);
gecis();
delay(500);
bir();
delay(500);
gecis();
delay(500);
iki();
delay(500);
gecis();
delay(500);
uc();
delay(500);
gecis();
delay(500);
dort();
delay(500);
gecis();
delay(500);
bes();
delay(500);
gecis();
delay(500);
alti();
delay(500);
gecis();
delay(500);
yedi();
delay(500);
gecis();
delay(500);
sekiz();
delay(500);
gecis();
delay(500);
dokuz();
delay(500);
}
void sifir(){
digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(f,LOW);
}
void bir(){
digitalWrite(b,LOW);
digitalWrite(c,LOW);
}
void iki(){
digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(g,LOW);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
}
void uc(){
digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(g,LOW);
}
void dort(){
digitalWrite(f,LOW);
digitalWrite(g,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
}
void bes(){
digitalWrite(a,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
}
void alti(){
digitalWrite(a,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);
}
void yedi(){
digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
}
void sekiz(){
digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);
}
void dokuz(){
digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);
}
void gecis(){
digitalWrite(a,HIGH);
digitalWrite(b,HIGH);
digitalWrite(c,HIGH);
digitalWrite(d,HIGH);
digitalWrite(e,HIGH);
digitalWrite(f,HIGH);
digitalWrite(g,HIGH);
}
|
0 yorum:
Yorum Gönder