Apa perbedaan antara USB dan RS232?

29

Dapatkah seseorang memberi tahu saya mengapa orang menggunakan USB atau RS232. Keduanya adalah port serial, kan? Dan saya mengerti bahwa USB jauh lebih cepat (terutama USB3.0) tetapi jika orang menginginkannya juga, saya yakin mereka dapat membuat penerus RS232 yang sama cepatnya.

Jadi, apa kelebihan dan kekurangan keduanya?

Spongebob
sumber
4
RS232 benar-benar dirancang untuk menjadi antarmuka ke modem. Itu cukup jelas dengan sinyal yang disebut 'indikator dering', dll. Sudah digunakan untuk menyediakan komunikasi dua arah sederhana 3 kawat (GND, TX, RX) ke banyak perangkat. USB dirancang sebagai protokol sistem antarmuka perangkat yang dapat diperpanjang. Mengingat dapat diperpanjang itu jauh lebih rumit dan membutuhkan tumpukan perangkat lunak pada kedua perangkat dan sisi host untuk diimplementasikan. USB bahkan memiliki pengganti RS232 yang disebut CDC.
kenny

Jawaban:

20

Apa perbedaan antara USB dan RS232?

Anda akan menemukan lebih banyak daripada yang dapat saya katakan di sini tentang kemampuan dan kerugian RS232 dengan memulai dengan mencari RS232 dan kemudian 'berkeliaran di web' dan mengikuti utas kemana arahnya. Tidak ada satu halaman akan memberi tahu Anda segalanya kecuali 10 atau 20 skims cepat akan menunjukkan kepada Anda betapa bermanfaatnya itu dan betapa mengerikannya, semuanya pada saat yang sama.

  • USB dimaksudkan sebagai antarmuka berkecepatan tinggi yang dapat diperluas ke atas dengan kecepatan tinggi antara 1 perangkat komputasi menggunakan satu port dan periferal N menggunakan satu port yang masing-masing dengan semua kontrol dilakukan oleh sinyal dalam aliran data. USB memang sulit untuk menyediakan antarmuka tingkat rendah. "Sederhana" antarmuka umum tetapi ini menyediakan dan menyembunyikan tingkat kompleksitas terkait yang sangat besar.

  • RS232 dimaksudkan sebagai antarmuka semi-standar kecepatan 1: 1 yang relatif rendah antara 1 perangkat komputasi dan 1 perangkat per port dengan kontrol perangkat keras menjadi bagian integral dari operasi. RS232 relatif mudah untuk menyediakan antarmuka fisik tingkat rendah.


RS232

adalah (dan sampai batas tertentu masih) cara fleksibel kuat yang sangat berguna untuk menghubungkan perangkat komputasi ke perangkat.

Namun [tm] [!!!] RS232 dimaksudkan sebagai jarak pendek (beberapa meter maks) dengan kecepatan sedang (biasanya 9600 bps, hingga sekitar 100 kbps dalam beberapa kasus, lebih cepat dalam situasi yang sangat khusus), satu perangkat per port ( pengecualian membuktikan aturan).

Signaling tidak seimbang relatif terhadap ground menggunakan sekitar +/- 12V dengan logika satu pada dfata = -V dan logika satu pada kontrol = + V. Ada banyak banyak sinyal kontrol pada konektor 25 pin asli yang menyebabkan sejumlah besar kegunaan dan ketidakcocokan yang tidak standar. Versi yang lebih baru mengurangi konektor menjadi 9 pin dengan sinyal kontrol yang masih cukup untuk memungkinkan orang untuk benar-benar merusak konfigurasi.

Membuat RS232 bekerja antara perangkat terminal yang dipilih secara acak dan komputer atau MUNGKIN serupa telah menjadi masalah plug-in dan pergi, atau perlu menit berjam-jam atau berhari-hari bermain dan dalam beberapa kasus hanya tidak akan berhasil.

RS232 TIDAK menyediakan daya per se meskipun banyak orang menggunakannya untuk peralatan listrik dengan berbagai cara, tidak ada yang standar. Pengamatan garis data akan memungkinkan sinyal data diidentifikasi. (Mata cepat dan otak yang bekerja pada jumlah kbps yang sesuai akan membantu).

Transfer data searah pada jalur pengiriman dan penerimaan dan menggunakan pembingkaian asinkron.

Desain adalah untuk koneksi 1: 1 tanpa cara multidropping dalam pengaturan 1: N tanpa pengaturan non-standar.

USB

hingga USB2 adalah sistem 4 kabel fisik dengan dua saluran listrik dan dua saluran data. Tidak ada garis kontrol fisik. USB3 menggunakan lebih banyak baris dan detail sebaiknya dibiarkan untuk pertanyaan dan jawaban lain.

