Quali sono le differenze tra USB e RS232?


29

Qualcuno può dirmi perché le persone usano USB o RS232. Sono entrambe porte seriali, giusto? E capisco che l'USB è molto più veloce (soprattutto USB3.0) ma se anche le persone lo volessero, sono sicuro che potrebbero fare un successore di RS232 che è altrettanto veloce.

Quindi, quali sono i vantaggi e gli svantaggi di entrambi?


4
RS232 è stato davvero progettato per essere un'interfaccia per un modem. Questo è abbastanza chiaro con segnali denominati "indicatore di suoneria", ecc. È stato usurpato per fornire una semplice comunicazione bidirezionale a 3 fili (GND, TX, RX) a molti dispositivi. USB è stato progettato come un sistema di interfaccia del dispositivo estensibile con protocollo. Data l'estensione, è molto più complicato e richiede l'implementazione di uno stack software su entrambi i dispositivi e lato host. USB ha anche un sostituto di RS232 chiamato CDC.
Kenny,

Risposte:


20

Quali sono le differenze tra USB e RS232?

Troverai molto di più di quello che posso dirti qui sulle capacità e sugli svantaggi di RS232 iniziando con una ricerca di RS232 e poi "girovagando per il web" e seguendo il thread in cui conduce. Nessuna pagina ti dirà tutto, ma 10 o 20 skimmer rapidi ti mostreranno quanto sia stato utile e quanto sia terribile, tutto allo stesso tempo.

  • USB è inteso come un'interfaccia completamente standardizzata estendibile verso l'alto ad alta velocità tra 1 dispositivo di elaborazione che utilizza una singola porta e N periferiche che utilizzano una porta ciascuna con tutti i controlli effettuati da segnali all'interno del flusso di dati. USB è formidabilmente difficile da fornire interfacce di basso livello. Le interfacce "semplici" sono comuni ma forniscono e nascondono un grado molto grande di complessità correlata.

  • RS232 era inteso come un'interfaccia semi-standardizzata 1: 1 a velocità relativamente bassa tra 1 dispositivo di elaborazione e 1 periferica per porta con il controllo hardware che è parte integrante del funzionamento. RS232 è relativamente facile da fornire interfacce fisiche di basso livello.


RS232

era (e in qualche misura lo è ancora) un modo molto utile e flessibile per collegare i dispositivi informatici alle periferiche.

Tuttavia [tm] [!!!] RS232 era inteso come una breve distanza (pochi metri al massimo) moderatamente bassa velocità (9600 bps usuali, fino a circa 100 kbps in alcuni casi, più veloce in situazioni molto specialistiche), un dispositivo per porta ( eccezioni che dimostrano la regola).

La segnalazione era sbilanciata rispetto alla terra usando circa +/- 12V con una logica su dfata = -V e una logica su controllo = + V. C'erano molti molti molti segnali di controllo sul connettore originale a 25 pin che hanno portato a una gamma completamente vasta di usi e incompatibilità non standard. La versione successiva ha ridotto il connettore a 9 pin con segnali di controllo ancora sufficienti per consentire alle persone di annullare completamente la configurazione.

Far funzionare RS232 tra un dispositivo terminale scelto casualmente e un computer o simili potrebbe essere stato una questione di plug-in e via, o richiedere minuti ore o giorni di gioco e in alcuni casi semplicemente non funzionava.

RS232 NON fornisce energia di per sé, sebbene molte persone lo usassero per alimentare l'apparecchiatura in molti modi diversi, nessuno dei quali standard. L'osservazione delle linee di dati consentirà di identificare i segnali di dati. (Gli occhi veloci e un cervello che lavora con un numero adeguato di kbps potrebbero aiutare).

Il trasferimento dei dati è unidirezionale su una linea di trasmissione e ricezione e utilizza l'inquadramento asincrono.

Il progetto prevede una connessione 1: 1 senza modalità di multidropping in un arrangiamento 1: N senza disposizioni non standard.

USB

fino a USB2 è un sistema a 4 fili fisici con due linee elettriche e due linee dati. Non ci sono linee di controllo fisico. USB3 utilizza più righe e si consiglia di lasciare i dettagli per un'altra domanda e risposta.

La velocità iniziale era di 12 Mbps, aumentata a 480 Mbps con USB2 e modalità "Superspeed" fino a 5 Gbps con USB3.

