Arduino nano - Geschaltete Masse

das mit den Durchgangsprüfer könnte funktionieren, wenn die polarität beachtet wird.

letztlich ist am Ausgangspin jeweils ein Transistor nach 5V und einer nach Masse.
Wenn der Ausgang auf LOW gesetzt wird, dann wird der Transistor geschaltet, der den Pin auf Masse zieht.

letztlich ist am Ausgangspin jeweils ein Transistor nach 5V und einer nach Masse.
Wenn der Ausgang auf LOW gesetzt wird, dann wird der Transistor geschaltet, der den Pin auf Masse zieht.

Jetzt doch mittels Transistor?

Also, ich habe gerade noch mal mit meinem Kompagnon gesprochen, der in dem Projekt die Programmierung durchführt.
Er sagt, das er definitiv schon das Low-Signal auf einen der Pins gesetzt hat, ein Interrupt aber nicht ausgelöst wurde.
Erst als wir die Leitung händisch auf Ground des Arduinos gelegt haben, wurde dieser ausgelöst.
Für mich ganz klar der Hinweis, das ein auf Low gesetzter Digital-Pin nicht das gleiche Potential hat, wie der Ground-Pin des Arduino Nano.

VG
Thomas

Nun ja, dann irrt dein Kompagnon - entweder hat er einen Programmierfehler drin oder einen Anschlussfehler in der Elektronik. Oder beides, solls auch geben.

grandmastermp:

letztlich ist am Ausgangspin jeweils ein Transistor nach 5V und einer nach Masse.
Wenn der Ausgang auf LOW gesetzt wird, dann wird der Transistor geschaltet, der den Pin auf Masse zieht.

Jetzt doch mittels Transistor?

Nein, das war mißverständlich ausgedrückt. Die beschriebenen Transistoren sind IM Arduino drin. (Letztlich ist ein Prozessor auch nix anderes als ein paar Millionen Transistoren...)

grandmastermp:
Für mich ganz klar der Hinweis, das ein auf Low gesetzter Digital-Pin nicht das gleiche Potential hat, wie der Ground-Pin des Arduino Nano.

Wenn das nun dein fester Glaube ist, dann mußt du halt ein Relais verbauen.

Alle anderen kriegen es ohne hin.

Alle anderen kriegen es ohne hin.

Ich werde diese Aussage mal weiterleiten. :wink:

VG
Thomas

das mit den Durchgangsprüfer könnte funktionieren, wenn die polarität beachtet wird.

Stimmt. Das mit der Polarität hatte ich nicht beachtet.
Ist vielleicht Instinkt, dass ich immer das Schwarze an Masse halte, wenn ich die Möglichkeit habe. ( Toi, toi, toi )
Auch ist richtig, dass man Widerstandsmessungen nur an spannungslosen Objekten vornehmen darf, sich jedenfalls über nichts wundern sollte ...

Ein paar milli-Ohm sind es schon zwischen LOW und GND.
Und so ein Pin hat auch nicht nur eine Grenze als Strom-Quelle, sondern auch als Strom-Senke (Drain).

sth77:
Meine Bedenken bzw. eher eine Ahnung gehen in die Richtung, dass ich die Prüfspannung "versehentlich ungebremst" in einen Ausgang jage und diesen in die ewigen Jagdgründe befördere.

Da stimme ich dir zu, der durch die Prüfspannung oder das zu schaltende Gerät verursachte Strom muss sich schon in Grenzen halten. Insbesondere auch bei falscher Polarität hat oder > 5V bei Pin = HIGH (oder INPUT).

Und wie wäre das ganze nun zu testen, ohne den Nano in die ewigen Jagdgründe zu befördern?

VG
Thomas

z.B. mit einem Multimeter?

oder eine LED mit Vorwiderstand (220R bis 1K) von 5V auf deinen Pin.

Oder verrate doch mal, was das "andere Gerät" ist, und wie ggf der Sketch aussieht, vielleicht kann dir ja jemand helfen.

michael_x:

das mit den Durchgangsprüfer könnte funktionieren, wenn die polarität beachtet wird.

Stimmt. Das mit der Polarität hatte ich nicht beachtet.
Ist vielleicht Instinkt, dass ich immer das Schwarze an Masse halte, wenn ich die Möglichkeit habe. ( Toi, toi, toi )
Auch ist richtig, dass man Widerstandsmessungen nur an spannungslosen Objekten vornehmen darf, sich jedenfalls über nichts wundern sollte ...

Ein paar milli-Ohm sind es schon zwischen LOW und GND.
Und so ein Pin hat auch nicht nur eine Grenze als Strom-Quelle, sondern auch als Strom-Senke (Drain).

sth77:
Meine Bedenken bzw. eher eine Ahnung gehen in die Richtung, dass ich die Prüfspannung "versehentlich ungebremst" in einen Ausgang jage und diesen in die ewigen Jagdgründe befördere.

Da stimme ich dir zu, der durch die Prüfspannung oder das zu schaltende Gerät verursachte Strom muss sich schon in Grenzen halten. Insbesondere auch bei falscher Polarität hat oder > 5V bei Pin = HIGH (oder INPUT).