Kecepatan awal adalah 12 Mbps, meningkat menjadi 480 Mbps dengan USB2 dan mode "Superspeed" 5 Gbps dengan USB3.

Kontrol dan konfigurasi semua dilakukan dengan perangkat lunak menggunakan sinyal data yang merupakan bagian yang sama sekali tidak terpisahkan dari antarmuka. Mengamati aliran data dengan osiloskop tidak akan mengungkapkan komponen data aktual dari sistem.

Transfer data menggunakan pensinyalan tegangan diferensial seimbang 0 / + 5.

Transfer data bersifat dua arah dengan kepemilikan "bus" menjadi bagian integral dari protokol.

Koneksi hampir selalu berbasis fisik 1: 1 tetapi sejumlah perangkat logis dapat ditampung di satu port. Koneksi perangkat fisik N ke satu port hulu biasanya dilakukan dengan menggunakan "hub" tetapi ini pada dasarnya adalah manifestasi yang terlihat dari pengaturan 1: N internal yang merupakan bagian integral dari desain.


Akan ada beberapa masalah konektor yang menarik :-):

USB2 / USB3 Dari sini

masukkan deskripsi gambar di sini

USB3 superspeed microconnector dengan USB 2 kompatibel dari sini

masukkan deskripsi gambar di sini

USB3.COM - konektor kabel kecepatan super USB3 dari sini

masukkan deskripsi gambar di sini


Wikipedia RS232

USB versus serial

USB Wikipedia

USB3 Superspeed FAQ

Wikipedia USB3

USB.ORG - kecepatan super

Russell McMahon
sumber
1
Perlu menunjukkan bahwa RS232 jauh lebih unggul daripada USB ketika masalah jitter dan latensi. Anda tidak dapat secara andal memasukkan sinyal Pulse Per Second ke komputer melalui USB. Anda dapat melakukannya dengan RS232
dfc
18

Port USB jauh lebih canggih daripada port serial RS-232.

Pada dasarnya, RS-232 memiliki pin TX dan pin RX di mana sisi yang diberikan mentransmisikan dan menerima data (masing-masing), dan sisi lain memiliki dua yang sama menyeberang, sehingga satu TX terhubung ke RX lain dan sebaliknya (jelas).

Ada pin lain untuk kontrol, tetapi mereka belum tentu digunakan. Fungsi utamanya adalah untuk kontrol retensi buffer. Protokol di RS-232 cukup sederhana. Diasumsikan bahwa kedua belah pihak awalnya diam (masing-masing TX rendah), dan kemudian ketika suatu pihak ingin mengirimkan byte itu melakukan satu atau lebih pulsa tinggi ("bit mulai"), mengirimkan setiap bit dari byte yang ditransmisikan secara berurutan dan kemudian diakhiri dengan beberapa pulsa lagi ("stop bits"). Secara opsional, mungkin ada sedikit paritas. Diasumsikan bahwa kedua belah pihak sebelumnya memiliki konfigurasi yang sama untuk bit mulai dan berhenti dan waktu untuk mengirim setiap bit (baud rate).

Mungkin ada lebih banyak pensinyalan untuk koreksi kesalahan, tetapi itu tidak diperlukan. Jadi port RS-232 dapat dengan mudah dibuat menggunakan pin I / O di setiap mikrokontroler, satu-satunya hal yang Anda perlukan adalah konversi voltase karena jalur RS-232 adalah 12V dan mikrokontroler biasanya bekerja pada 3.3V.

USB menggunakan sepasang garis diferensial, di mana bit dibuat tinggi dengan menempatkan perbedaan tegangan di antara mereka dalam satu arah, dan rendah dengan menempatkan perbedaan yang sama di arah lain. Ini jauh lebih efektif untuk meredam kebisingan, jadi itu sebabnya USB bisa menempuh jarak yang lebih jauh dan memiliki bandwidth yang jauh lebih tinggi. Kedua belah pihak mengirim dan menerima melalui pasangan yang sama, dan ada protokol data yang kompleks untuk mendeteksi tabrakan, melakukan koreksi kesalahan, menemukan karakteristik perangkat, dll., Belum lagi dukungan dalam spesifikasi untuk protokol standar spesifik perangkat seperti mouse, keyboard, Singkatnya, untuk memiliki port USB Anda memerlukan IC khusus untuk itu atau firmware di mikrokontroler Anda yang sama sekali tidak sepele untuk ditulis, terutama jika Anda ingin mendukung kemampuan perangkat tertentu.

fceconel
sumber
2
Jawaban yang bagus, tetapi Anda mungkin harus menghapus kata 'pair' dari deskripsi RS232 karena itu cenderung lebih banyak digunakan dalam konteks pensinyalan diferensial (yaitu, "twisted pair").
Chris Stratton