Programm – die besten Beiträge

Arduino if Bedinung mit 2 Werten ?

ich schreibe gerade einen Sketch das man mit einem Taster 4 LEDS weiterschalten

und wen der 2 Taster gedrückt wird blinken die anderen LEDS .

aber bei der if Bedingung bei der beide werte überprüft werden funktioniert es nicht

Weiß da jemand weiter

Das ist der Sketch:

int taster1=7;
int taster2=8;


int tasterstatus1=0;
int tasterstatus2=0;


int led1=12;
int led2=11;
int led3=10;
int led4=9;


bool oldButtonState = HIGH;
bool newButtonState;
int count = 0;


void setup() {
 pinMode (taster1,INPUT);
pinMode (taster2,INPUT_PULLUP);




pinMode (led1,OUTPUT);
pinMode (led2,OUTPUT);
pinMode (led3,OUTPUT);
pinMode (led4,OUTPUT);
}


void loop() {
  newButtonState = digitalRead(taster1);
  
  tasterstatus2 = digitalRead(taster2);
  
  if (oldButtonState == HIGH && newButtonState == LOW) {
    count++;
    oldButtonState = newButtonState;


    if (count == 3) {
      digitalWrite(led1, HIGH);
    }
    if (count == 4) {
      digitalWrite(led1, LOW);
      digitalWrite (led2,HIGH);
    }


    if (count == 5 ){
      digitalWrite (led2,LOW);
      digitalWrite (led3,HIGH);
    }


    if (count == 6){
      digitalWrite (led3,LOW);
      digitalWrite (led4,HIGH);
    }


    if (count == 7){
      digitalWrite (led4,LOW);
    }




    


    if ((tasterstatus2 == HIGH && count == 3)){
      digitalWrite (led1,HIGH);
      delay (1000);
      digitalWrite (led1,LOW);
      digitalWrite (led2,HIGH);
      delay (1000);
      digitalWrite (led2,LOW);
      digitalWrite (led3,HIGH);
      delay (1000);
      digitalWrite (led3,LOW);
      digitalWrite (led4,HIGH);
      delay (1000);
      digitalWrite (led4,LOW);
    }




    if ((tasterstatus2 == HIGH) && (count == 4)){
      digitalWrite (led2,HIGH);
      delay (1000);
      digitalWrite (led2,LOW);
      digitalWrite (led3,HIGH);
      delay (1000);
      digitalWrite (led3,LOW);
      digitalWrite (led4,HIGH);
      delay (1000);
      digitalWrite (led4,LOW);
      digitalWrite (led1,HIGH);
      delay (1000);
      digitalWrite (led1,LOW);
    }
    
        
    delay(100);
  } else if (oldButtonState == LOW && newButtonState == HIGH) {
    oldButtonState = newButtonState;
  }
}
Computer, Programm, Arduino

Meistgelesene Beiträge zum Thema Programm