Herkese merhaba
Arduino kullanarak butonlar ile röleleri kontrol etmeye çalışan bir proje ile uğraşıyorum.
4 röle var 4 de buton start tuşuna bastığım zaman 1. röle tetiklenir 1. butona basıldığında 1. röle durur 2. röle tetiklenir 2. butona bastığımda 2. röle durur 3. röle tetiklenir 3. butona bastığımda 3. röle durur 4. röle tetiklenir 4. butona bastığımda ise bütün röleler durur. 3 tekrar butonuna basarsam bu döngü 3 defa tekrarlanıp durmasını istiyorum fakat 2. butona basığımda döngü caselerin içinden çıkıyor case nin içindeki if leri çalıştırmıyor. Yardımcı olur musunuz
void setup()
{
pinMode(1, OUTPUT);
pinMode(10, INPUT);
pinMode(2, INPUT);
pinMode(4, INPUT);
pinMode(8, INPUT);
pinMode(3, OUTPUT);
pinMode(6, OUTPUT);
pinMode(9, OUTPUT);
pinMode(5, INPUT);
pinMode(A1, INPUT);
pinMode(A2, INPUT);
pinMode(A3, INPUT);
pinMode(0, OUTPUT);
pinMode(13, OUTPUT);
}
int count=0;
void loop()
{
int count=digitalRead(10);// digitalRead(10) start butonu
if(digitalRead(12)==1) // digitalRead(12) 3 tekrar butonu
{
count=2;
}
switch(count){
case 1:
digitalWrite(1,HIGH);
delay(10);
digitalWrite(3,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
if(digitalRead(2)==1)//1. swich
{
digitalWrite(1,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(3,HIGH);
delay(10);
}
else if(digitalRead(4)==1)// 2. swich
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
digitalWrite(1,LOW);
delay(10);
digitalWrite(9,HIGH);
delay(10);
}
else if(digitalRead(8)==1)// 3.swich
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(1,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(6,HIGH);
delay(10);
}
else if(digitalRead(11)==1) //4.swich durdur
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(1,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
}
break;
case 2:
digitalWrite(1,HIGH);
delay(10);
digitalWrite(3,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
if(digitalRead(2)==1 )//1. swich
{
digitalWrite(1,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(3,HIGH);
delay(10);
}
else if(digitalRead(4)==1)// 2. swich
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
digitalWrite(1,LOW);
delay(10);
digitalWrite(9,HIGH);
delay(10);
}
else if(digitalRead(8)==1)// 3.swich
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(1,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(6,HIGH);
delay(10);
}
else if(digitalRead(11)==1) //4.swich başa dön
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(1,HIGH);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
}
else if(digitalRead(2)==1)//1. swich
{
digitalWrite(1,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(3,HIGH);
delay(10);
}
else if(digitalRead(4)==1)// 2. swich
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
digitalWrite(1,LOW);
delay(10);
digitalWrite(9,HIGH);
delay(10);
}
else if(digitalRead(8)==1)// 3.swich
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(1,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(6,HIGH);
delay(10);
}
else if(digitalRead(11)==1) //4.swich başa dön
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(1,HIGH);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
}
else if(digitalRead(2)==1)//1. swich
{
digitalWrite(1,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(3,HIGH);
delay(10);
}
else if(digitalRead(4)==1)// 2. swich
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
digitalWrite(1,LOW);
delay(10);
digitalWrite(9,HIGH);
delay(10);
}
else if(digitalRead(8)==1)// 3.swich
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(1,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(6,HIGH);
delay(10);
}
else if(digitalRead(11)==1) //4.swich durdur
{
digitalWrite(3,LOW);
delay(10);
digitalWrite(1,LOW);
delay(10);
digitalWrite(9,LOW);
delay(10);
digitalWrite(6,LOW);
delay(10);
}
break;
}
}