Achtung:
Für diejenigen für die ein Multimeter immer nur ein Digitalmultimeter war. Vorher benutzte man Drehspulmeßgeräte (solche mit Zeiger) und dort war die Spannung bei Durchgangsprüfung verkehrt gepolt (minus war auf dem roten Kabel und umgekehrt).

Ich würde (instinktiv) keine Durchgangsprüfung an einem eingeschaltenen Gerät machen da ich 1. Falschmessungen reskiere durch Spannungen am zu messenden Teil und 2. das Multimeter durch zu hohe Spannungen am zu messenden Teil kaputtmachen kann.
Der Meßstrom am Durchgangstest-Bereich ist begrenzt aber nicht 100% garantiert, daß er dennoch nichts kaputtmachen könnte.

Grüße Uwe

Ok, ich lasse die Katze aus dem Sack. :wink: Ansonsten kommen wir hier nicht weiter.

Es handelt sich hierbei um die Kommunikation zwischen einem uns sehr bekannten 8-Bit-Rechner und dem PC.
Der PC soll sozusagen Aufgaben von ihm bekommen und diese umsetzen.
Wir wollen dazu die 8 Datenleitungen (PB0-PB7) des Userports nutzen + PA2 und Flag2 als Handshakeleitungen.
Flag 2 benötigt für die Auslösung des Interrupts eine sogenannte negative Flanke.
D.h., das diese Leitung auf Ground (Low) gezogen werden muß. Diese Leitung hatten wir zuerst
mit einem Digitalpin des Arduino verbunden und diesen auf Low-Signal gesetzt. Das hat leider nichts bewirkt.
Erst als wir die Leitung auf Ground des Arduinos gelegt hatten, wurde der Impuls ausgelöst.
Das ist das ganze Geheimnis.

VG
Thomas

grandmastermp:
...negative Flanke.....und diesen auf Low-Signal gesetzt.

Eine Flanke braucht den wechsel.
Also zuerst HIGH, dann LOW.
Habt ihr das so gemacht?

guntherb:
Eine Flanke braucht den wechsel.
Also zuerst HIGH, dann LOW.
Habt ihr das so gemacht?

Eine interessante Frage. Werde ich prüfen.
Vielen Dank!

grandmastermp:
Flag 2 benötigt für die Auslösung des Interrupts eine sogenannte negative Flanke.
D.h., das diese Leitung auf Ground (Low) gezogen werden muß. Diese Leitung hatten wir zuerst
mit einem Digitalpin des Arduino verbunden und diesen auf Low-Signal gesetzt. Das hat leider nichts bewirkt.
Erst als wir die Leitung auf Ground des Arduinos gelegt hatten, wurde der Impuls ausgelöst.
Das ist das ganze Geheimnis.
VG
Thomas

Wenn ein Arduino Ausgang nicht reicht ein Signal auf Masse zu bringen, dann sage ich, es ist etwas faul. Du hast irgendwas das das Siganl HIGH hält, wie zB einen relativ niederohmigen widerstand auf HIGH oder das Pin ins mit einem Ausgang verbunden der auf HIGH geschaltet ist.
Das ist ein Umstand der potentiel den Arduno und/oder die Pinbeschaltung auf der PC Seite zerstören kann.

Grüße Uwe

uwefed:
Wenn ein Arduino Ausgang nicht reicht ein Signal auf Masse zu bringen, dann sage ich, es ist etwas faul. Du hast irgendwas das das Siganl HIGH hält, wie zB einen relativ niederohmigen widerstand auf HIGH oder das Pin ins mit einem Ausgang verbunden der auf HIGH geschaltet ist.
Das ist ein Umstand der potentiel den Arduno und/oder die Pinbeschaltung auf der PC Seite zerstören kann.

Grüße Uwe

Was sollte das denn sein? Die Digital-Pins des Arduino sind direkt mit dem Userport-Stecker verbunden.
Ich wüßte nicht, was man da falsch machen kann.

VG
Thomas

Was sollte das denn sein? Die Digital-Pins des Arduino sind direkt mit dem Userport-Stecker verbunden.
Ich wüßte nicht, was man da falsch machen kann.

Ich weiß es nicht aber wenn Du sagst daß ein LOW auf eine Aduino-Pin nicht reicht um auf einen angeschlossenen Eingang ein LOW signal zu lesen ist etwas faul. Ich kanns mir nicht erklären. Miß eimal die Spannung die der Arduino-Pin verbunden mit dem Flag 2 hat, wenn er LOW ist, wenn er HIGH ist und welche Spannung der Flag 2 hat wenn nichts angeschlossen ist.
Grüße Uwe

So, kurze Rückmeldung.
Tatsächlich funktioniert das auch ohne Transistor.
Die Leitung muß dafür kontinuierlich auf High gehalten werden und um den Impuls auszulösen,
dann kurz auf Low. Das ist alles.
Vielen Dank noch mal an alle, die uns vom Gegenteil überzeugen wollten und hiermit auch haben. :slight_smile:

VG
Thomas