Nabend...
Habe nicht längst die ClickButton Lib gefunden und muss sagen, gefällt mir besser als die OneButton Lib,
Alles gelötet und programmiert, getestet... funktioniert.
Nur funktioniert es auch dann, wenn nix gedrückt wird.
Ich denke es liegt an dem PULLUP Widerstand, oder? Wenn man ein externen 10k PULLDOWN Widerstand anbringt, sollte es ja nicht mehr passieren, oder liegt es garnicht an dem?
Hier gibts die Lib: https://code.google.com/p/clickbutton/
Und wie sollte man den Widerstand anbringen?
Habe +5V eine Seite
Dann vom Pin 3 zu andere Seite und 10k mit GND verbunden.
The circuit:
- LED attached from pin 10 to resistor (say 220-ish ohms), other side of resistor to GND (ground)
- pushbutton attached from pin 4 to GND
No pullup resistor needed, using the Arduino's (Atmega's) internal pullup resistor in this example
Taster gegen GND schalten, der interne Pullup wird durch diese Anweisung aktiviert:
Richtig, hatte ich gelesen und verstanden.
Da ich ja Probleme mit dem "Geist" hab, der den Taster drückt, gegen mein Willen, dachte ich ein PULLDOWN anzubringen.
Also wie bringt man den Widerstand an und was muss dann im Code geändert werden?
Hatte probiert:
Dies bedeutet, dass auf LOW getrigegrt wird, während der interne Pullup aktiviert ist. Die Variante HIGH und aktivierter Pullup würde ja dafür sorgen, dass permanent ausgelöst wird, bzw. innerhalb der Library als langer Klick gewertet wird. Ohne aktiviertem internen Pullup liegt es an dir, das passend zu beschalten, eben durch externe Pullups bzw. Pulldowns.
Schande über mein Haupt
Nachdem ich das ganze auf dem Steckbrett erfolgreich testen konnte, habe ich die Platine untersucht....
Beim löten hab ich den neben liegenden Pin erwischt, wo zufällig die Led angeschlossen ist, somit war da permanent saft drauf.
Sorry jungs
Aber eine Frage bleibt trotzdem...
Woran liegt es, wenn der Taster schaltet obwohl keiner drückt?
Liegt es an dem internen PULLUP?
Nun hab ich aber anderes Problem :~
Mit kurzen Kabel funktionierts, mit dem 10m Lan Kabel als Stromversorgung aber nicht.
Es kommt 4,8V an. Die Led leuchtet wieder nur permanent.
Wenn der interne PULLUP bei 30k liegt, wieso gibt dann Störungen und bei dem 10k PULLDOWN mit kurzen Kabel nicht?
Wenn ich mehrere (ca 10) solcher platinen ( Busankoppler) an den Arduino anschließe, reicht der interne PULLUP und gibt es dann weniger Störungen?