digitalRead() ließt Strom, obwohl nur ein Kabel dranhängt. Induktion?

Hi Leute,

ich bin ein Newbie mit dem Arduino und im Forum und habe ein komisches Problem: Ich habe die Pins 2,3,4,5 als INPUT eingestellt und ich will, da was "empfangen". Das Problem ist jetzt, dass ich an den Pin 2 ein Kabel angeschlossen habe, was nirgendswo sonst angeschlossen ist, also lose rumhängt, und der Arduino gibt digitalRead(2) = HIGH aus.

Passiert das durch Induktion oder ähnliches? Ich habe die Spannung mit einem Multimeter gemessen und sie beträgt ungefähr 1 Volt.

darkson :slight_smile:

Hallo,
der Arduino mag es nicht, wenn seine Pin´s so "rumhängen".
Diese befinden sich dann in einem undefinierbaren Zustand. Du kannst den internen PullUpWiderstand aktivieren, oder den Pin mit einem 10K Widerstand gegen Masse ziehen.
Gruß und Spaß
Andreas

Hi,
Danke für die Antwort erstmal. Das Problem tritt aber auch auf, wenn das Kabel im Breadboard steckt und wenn ich wirr Strom auf die jeweiligen Pins bekomme, funktioniert das Projekt was ich mache nicht. (Das Projekt ist, dass 2 Arduinos miteinander kommunizieren können).

darkson

Edit: Hier sieht ihr die Schaltung. Das lange gelbe Kabel ist mit dem Input-Pin verbunden und das gelbe LED leuchtet nur wenn auf dem Input-Pin Strom drauf ist. Da ist kein Strom drauf aber es leuchtet trotzdem...

Du kannst auch rumhängen auch als offenen Eingang interpretieren. Du muss die Pin immer defineieren also HIGH oder LOW also müssen die Pins immer defniert sein also z.B. Grundsätzlich alle Pins haben einen Pulldown Widerstand ~10kOhm das heißt wenn dieser Pin dann offen "rumhängt" hat er einen definierten Zustand also down=>LOW

Gruß
DerDani.

Die Pins die vom Arduino 1 (schickt die Nachricht raus) rausgehen und am Arduino 2 (empfängt die Nachricht) ankommen sind LOW, aber die KontrollLEDs, die den Input beobachtet, vom Arduino 2 spielen wie verrückt.

den Pin mit einem 10K Widerstand gegen Masse ziehen.

Was genau meinst du damit?

Die freie Leitung mit einem Widerstand ~10k an GND anschließen

Wenn ich das richtig sehe, sind die beiden GND der Arduinos nicht verbunden.

Beide GNDs MÜSSEN verbunden sein.

Wenn die beden Arduino mit USB am gleichen Recher angeschlossen sind dann sind die Massen über den PC verbunden.

Gleiches gilt wenn die Arduini über 2 USB an 2PC angeschlossen sind und diese geerdet sind. In diesem Fall würde ich aber trotzdem die Massen der beiden Arduini verbinden da leicht Stöhrspannungen vorhanden sein können.

Grüße Uwe

uwefed:
Wenn die beden Arduino mit USB am gleichen Recher angeschlossen sind dann sind die Massen über den PC verbunden.

Da hast du recht, aber der obere Arduino hat kein USB-Kabel.

guntherb:

uwefed:
Wenn die beden Arduino mit USB am gleichen Recher angeschlossen sind dann sind die Massen über den PC verbunden.

Da hast du recht, aber der obere Arduino hat kein USB-Kabel.

Aber auch keine Versorgungsspannung über Netzteilbuchse. Obwohl dort eine 9V block-Batterie herumliegt wird der Funduino nicht von Luft und liebe funktionieren.
Grüße Uwe