niclasonline:
Also ich habe ein Projekt, bei dem ein Taster angeschlossen ist also:
5V---|Taster|----A0
Das ist generell eine FALSCHE BESCHALTUNG, weil im Falle eines offenen Tasters dann auch ein "offener Eingang" vorliegt.
Offene Eingänge haben keinen definierten Pegel, sie sind "schwebend".
Schwebende Eingänge können beliebige und von Zufälligkeiten und der elektrischen Umgebung abhängige Pegel annehmen.
Bitte arbeite das grundlegende "Button" Beispiel durch:
http://arduino.cc/en/tutorial/button
Beim Anschluß eines Tasters muß immer ein "Pull"-Widerstand den Pegel im Falle des offenen Tasters auf einen bestimmten Wert ziehen, entweder als "PullUp"-Widerstand (zieht Pegel auf 5V) oder als "PullDown"-Widerstand (zieht Pegel auf GND).
Analog-Pins an AVR-Controllern kannst Du übrigens auch wie Digital-Pins verwenden, das Button-Beispiel funktioniert also auch mit:
const int buttonPin = A0;
Und: Der Widerstand in der Schaltung muß nicht verbaut werden, wenn Du den "internen PullUp" Widerstand des Pins am Atmega-Controller aktivierst.
Dir fehlen absolut die Grundlagen zu:
- Beschaltung eines Tasters
- PullUp- und PullDown-Widerstände
- ggf.: Verwendung der internen PullUp-Widerstände in Atmega-Controllern
Vielleicht liest Du Dir erstmal was an und probierst fertige Beispiele aus, um die Grundlagen zu verstehen.
Bevor Du dann - mit dem notwendigen Verständnis - selbst etwas zusammenschaltest und programmierst.