Il controllo e la configurazione sono tutti eseguiti con software che utilizza segnali di dati che sono una parte completamente inseparabile dell'interfaccia. L'osservazione del flusso di dati con un oscilloscopio non rivelerà l'effettivo componente di dati del sistema.

Il trasferimento dati utilizza 0 / + 5 segnalazioni di tensione differenziale bilanciata.

Il trasferimento dei dati è bidirezionale e la proprietà del "bus" è parte integrante del protocollo.

La connessione avviene quasi sempre su base 1: 1 fisicamente ma su una porta è possibile alloggiare un numero di dispositivi logici. La connessione di N dispositivi fisici a una porta a monte è di solito realizzata mediante un "hub", ma questa è essenzialmente una manifestazione visibile di una disposizione interna 1: N che è parte integrante del progetto.


Ci saranno alcuni problemi interessanti relativi al connettore :-):

USB2 / USB3 Da qui

inserisci qui la descrizione dell'immagine

Da qui il microconnettore USB3 ad alta velocità con compatibilità all'indietro USB 2

inserisci qui la descrizione dell'immagine

USB3.COM - Connettori per cavo USB3 ad alta velocità da qui

inserisci qui la descrizione dell'immagine


Wikipedia RS232

USB contro seriale

Wikipedia USB

Domande frequenti su USB3 Superspeed

Wikipedia USB3

USB.ORG - velocità eccessiva


1
Vale la pena sottolineare che RS232 è di gran lunga superiore a USB quando il jitter e la latenza contano. Non è possibile inviare in modo affidabile un segnale Pulse al secondo a un computer tramite USB. Puoi farlo con RS232
dfc

18

Una porta USB è molto più sofisticata di una porta seriale RS-232.

Fondamentalmente, un RS-232 ha un pin TX e un pin RX in cui un determinato lato trasmette e riceve dati (rispettivamente), e l'altro lato ha gli stessi due incroci, quindi un TX si collega all'altro RX e viceversa (ovviamente).

Esistono altri pin per il controllo, ma non sono necessariamente utilizzati. La loro funzione principale è per il controllo della conservazione del buffer. Il protocollo in RS-232 è abbastanza semplice. Si presume che entrambi i lati siano inizialmente silenziosi (ogni TX è basso), quindi quando un lato vuole trasmettere un byte fa uno o più impulsi alti (i "bit di avvio"), invia ogni bit del byte trasmesso in sequenza e quindi termina con alcuni altri impulsi ("bit di stop"). Facoltativamente, potrebbe esserci un bit di parità. Si presume che entrambe le parti abbiano precedentemente la stessa configurazione per i bit di avvio e arresto e i tempi per l'invio di ciascun bit (la velocità di trasmissione).

Potrebbero esserci più segnalazioni per la correzione degli errori, ma ciò non è necessario. Quindi una porta RS-232 può essere facilmente realizzata usando i pin I / O in qualsiasi microcontrollore, l'unica cosa di cui hai bisogno è la conversione della tensione poiché le linee RS-232 sono a 12V e i microcontrollori normalmente funzionano a 3.3V.

USB utilizza una coppia di linee differenziali, in cui un po 'viene elevato posizionando una differenza di tensione tra di loro in una direzione e basso posizionando la stessa differenza nell'altra direzione. Questo è molto più efficace per smorzare il rumore, quindi è per questo che USB può percorrere distanze più lunghe e avere larghezze di banda molto più elevate. Entrambe le parti trasmettono e ricevono sulla stessa coppia e esiste un protocollo dati complesso per rilevare collisioni, correggere errori, scoprire caratteristiche del dispositivo, ecc., Per non parlare del supporto nelle specifiche per protocolli standard specifici del dispositivo come mouse, tastiere, ecc. In breve, per avere una porta USB è necessario un IC dedicato o un firmware nel microcontrollore che non è assolutamente banale da scrivere, soprattutto se si desidera supportare funzionalità specifiche del dispositivo.


2
Bella risposta, ma probabilmente dovresti rimuovere la parola "coppia" dalla descrizione di RS232 poiché tende ad essere usata maggiormente nel contesto della segnalazione differenziale (ad esempio "coppia intrecciata").
Chris Stratton,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.