ARDUINO DERS-22 (PİYANO YAPIMI)
DEVRE SEMASI
Not 1: Butonlar sırasıyla A,B,C,D,E,F,G olarak ilerliyor.
Not 2: Notalar sırasıyla DO,RE,Mİ,FA,SOL,LA,Sİ seklinde ilerliyor.
Not 3: Eğer istenirse butonlar yerine iletken herhangi bi şerit kullanılabilir.
Not 4: Bazı izlediğim videolarda meyvelerden veya tenke kutusu gibi materyallerden de notalar kullanılmıştır.
Not 5: Hoparlör yerine buzzer kullanılabilir.Yalnız ses kalitesi düşer.
Mazemeler
- 1X Hoparlör
- 1X Arduino
- 7X buton
- 7X 1K direnç
Devre kodu
#define T_C 262
#define T_D 294
#define T_E 330
#define T_F 349
#define T_G 392
#define T_A 440
#define T_B 493
const int C = 10;
const int D = 9;
const int E = 8;
const int F = 7;
const int G = 6;
const int A = 5;
const int B = 4;
const int Buzz = 11;
//const int LED = 2;
void setup()
{
//pinMode(LED, OUTPUT);
pinMode(C, INPUT);
digitalWrite(C,HIGH);
pinMode(D, INPUT);
digitalWrite(D,HIGH);
pinMode(E, INPUT);
digitalWrite(E,HIGH);
pinMode(F, INPUT);
digitalWrite(F,HIGH);
pinMode(G, INPUT);
digitalWrite(G,HIGH);
pinMode(A, INPUT);
digitalWrite(A,HIGH);
pinMode(B, INPUT);
digitalWrite(B,HIGH);
//digitalWrite(LED,LOW);
}
void loop()
{
while(digitalRead(C) == LOW)
{
tone(Buzz,T_C);
//digitalWrite(LED,HIGH);
}
while(digitalRead(D) == LOW)
{
tone(Buzz,T_D);
//digitalWrite(LED,HIGH);
}
while(digitalRead(E) == LOW)
{
tone(Buzz,T_E);
//digitalWrite(LED,HIGH);
}
while(digitalRead(F) == LOW)
{
tone(Buzz,T_F);
//digitalWrite(LED,HIGH);
}
while(digitalRead(G) == LOW)
{
tone(Buzz,T_G);
//digitalWrite(LED,HIGH);
}
while(digitalRead(A) == LOW)
{
tone(Buzz,T_A);
//digitalWrite(LED,HIGH);
}
while(digitalRead(B) == LOW)
{
tone(Buzz,T_B);
//digitalWrite(LED,HIGH);
}
noTone(Buzz);
//digitalWrite(LED,LOW);
}
Yorumlar
Yorum Gönder