ich habe grade mit Arduino angefangen, um langsam programmieren zu lernen. Nach ein paar Anfänger Tutorials habe ich ein erstes Projekt gestartet: Ich möchte einen Buzzer wie bei Spielshows bauen. Bin mittlerweile soweit, dass ich jeweils zwei Tasten habe, die jeweils eine Lampe bei Betätigung zum leuchten bringen. Jetzt möchte ich, dass wenn Taste 1 gedrückt ist, ein Druck auf Taste 2 nicht mehr die Lampe zum leuchten bringt und umgekehrt. Wie kann ich das machen?
Unten befindet sich mein Code zur besseren Verständlichkeit, vielen Dank schon mal!
int Schalter;
int Schalterx;
void setup() {
Serial.begin(9600);
pinMode(2,INPUT);
pinMode(13,OUTPUT);
Serial.begin(9600);
pinMode(8,INPUT);
}
void loop() {
Schalter = digitalRead(2);
Serial.println(Schalter,DEC);
Schalterx = digitalRead(8);
Serial.println(Schalterx,DEC);
if(Schalter == 1)
{
digitalWrite(13,HIGH);
digitalWrite(10,LOW); ------------------------------- das war mein Versuch, dieses Problem
} zu lösen, klappt leider nicht:D
if(Schalter == 0)
{
digitalWrite(13,LOW);
}
if(Schalterx == 1)
{
digitalWrite(10,HIGH);
}
if(Schalterx == 0)
{
digitalWrite(10,LOW);
}
}
Verwende dazu die Schaltfläche </> oben links im Editorfenster. Das kannst du auch nachträglich machen. Dazu den Sketch markieren und die Schaltfläche klicken, oder [code] davor und [/code] dahinter ohne *.
Uwe hat es ja schon geschrieben.
Pin D10 ist nicht als Ausgang definiert.
Allerdings fehlt da noch die gegenseitige Verriegelung.
Dazu musst du den Zustand des anderen Tasters auch abfragen.
HotSystems:
Dazu musst du den Zustand des anderen Tasters auch abfragen.
Sicher?
Ich würde den Zustand der anderen Ausgabe abfragen.
etwa so:
if (Schalter == 1 && digitalRead(10) == LOW) // Wenn LED von 2. Taste nicht an, mache bei gedrückter Taste LED an
{
digitalWrite (13, HIGH);
}
if (Schalter == 0)
{
digitalWrite (13, LOW);
}
if (Schalterx == 1 && digitalRead(13) == LOW) // Wenn LED von 1. Taster aus
{
digitalWrite (10, HIGH);
}
if (Schalterx == 0)
{
digitalWrite (10, LOW);
}
Und ja - Pin 10 sollte als Ausgang definiert werden, sonst gibt es wieder die Frage, warum die LED dauerhaft halb hell glimmt
Danke erstmal für die vielen Antworten, hab diese Woche leider keine Zeit mehr für das Projekt, werde eure Tipps dann nächste Woche alle einarbeiten und dann berichten!
bigfoot99:
Danke erstmal für die vielen Antworten, hab diese Woche leider keine Zeit mehr für das Projekt, werde eure Tipps dann nächste Woche alle einarbeiten und dann berichten!
Ok, dann sind wir alle mal gespannt auf dein Ergebnis.