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;
}
}