Go Down

Topic: (Gelöst) Taster einlesen macht Probleme... (Read 1 time) previous topic - next topic

Hoonse

Sep 03, 2011, 08:08 pm Last Edit: Sep 03, 2011, 09:52 pm by Hoonse Reason: 1
hallo freunde

ich habe ein problem und das bringt mich zur Verzweiflung.

Ich habe eine LeiterPlatte mit einem Taster der an der einen Seite an 5V+ angeschlossen und an der zweiten Seite an einen DigitalPin von meinem Arduino geht.

Wenn der Taster gedrückt wird dann soll eine LED Leuchten und wenn er losgelassene wird soll diese sofort wieder ausgehen...

Jedoch leuchtet die LED auch etwa eine Sekunde weiter wenn der Taster schon losgelassen wird und funktioniert auch mit "Handauflegen"...

Hier mein Programm (Arduino Mega):

const int led = 22;
const int taster = 42;
int val = 0;

void setup()
{
 pinMode(led, OUTPUT);
 pinMode(taster, INPUT);
 digitalWrite(taster, LOW);
}

void loop()
{
 val = digitalRead(taster);
 
 if(val == HIGH) digitalWrite(led, HIGH);
 else digitalWrite(led, LOW);
}



Ich bin wirklich am Verzweifeln... Ich habe solche Programme schon am Anfang gemacht als ich mit den Arduino Spielereien angefangen habe. Jedoch habe ich dort immer GND geschaltet und nicht 5V+ Doch da ich hier eine ferige LeiterPlatte habe kann ich nur 5V+ Schalten...

Ich hoffe wirklich das mir jemand die Klappen von den Augen nehmen kann... Denn ich komm nicht drauf...

Vielen Dank im Voraus und ein schönes Wochenende

Grüße Hoonse

madworm

Es fehlt ein pull-down (z.b. 10k) nach GND.

Hoonse

Aber das mache ich doch schon mit

digitalWrite(taster, LOW);

oder sehe ich da etwa etwas falsch?!?

mfg Hoonse

madworm

Nein, damit werden die internen pull-up widerstaende ausgeschaltet. Interne pull-down widerstaende gibt es in der ATmega serie nicht.

Hoonse

ok vielen dank du hast mich auf meinen Fehler hingewiesen...

grüße Hoonse

Go Up