Dekodierung serieller Daten mit dem InfiniiVision Oszilloskop: Ein umfassender Leitfaden
Wenn Sie an der Entwicklung oder Fehlersuche eines seriellen Busprotokolls in einem System, wie USB, arbeiten, haben Sie wahrscheinlich viele Waffen in Ihrem Arsenal. Eine gängige erste Wahl ist ein Protokollanalysator. Dieses Tool liest die Informationen der Protokollebene auf dem Bus aus, den es analysieren soll. Ein Beispiel dafür ist der Beagle I2C/SPI-Sniffer von Total Phase. Es zeigt an, was kommuniziert wird, und hilft dabei, fehlerhaft übertragene Bits oder Frames zu identifizieren. Dieses Tool sagt Ihnen jedoch nicht, wie oder warum diese Fehler auftreten, und zeigt Ihnen auch nicht das Bit-Timing.
Ein nächster Schritt könnte ein Logikanalysator mit Dekodierfunktionen sein. Je nach Kanaldichte und erforderlichen Geschwindigkeiten gibt es eine Vielzahl von Optionen in unterschiedlichen Preisklassen. Damit können Sie die Daten, die in der Protokollschicht übertragen werden, und die Bit-Timing-Diagramme mit High/Low-Ansichten anzeigen.
Das ultimative Werkzeug ist das Oszilloskop, das den besten Überblick über Probleme der physikalischen Schicht bietet, die Ihren Bus plagen könnten. Diese Probleme der physikalischen Schicht - wie Rauschen, Jitter, Glitches oder instabile Flanken - können mit einem Protokoll- oder Logikanalysator nicht angezeigt werden.
Wie dekodiert und triggert ein Oszilloskop auf einem seriellen Bus?
Es gibt zwei Möglichkeiten, wie ein Oszilloskop den Busverkehr dekodieren kann. Die erste ist die Verwendung einer Software-Routine. Es wird eine Erfassung durchgeführt und vor der nächsten Erfassung analysiert. Die zweite Möglichkeit ist die Verwendung eines ASIC oder FPGA. Dies ist viel schneller und kann in Echtzeit durchgeführt werden. Beide Methoden haben das gleiche Ziel: die rechtzeitige Erkennung von hohen und niedrigen Pegeln und die Erstellung einer Folge von 1en und 0en bei einer bestimmten Bitrate. Sobald ein Bitstrom durch das Oszilloskop übersetzt wurde (z. B. 10001001010110010), muss das betreffende Protokoll identifiziert und definiert werden. Jedes Protokoll hat eine Syntax, in die die dekodierten Bits eingegeben werden, um sie in für den Benutzer lesbare Informationen zu übersetzen. Die meisten Protokolle verfügen über Optionen, mit denen die Art der Datenübertragung geändert werden kann - dies kann von der Bitrate über die Adressgrösse und die Grösse der Nutzlast bis hin zur Bitreihenfolge reichen. All dies muss dem Oszilloskop zur ordnungsgemässen Umwandlung zugeführt werden. Sobald dies geschehen ist, kann das Oszilloskop die Informationen vom Bus in für den Benutzer lesbare Informationen übersetzen.
Wie man serielle Daten dekodiert - Die Videoserie
- Dekodieren: I2C
- Dekodieren: SPI
- Dekodieren: UART
- Dekodieren: RS232
- Dekodieren: CAN
- Dekodieren: CAN FD
- Dekodieren: LIN
- Dekodieren: Flexray
- Dekodieren: I2S
- Dekodieren: MIL-STD1553
- Dekodieren: ARINC 429
- Dekodieren: USB
- Dekodieren: SENT
Serielle Oszilloskop-Dekodierung - Wie man serielle Daten dekodiert
Lernen Sie, wie man ein Oszilloskop mit serieller Dekodierung und Triggerung verwendet!
