Seriell, RS232, Modbus, UART und TCP

Ich möchte das klar wissen, Seriell ist Protokoll, richtig? Was ist dann der Modbus? Ist es unter Serien. Und was sind RS232 und RS485? Was ist UART und seriell und UART gleich? Was ist mit TCP? TCP und seriell sind die Kommunikationsmethode der Protokolle. Rechts?

Antworten (3)

Seriell ist ein allgemeines Kommunikationsschema, bei dem Informationen (in diesem Fall Binärdaten) sequentiell in Stücken übertragen werden. Es gibt eine Reihe von kompatiblen und inkompatiblen Computerbussen und -protokollen, die eine serielle Kommunikation verwenden.

Im Zusammenhang mit Ihrer Frage wird seriell sowohl als Kommunikationsschema als auch als Beschreibung des physischen Busses verwendet. Das heißt, die Chips an beiden Enden des Kabels/Drahts verwenden eine sequentielle Folge von Bits, um Daten auszutauschen. Üblicherweise wird „seriell“ verwendet, um auf eine Reihe von Bussen zu verweisen, die allgemein auf PC/AT und kompatiblen Geräten über den „COM“-Anschluss verfügbar waren, im Allgemeinen sind RS232 und RS485 enthalten.

Verwirrenderweise könnten sowohl die physische Schnittstelle als auch das Protokoll ein serielles Kommunikationsschema verwenden oder sie könnten unterschiedlich sein (z. B. serielle Daten über eine parallele Verbindung, die jeweils ein Byte statt ein Bit verschiebt), daher ist es wichtig, zwischen den beiden zu unterscheiden. Ein allgemeines Bild dieses Unterschieds ist im OSI-Modell gegeben, in dem jede Schicht das von ihnen gewählte Kommunikationsschema unabhängig voneinander verwenden kann

Geben Sie hier die Bildbeschreibung ein

RS232 ist ein Standard, der ein physikalisches Kommunikationsschema unter Verwendung einer seriellen Verbindung definiert. Ähnlich verhält es sich mit RS485 . Beide Standards schreiben den physischen seriellen Bus (mit Spannungspegeln und Timing-Details) hinter dem Kommunikationsschema vor (das könnte ModBus oder ein proprietäres Druckerperipherie-Kommunikationsprotokoll sein).

Modbus ist ein Standard, der nur ein gemeinsames High-Level-Protokoll (OSI 7) definiert, aber die physikalischen Details undefiniert lässt ( Implementierung ). Offiziell kann es über TCP/IP oder über einen seriellen Bus implementiert werden, Modbus ist ein High-Level-Protokoll und TCP/IP (zum Beispiel) kann sogar über Brieftauben implementiert werden

crasic zeigte die OSI-Schichten. Denken Sie an eine Autobahn, dann haben Sie auf dieser Autobahn verschiedene Größen und Arten von Fahrzeugen. Diese Fahrzeuge können verschiedene Dinge transportieren. Menschen natürlich, aber auch Pakete oder Kisten. Sie haben vielleicht einen Lastwagen auf dieser Autobahn mit einer Holzkiste, in dieser Kiste sind einige/viele Kartons, diese Kartons können andere Kartons enthalten, und in diesen Kartons können Sie viele gleiche oder unterschiedliche Arten von Produkten haben.

Sie haben irgendwie eine physikalische Schicht, elektrisch, durch Licht durch die Luft (Laser usw.), drahtlos durch die Luft (WLAN, Bluetooth usw.), kabelgebunden, optisch durch Glasfaser. Das ist die Autobahn, genau wie Zement vs. Asphalt vs. Stahlgitter über einer Brücke. Dann haben Sie verschiedene Arten von Rahmen, Autos und Lastwagen, Hondas vs. Fords, Mac vs. Kenworth. Pakete, Sicherungsschicht. Dann könnten Sie in einem Fahrzeug eine Kiste haben, zum Beispiel die IP-Schicht, oder arp oder netbeui oder novell usw. Dann könnten Sie in der IP-Kartonschachtel eine andere Kiste haben, das TCP-Paket. Innerhalb des TCP-Pakets befinden sich möglicherweise einige andere Daten, Audio- oder Webseitendaten oder FTP-Daten usw.

Sie beginnen mit den Daten, die Sie verschieben möchten, dann fügen Sie der Zwiebel um sie herum Schichten hinzu, während Sie von den oberen Osi-Schichten nach unten zur physischen Schicht arbeiten, Sie bewegen diese Zwiebel hinüber und beginnen dann, die Schichten wieder abzuziehen. Bei den Daten selbst ist das ziemlich wörtlich, Sie haben die Nutzlast auf der höchsten Ebene, mit der Sie arbeiten, dann fügen Sie buchstäblich eine Kopfzeile vorne und manchmal eine Fußzeile am Ende hinzu. Und jetzt befinden Sie sich auf einer anderen Ebene, jetzt wird diese ganze Ebene N mit einem Layer n-1-Wrapper zur Nutzlast für Ebene n-2, wo Sie je nach Auswahl oder Regeln für diese Ebene oder dieses Protokoll eine Kopf- und möglicherweise eine Fußzeile hinzufügen . Schließlich erhält die physische Schicht diesen Blob von Bytes, der ihre Nutzlast ist, sie fügt einen Mac-Header und eine Prüfsumme und vielleicht anderes Zeug hinzu, und das ist der Sattelschlepper, der die Autobahn hinunterfährt.

uart ist eine ganz andere Sache, es geht zurück auf 7- oder 8-Bit-Zeichen (Ascii, ebcdic usw.) mit einem kleinen Startmuster (ein Bit) und einem Stoppmuster und vielleicht einem Paritätsbit.

