Erdem
Paylaşımcı üye
- Katılım
- 14 Ocak 2013
- Mesajlar
- 713
- Puanları
- 106
Ayinesi koddur kişinin lafa bakılmaz ;-)
Arduino ile 3 ışık kullanarak yazdım. Görünsün diye de 3 kez tekrarlattım.
Arduino ile 3 ışık kullanarak yazdım. Görünsün diye de 3 kez tekrarlattım.
C++:
int girisDugmesi = 12;
int kirmiziIsik = 4;
int beyazIsik = 7;
int yesilIsik = 8;
unsigned int sayac = 0;
unsigned int dordeBolumdenKalan = 0;
void birKezBasildi()
{
// Sadece görünsün diye 3 kere tekrarlattım
for (int i = 0; i < 3; ++i)
{
digitalWrite(kirmiziIsik,HIGH);
digitalWrite(beyazIsik, HIGH);
digitalWrite(yesilIsik, HIGH);
delay(2000);
digitalWrite(kirmiziIsik,LOW);
digitalWrite(beyazIsik, LOW);
digitalWrite(yesilIsik, LOW);
delay(2000);
}
}
void ikiKezBasildi()
{
for (int i = 0; i < 3; ++i)
{
digitalWrite(kirmiziIsik,HIGH);
digitalWrite(yesilIsik, HIGH);
delay(3000);
digitalWrite(kirmiziIsik,LOW);
digitalWrite(yesilIsik, LOW);
delay(3000);
}
}
void setup()
{
Serial.begin(9600);
pinMode(girisDugmesi, INPUT);
pinMode(kirmiziIsik, OUTPUT);
pinMode(beyazIsik, OUTPUT);
pinMode(yesilIsik, OUTPUT);
}
void loop()
{
int okunan = digitalRead(girisDugmesi);
if (okunan)
{
++sayac;
dordeBolumdenKalan = sayac % 4;
if (dordeBolumdenKalan == 1)
{
birKezBasildi();
}
if (dordeBolumdenKalan == 2)
{
ikiKezBasildi();
}
}
Serial.println(okunan);
delay(1);
}
Yapılır ama soruda bunu sorduklarını düşünmüyorum. O zaman açıkça örneğin düğmeye 3 kez üst üste basıldığında 1 ve 2. işlem yapılmayacak diye bir ifade kullanmaları gerekirdi.Yani 3 kere basmak istesem, bu kodla 1 ve 2 nolu işlem de yapılmaz mı?