Verstehen von "stereotypem" Rauschen auf der MISO-Leitung

Fange gerade mit EE an, also ertrage es mit mir. Ich habe einen Bare-Metal-STM32G474RE, der über SPI (~ 5 MHz) mit einem LSM9DS1 kommuniziert. Ich habe eine Sonde angeschlossen, die die Kommunikation aufzeichnet, und es scheint gut zu funktionieren. Ich sende 0x8F und erhalte 0x68 vom WHO_AM_I-Register zurück:

Umfang Bild 1

CS/CLK/MOSI/MISO. Was ich zu verstehen versuche, ist das "stereotype" Rauschen im Signal. Ich verstehe, dass alle Signale eine Art Grundrauschen haben, aber die MISO-Leitung ist deutlich lauter als die anderen Leitungen (war mir nicht klar, warum?), und das Rauschmuster scheint von Bild zu Bild einem konsistenten Muster zu folgen dh ich kann eine neue Aufnahme auslösen und das Signal sieht fast identisch aus.

Umfang kommentiert

Eingekreist - Ich nehme an, dass dieser Einbruch, der mit der ersten fallenden Taktflanke zusammenfällt, darauf zurückzuführen ist, dass die MOSI-Leitung abfällt und die VDD-Leitung (?) beeinflusst.

Rect - Die MISO-Leitung ist im Vergleich zur MOSI-Leitung super verrauscht. Aber es ist kein weißes Rauschen; Vielmehr ist das Klingeln auf der Leitung jedes Mal fast identisch, wenn ich einen neuen Trigger erfasse. Was könnte solch ein großes, aber sehr beständiges Rauschen verursachen?

Pfeil - Nicht wirklich rauschbezogen, aber ich nehme an, dass dieser allmähliche Spannungsanstieg zurück auf VDD darauf zurückzuführen ist, dass weder Slave noch Master die MISO-Leitung ansteuern und irgendwo ein interner Pull-up-Widerstand + eine Kappe vorhanden ist. Warum sollte dies nur passieren, nachdem CS hoch geht? Ist es diese "Refabrikationszeit", die die SPI-Geschwindigkeit begrenzt?


Bearbeiten: mehr Details

Das Mikro befindet sich auf dem NUCLEO-G474RE-Board ( pdf ), und das LSM9DS1 befindet sich auf dem Breakout-Board von Adafruit ( Link ). Der SPI-Port ist SPI2 mit den Pins PB 12/13/14/15 für CS/CLK/MISO/MOSI. Verbunden mit ~4 "Drähten, die mit einer 1-poligen Dupont-Buchse abgeschlossen sind. Lassen Sie mich wissen, wenn Sie weitere Informationen benötigen!


Edit: Sonde getauscht

Vertauschte Sonden 3 und 4 auf der Leiterplattenseite. Rauschen folgt der Sonde nicht; es erscheint nur in der MISO-Zeile.

Können Sie uns mehr Details über die tatsächliche Verkabelung zeigen (z. B. Art des Kabels, Position von Klimmzügen)? Es kann hilfreich sein, Streukapazitäten und andere Probleme zu identifizieren.
Kanal 3 und 4 auf der Platinenseite tauschen. Prüfen Sie, ob das Rauschen der Sonde folgt.
Sind alle Erdungsclips Ihres Oszilloskops angebracht? Wenn Sie saubere Signale wünschen, müssen Sie alle 4 verbinden.
@ Mattman944 ​​Yup, alle Erdungsclips angebracht
Die Signale sind wahrscheinlich in Ordnung, das Rauschen ist wahrscheinlich meistens ein Instrumentenfehler. Es kann eine Herausforderung sein, saubere Signale auf einem Oszilloskop zu erhalten. Das "Klingeln" kann wirklich da sein oder auch nicht, wenn die Oszilloskopverbindung nicht sehr kurz ist, kann die Oszilloskopverbindung sie verursachen. Kannst du ein Bild von deinen Sondenbefestigungen posten?

Antworten (1)

Messen mit einem Zielfernrohr ist eine Kunst. Es ist nicht so sehr wichtig , ob Ihre Sonden geerdet sind, sondern eher dort, wo sie geerdet sind.

Das Rauschen hängt auch stark vom PCB-Layout und der Treiberstärke ab. Denken Sie, wenn es wie zwei Personen nebeneinander sind: Sie hören den einen besser über den anderen, wenn er lauter schreit.

Zurück zu deinen Signalen:

Kreis : Das stimmt mit dem ersten Datenbit überein. Kann es sein, dass das erste Datenbit dem Slave sagt, dass er lesen oder schreiben soll? Wenn dies der Fall ist, wechselt die MISO-Linie von schwimmend zu angetrieben. Dieses Verhalten wird häufig bei Schnittstellen beobachtet, die eine einzige bidirektionale Datenleitung für Ein- und Ausgabe bieten.

Rect : Ja, Ihr Signal ist verrauscht, aber wie gesagt, das wird oft durch eine schlechte Erdung der Sonde verursacht. Ich würde auch überprüfen, ob Sie alle Chips korrekt entkoppelt haben.

Pfeil : In dem Moment, in dem die Chipauswahl verschwindet, geht Ihr MISO-Ausgang in den Tri-State. In der Tat sehen Sie, wie das schwimmende Netz irgendwo hochgezogen wird. Da es keine Chipauswahl gibt, spielt es keine Rolle, wohin diese Linie schwimmt. Es könnte auch niedrig oder zufällig gehen.

"Stereotyp" : Um zum Kern Ihrer Frage zu kommen: Dass Sie dasselbe "Stereotyp" -Muster sehen, lässt sich leicht durch die Tatsache erklären, dass Rauschen in einer digitalen Leiterplatte nicht zufällig ist, sondern durch das Schalten der Schaltkreise verursacht wird. Die CPU führt jedes Mal den gleichen Programmabschnitt aus und daher erhalten Sie jedes Mal das gleiche Geräuschmuster.
Möglicherweise sehen Sie einen Unterschied, wenn der Treiber von einem Interrupt behandelt wird. In diesem Fall hängt das Rauschmuster davon ab, wo der SPI-Interrupt aufgetreten ist.
Ihr Rauschen kann auch durch das SPI-Slave-Gerät verursacht werden. In diesem Fall ist das Rauschmuster eher immer gleich.

Ha! Ausgezeichnet, direkt ins Geld. Ihr Kommentar hat mich dazu gebracht, darüber nachzudenken, wo das Signal erzeugt wurde und wo ich es gemessen habe. Ich hatte die Sonde mit der Nucleo-Platine verbunden/geerdet, was bedeutet, dass zwischen ihr und der Breakout-Platine ein 4-Zoll-Überbrückungskabel für das Flachbandkabel lag. Am Ende habe ich die Sonde und die Erdungs-Breakout-Seite umgeschaltet und schwupps, die meisten der "stereotypen" Das Rauschen ist verschwunden und was bleibt, ist wahrscheinlich auf die interne Schaltung des SPI-Slave-Geräts zurückzuführen.Und Sie schlagen auch im Kreis: Das erste Bit ist genau das Lese- / Schreibsignal an den Slave.Prost!