Hilfe fehhler beim kompremieren für das arduino board

Ich möchte 4 Magnetventile mit 3 Tastern ansteuern 2 für an und aus einen nur für aus aber irgendwo scheint ein fehler zu sein

int TasAns=10; 
int KnoAns=9; 
int KnoAuf=8; 
int VentDown=7; 
int VentUp=6; 
int ZylAnsL=5; 
int ZylAnsR=4; 
int tasterstatusTasAns=0; 
int tasterstatusKnoAns=0; 
int tasterstatusKnoAuf=0; 
boolean VentUpState = HIGH;
boolean VentDownState = LOW;
boolean AnsAnState = HIGH;
boolean AnsAusState= LOW;

void setup() 
{
 pinMode(TasAns, INPUT); 
 pinMode(KnoAns, INPUT); 
 pinMode(KnoAuf, INPUT); 
 pinMode(VentDown, OUTPUT); 
 pinMode(VentUp, OUTPUT); 
 pinMode(ZylAnsL, OUTPUT); 
 pinMode(ZylAnsR, OUTPUT); 
}

void loop()
{
 tasterstatusTasAns=digitalRead(TasAns);
 tasterstatusKnoAuf=digitalRead(KnoAuf);
if ((digitalRead(KnoAuf) == HIGH && (VentUpState) == LOW))
 {  
   digitalWrite(VentUp, HIGH);
  VentUpState = HIGH;
  digitalWrite(VentDown, LOW);
  VentDownState = LOW;
 }
 
 if ((digitalRead(KnoAuf) == HIGH && (VentUpState) == HIGH))
 {
   digitalWrite(VentUp, LOW);
   VentUpState = LOW;
   digitalWrite(VentDown, HIGH);
   VentDownState = HIGH;  
  }
  
 if ((digitalRead(TasAns) == HIGH && (VentUpState) == HIGH))
 {
   digitalWrite(VentUp, LOW);
   VentUpState = LOW;
    digitalWrite(VentDown, HIGH);
   VentDownState = HIGH;
 }

 if ((digitalRead(KnoAns) == HIGH && (AnsAnState) = LOW))
   {
     digitalWrite(ZylAnsL, HIGH);
      AnsAnState = HIGH;
     digitalWrite(ZylAnsR, LOW);
      AnsAusState = LOW;  
   }

 if((digitalRead(KnoAns) = HIGH && (AnsAnState) = HIGH))
   {
        digitalWrite(ZylAnsL, LOW);
      AnsAnState = LOW;
     digitalWrite(ZylAnsR, HIGH);
      AnsAusState = HIGH;     
   }
 
}
  • poste deinen Sketch in Code-Tags
  • wenn du nicht weist was Code-Tags sind - lies im Forum How to nach wie das geht
  • wenn du schon dabei bist, stelle deinen Betreff richtig. Du willst vermutlich kompilieren.
  • "irgendwo scheint ein fehler zu sein" ist keine Fehleranlayse. Beschreibe genau was dein Sketch machen soll, und was er statt dessen fehlerhaft macht. Wenn das kompilieren schon fehlschlägt, der Kompilier schreibt normalerweise genau hin, was ihm nicht gefällt. Kopiere die Fehlermeldung raus.
  • Stelle eine konkrete Frage. Fragen enden üblicherweise mit einem Fragezeichen
  • Statte deinen Sketch mit Serial.print Ausgaben in jedem IF-Zweig aus inkl. der Variablen die zu dem Ergebnis geführt haben, damit du siehst was dein Programm macht oder nicht macht. Das hilft dir deine Programmlogik nachzuverfolgen und Fehler leichter zu erkennen.

(deleted)

if ((digitalRead(KnoAns) == HIGH && (AnsAnState) = LOW))

Das ist eine Zuweisung, kein Vergleich.

Und hier gleich 2 mal:

if((digitalRead(KnoAns) = HIGH && (AnsAnState) = HIGH))