RS-232 und RS-422 sind nur Spannungsstandards, die den elektrischen Pegel für eine Eins und eine Null definieren. Sie sind mit seriellen uart-Daten verbunden, aber nicht zu verwechseln, wenn Sie RS-232 sagen, sollten Sie besser diesen Spannungspegel meinen, der dies trägt Daten, stecken Sie RS-232 in die uart-Pins eines Mikrocontrollers und Sie werden wahrscheinlich den Mikrocontroller braten, weil er diese Spannungspegel nicht verarbeiten kann.

Sie können ip und tcp und andere Protokolle über uart/seriell übertragen, ppp- und slip-Protokolle zum Beispiel erneut nachschlagen, Sie nehmen das tcp-Paket, wickeln es mit einem ip-Header ein und wickeln es dann mit dem ein, was für die Sicherungsschicht ppp erforderlich ist und Slip haben dafür ihre eigenen Wrapper, dann ist die physische Verbindung uart zu uart, dann packen Sie die Zwiebel aus. Damals in den Einwahltagen funktionierte das so. Aber normalerweise geht tcp/ip über Ethernet oder WLAN, und uart, wenn Sie es immer noch finden (äußerst nützlich für eingebettete und immer noch dort und in Serverräumen zu finden) und tcp/ip sind normalerweise in keiner Weise verbunden. sie sind zwei getrennte Dinge aus getrennten Generationen, die für verschiedene Dinge bestimmt sind.

udp ist das andere grundlegende IP-Protokoll. Wird oft als tcp/ip oder udp/ip geschrieben. tcp, während Pakete als Stream betrachtet werden, wie uart. Sie behandeln die Daten so, als wären sie ein serieller Stream und kein Paket, ein sehr häufiger Fehler. das tcp-protokoll ermöglicht es den leuten zwischen punkt a und punkt b, das paket in stücke zu schneiden und sie separat zu liefern, da es stream- und nicht paketbasiert ist. es wird nur in den unteren Schichten als Pakete geliefert, weil es so funktioniert. UDP wird als streng paketbasiert betrachtet, entweder wird es angezeigt oder es wird nicht angezeigt, aber wenn es angezeigt wird, wird jedes Paket in seiner Gesamtheit so angezeigt, wie es die Quelle verlassen hat. es gibt viele andere protokolle, die auf tcp und udp aufsetzen, wie bereits von anderen erwähnt, http, ftp, smtp usw. die dinge, die ihre interneterfahrung ausmachen.

vorher oder parallel dazu gab es viele andere Protokolle, die nicht IP-basiert waren, wie ipx/spx, die neuartigen Low-Layer-Protokolle, denken Sie an Doom und Heretic und Hexen, bevor Quake herauskam, brauchten Sie ein IPX-Netzwerk (obwohl spätere Leute Wrapping ipx mit udp oder tcp, um über das Internet zu spielen und nicht nur auf einem LAN).

Suchen Sie auf der uart-Seite nach Begriffen wie kermit und xmodem und ymodem und zmodem, um Daten zu verschieben, normalerweise für Textschnittstellen. bbs (Bulletin-Board-Systeme) und andere solche Dinge. wird immer noch sehr häufig für eingebettete Systeme verwendet, um Mikrocontroller zu debuggen, in Serverräumen, in denen es keinen Sinn macht, Monitore und Tastaturen zu haben, stattdessen haben Sie Terminalserver, mit denen Sie per Telnet oder SSH in die uarts der Server gelangen können, und die Server sind so konfiguriert, dass sie ihre verwenden uarts für ein Terminal und nicht für die Grafikkarte/den Monitor.

RS232 kann oder könnte ein Signal weiter und besser übertragen als nur die TTL-Pegel. rs422 kann sogar noch weiter gehen. usw.

"Seriell" (manchmal auch "UART" genannt) ist die logische Signalisierung: aktiv niedrig, 1 Startbit, 5 bis 9 Datenbits, gerade, ungerade oder keine Parität, 1, 1,5 oder 2 Stoppbits, niedrig halten, um a zu erzeugen brechen.

Modbus ist ein Protokoll, das auf einer seriellen Verbindung läuft. Es definiert Nachrichten und deren Inhalt.

RS-232 und RS-485 (und manchmal „TTL“ für 0,8 V/2,0 + V-Pegel) sind physische Implementierungen einer seriellen Verbindung. Sie definieren Spannungspegel für „hoch“ und „niedrig“ und wie Geräte miteinander verbunden werden.

Ein UART ist das Peripheriegerät, das eine serielle Verbindung implementiert, die dem eingangs beschriebenen Schema folgt. Es gibt ein digitales Signal aus, normalerweise mit CMOS- oder TTL-Pegeln, und ein weiterer Chip kann verwendet werden, um es auf RS-232- oder RS-485-Pegel zu bringen.

Seriell und TCP sind also Methoden zur Kommunikation der Protokolle?
Protokolle verwenden die Signalisierung von Serial und TCP/IP, ja. Protokolle höherer Ebene sitzen immer über Protokollen niedrigerer Ebene.
Was ist Respektierung von High-Level- und Low-Level-Protokollen?
Wie lang ist ein Stück Schnur?
Ich möchte eine allgemeine Vorstellung.
Die allgemeine Idee ist, dass sie völlig unterschiedlich sind. Recherchieren Sie zu „HTTP“, „TCP“, „IP“, „IEEE 802.3“ und „Manchester-Kodierung“ und Sie werden Ihre Frage besser verstehen.