So teilen Sie die Masseverbindung zwischen zwei Mikrocontrollern, die an einen PC angeschlossen sind

Ich habe 2 Mikrocontroller-Evaluierungsboards und versuche, eine I2C-Kommunikation zwischen ihnen herzustellen.

Beide Boards sind über USB-Kabel mit demselben PC verbunden. SDA- und SCL-Pins sind ebenfalls verbunden. Jetzt möchte ich wissen, wie ich die Masse anschließe? Ich meine, muss ich die Masse der beiden Platinen verbinden, oder da sie von demselben PC mit Strom versorgt werden, was bedeutet, dass sie denselben Massebezugspunkt haben, bildet eine zusätzliche Masseverbindung zwischen ihnen eine Schleife oder so etwas?

Ich habe sowohl mit als auch ohne GND zwischen zwei Boards überprüft, und es funktioniert, aber ich habe keinen Zugriff auf Scope oder etwas, das ich bestätigen kann, was das Richtige ist:

Geben Sie hier die Bildbeschreibung ein

Masseschleifen. Wie Sie sehen, ist dies beim Prototyping sehr schwer zu vermeiden. Die folgende Antwort ist die schnelle und einfache Route und funktioniert für kurze Entfernungen und Geschwindigkeiten. Wenn Sie die Situation wirklich richtig handhaben möchten, sollten Sie eine Form der digitalen Isolierung zwischen den 2 uCs in Betracht ziehen. Dies hat natürlich seine eigenen Nachteile (kostet mehr und begrenzt die Bandbreite). Viel Glück.

Antworten (1)

Das ist in Ordnung, Sie erhalten nur eine Masseschleife, wenn die Masse nicht auf demselben Potenzial liegt. Sie müssen beide Erdungen verbinden, aber da Sie USB-Verbindungen von demselben PC verwenden, benötigen Sie möglicherweise (siehe unten) keine weitere Verkabelung.

Wie in den Kommentaren erwähnt, besteht die Möglichkeit, dass Rauschen unterschiedliche Massepotentiale und damit falsche/beschädigte Signale verursacht. Am besten wäre es also, den Draht (wie Sie ihn gezeichnet haben) einzuschließen, damit beide Mikrocontroller-Erdungen über eine niederohmige Verbindung verbunden sind.

Gibt es einen Grund, dies abzulehnen? Dem ist nicht mehr viel hinzuzufügen...
Nun, Ihre Antwort ist nur für ideale Verkabelung und DC richtig. Bei hochfrequentem Rauschen kann es an beiden I²C-Terminierungen zu einem beliebig hohen Offset zwischen den beiden Massen kommen.
Stimmt, aber angesichts der Informationen und des Szenarios (und infolgedessen des Verständnisniveaus des OP) ist es vernünftig. Kurze USB-Kabel zu Entwicklungsplatinen und relativ niederfrequente Signale sind so nah am Ideal, wie Sie bekommen werden ...
Der übersehene Punkt ist, dass beide MCUs über USB mit Strom versorgt werden können. In diesem Fall wird durch die Stromaufnahme jeder Einheit ein Rauschen erzeugt. Die Masseverbindung zwischen den MCUs ist meiner Meinung nach unerlässlich, und Sie sollten sich nicht nur auf den USB-Massepfad verlassen.
Ich würde nicht zustimmen, dass es wichtig ist, aber zustimmen, dass es wahrscheinlich eine gute Praxis ist. Bearbeitet, um dies widerzuspiegeln, danke für das Feedback @JackCreasey :)
Danke für die Antwort. Ich verstehe, dass Strom den Pfad mit der niedrigsten Impedanz nimmt. In meinem Fall ist die niedrigste Impedanz in Masse das kurze Überbrückungskabel zwischen zwei Platinen. Ist das in meinem Kontext so?
Ich wünschte, ich hätte ein Oszilloskop und könnte die Menge an Rauschen oder Offset von GND mit und ohne Jumper zwischen den Platinen überprüfen :(
@DEKKER Ja, das ist richtig. Das Hinzufügen des Drahtes bietet eine Verbindung mit niedriger Impedanz, sodass Ihre Massepotentiale gleich sind.