//lösung; beim roten knopf fehlt der widerstand, daher verfälschung des signals,
// mit grün müsste es gehen
/// warum geht rotstatus immer auf high, obwohl nichts bedient?
//ziel 27,4,: roterr button soll servo auf 90 grad bringen
// grüner button auf 270 grad
// beim drücken roter knopf soll rote lampe 1 sek aufleuchten
// beim drücken grun: grüne lampe
////////Problem: servo bewegt sich, ohne dass knopf gedrückt,,,,,
////////wenn roter knopf gedrückt, leuchten grün und rot schön abwechselnd sychnron zum servo
//////// Position 150 wird nie eingenommen
//////// vielleivht: "rotstatus" wird durch knopfdruck nicht verändert? oder doch?
//
int rotstatus = 0; // status des roten button = low
int gruenstatus = 0; // status des roten button = low
int zaehler = 0;
int LEDgruen=6;//
int LEDrot =5;
int tastergruen=7;//
int tastergruenstatus = 0;//
//int button = 2; //pin of the first button
int tasterrot = 3; //pin of the second button ///rechter butto
#include<Servo.h> //include the servo library
Servo servo; //create a servo object
int pos = 0; //initial position of the servo
void setup() {
int rotstatus = 0; // status des roten button = high
int gruenstatus = 0; // status des gruenen button = high
Serial.begin(9600);///
pinMode(LEDgruen, OUTPUT);//
pinMode(LEDrot, OUTPUT);//
servo.attach(9); //pin used by the servo
pinMode(tastergruen, INPUT_PULLUP); //define first button as input pullup
pinMode(tasterrot , INPUT_PULLUP); //define second button as input pullup
/*
INPUT_PULLUP send to arduino LOW signal, so, when you press the button, you send a LOW signal to arduino
*/
}
//
void loop() {
// digitalWrite(LEDgruen, HIGH); //ok
//Serial.print(rotstatus ); // ist immer high, warum?
servo.write(0); //ausgangsposition
zaehler = zaehler + 1;
//Serial.print(zaehler ); //
//Serial.print(" ");
//rotstatus=digitalRead(tasterrot); // status des roten knopfs: abfrage führt immer zu high, da spannng
Serial.print(rotstatus ); // ist immer high, warum? weil auf 3 immer spannung, abfrage also immer 1
rotstatus = 12; //ergbnis der abfrage wird verfälscht
//Serial.print(gruenstatus );
// pos = pos + 1; // die position des servos
// tasterstatus=digitalRead(taster);// grüner knopf?
// if (pos > 400) //
// {
// pos = 0; //ok pos wird zurückgesetzt
// tasterstatus = HIGH; //blauelampe leuchtet bei knopfdruck, spätesttens nach 200
//servo.write(90)
//rotstatus = HIGH;
// }
// if (tasterstatus == HIGH ) // HiGH ist 1 , status des grünen tasters?
// { digitalWrite(LEDblau, HIGH ); //
// // servo.write(180);
//Serial.println ("hoch ");
// delay (250); //
// servo.write(0);
// digitalWrite(LEDblau, LOW );//
// }
if (rotstatus == HIGH) // 0 = tief, 1 = high
rotstatus = 24; // test ob die if-schleife abgearb wird, erg: ja
Serial.print("hoch" ); //
Serial.print(zaehler); Serial.print("xx","); //
digitalWrite(LEDgruen, HIGH);
delay(1500);
digitalWrite(LEDgruen, LOW);
// { //digitalWrite(LEDblau, HIGH ); //
///////////////////////// Serial.print("rothoch ");
digitalWrite(LEDrot, HIGH );
//digitalWrite(LEDblau, HIGH);
//delay(1500);
servo.write(180); // absolute position!
delay(1500);
digitalWrite(LEDrot , LOW ); // geht rote lampe aus? ja
/////////////////servo.write(+150);
//rotstatus = HIGH; // wieder auf den ausgangsstand = high = 1
//Serial.print(zaehler );
//Serial.print("XXX" );
//Serial.print(rotstatus );
// }
//}
//else
//{ digitalWrite(LEDblau, LOW ); // low istt 0
//digitagitalWrite(LEDblau, LOW) ;//
//Serial.print("tief");
//delay (100 ) ;
}
//}
/*
// put your main code here, to run repeatedly:
if (digitalRead(taster ) == LOW) { //if Value read of the button ==LOW:
pos++; //increases the value of the "pos" variable each time the push button of the left is pressed
delay(5); //5 milliseconds of delay
servo.write(pos); //servo goes to variable pos
}
if (digitalRead(button1) == LOW) { //if Value read of the button ==LOW:
Serial.print("€€€");
pos == -30 ;// servo(pos ) ;
// pos--; //decreases the value of the "pos" variable each time the push button of the right is pressed
delay(15); //5 milliseconds of delay
servo.write(pos); //servo goes to variable pos
}
}
*/