Perbedaan antara UART dan RS-232?


80

Sebagian besar waktu RS-232 dan UART datang bersama dalam teori komunikasi serial. Apakah keduanya sama? Dari bacaan saya, saya menyimpulkan UART adalah bentuk perangkat keras dari protokol RS-232. Apakah saya benar?


1
Jawaban di atas telah memberikan wawasan tentang perbedaan. Tetapi saya ingin menambahkan jawaban-jawaban itu dengan menambahkan tautan dari National Instruments yang membahas topik ini dengan sangat baik. Berikut ini tautannya: RS-232, RS-422, RS-485 Konsep Umum Komunikasi Serial
devangmotwani

Jawaban:


80

Tidak, UART dan RS-232 tidak sama.

UART bertanggung jawab untuk mengirim dan menerima urutan bit. Pada output dari UART bit-bit ini biasanya diwakili oleh tegangan level logika. Bit-bit ini dapat menjadi RS-232, RS-422, RS-485, atau mungkin beberapa spesifikasi kepemilikan.

RS-232 menentukan level tegangan . Perhatikan bahwa beberapa level tegangan ini negatif, dan mereka juga dapat mencapai ± 15V. Ayunan tegangan yang lebih besar membuat RS-232 lebih tahan terhadap gangguan (meskipun hanya sampai batas tertentu).

UART mikrokontroler tidak dapat menghasilkan level voltase seperti itu dengan sendirinya. Ini dilakukan dengan bantuan komponen tambahan: driver garis RS-232. Contoh klasik dari driver garis RS-232 adalah MAX232 . Jika Anda membaca lembar data, Anda akan melihat bahwa IC ini memiliki pompa pengisian daya, yang menghasilkan ± 10V dari + 5V.

masukkan deskripsi gambar di sini ( sumber )


4
Definisi RS-232 yang saya baca tidak berbicara tentang urutan bit atau waktu sama sekali. Sebenarnya saya belum pernah menemukan standar resmi yang menggambarkan protokol start-stop NRZ asynchronous.
Wouter van Ooijen

1
RS-232 tidak menentukan urutan bit.
slebetman

Rupanya, pengembangan format karakter UART sangat didominasi oleh perusahaan telepon Bell sehingga tidak ada varian yang muncul. Akibatnya, format bit mulai / data / paritas / stop tidak pernah menjadi subjek standar independen. Penggunaan di seluruh industri sangat seragam sehingga tidak diperlukan definisi "resmi". Ini tidak berlaku untuk tautan fisik, dan karenanya RS-232 dikembangkan.
WhatRoughBeast

3
Format karakter UART mendahului modem Bell, itu dalam perangkat Teletype (delapan bit dengan paritas) di ASCII, dan Baudot sebelum itu.
Whit3rd

34

UART (atau USART) - Universal (Synchronous) Asynchronous Receiver / Transmitter

Ini pada dasarnya adalah antarmuka komunikasi serial. Bagian "universal" berarti dapat dikonfigurasi untuk mendukung berbagai protokol serial spesifik. Istilah ini generik, dan tidak mewakili standar tertentu. Setidaknya itu berarti bahwa ia memiliki garis TXdan RX, yang mengirim aliran data serial dan menerima aliran data serial.

RS-232 - Suatu standar yang mendefinisikan sinyal di antara dua perangkat, menentukan nama sinyal, tujuannya, level tegangan, konektor dan pinout.

Ini adalah standar antarmuka khusus yang memungkinkan interoperabilitas peralatan. Meskipun dua perangkat keras mungkin memiliki UART, Anda tidak tahu bahwa mereka akan terhubung tanpa kerusakan, atau berkomunikasi dengan baik kecuali Anda tahu mereka memiliki pinout dan standar voltase yang sama, atau termasuk konverter atau kabel kabel khusus untuk interkoneksi dua perangkat khusus ini. Untuk menghindari perlunya konverter atau kabel khusus, pabrikan dapat memilih untuk mengikuti standar RS-232. Anda tahu, kemudian, bahwa kabel RS-232 standar akan menghubungkan keduanya.

Namun, baik UART, maupun standar RS-232 tidak menentukan apa yang dikirim pada jalur TXdan RX. Secara umum, ketika orang menggunakan RS-232, mereka menggunakan pengodean NRZ 8 bit sederhana dengan satu bit mulai dan bit satu stop. Sebagian besar peralatan saat ini diproduksi menggunakan penyandian ini, tetapi tidak ada persyaratan untuk melakukannya. Anda dapat menemukan peralatan yang lebih tua yang mencakup bit paritas, atau menggunakan 7 atau 9 bit. UART dapat dikonfigurasi untuk mendukung berbagai protokol ini pada jalurnya TXdan RX.

UART biasanya tidak berinteraksi langsung dengan RS-232. Anda perlu mengonversi output UART ke standar +/- 12V yang diperlukan RS-232. Antarmuka RS-232 yang lengkap biasanya melibatkan UART dan konverter level RS-232. Selanjutnya, standar RS-232 mencakup definisi beberapa pin pensinyalan lain di samping TXdan RX, yang mungkin perlu Anda gunakan tergantung pada peralatan yang harus Anda hubungkan. Ini juga perlu dikonversi tingkat, dan UART Anda mungkin, atau mungkin tidak, mendukung sinyal-sinyal ini. Jika tidak, Anda harus mengontrolnya dengan perangkat lunak / firmware Anda secara langsung.

Jadi, sementara UART dapat membantu Anda mengimplementasikan antarmuka RS-232, itu bukan antarmuka RS-232 itu sendiri.


Kabel RS-232 standar? Tidak ada hal seperti itu. Di tas peralatan saya, saya membawa sekitar selusin adapter untuk RS-232. RS-232 menentukan konektor DB-25, tetapi saya telah melihat DD-9, RJ45, din8 dan konektor lainnya, dan selain menghubungkan modem ke pc, saya tidak pernah dapat menggunakan kabel COTS untuk proyek rs232. Untungnya 90% dari waktu yang akan dilakukan pasangan adaptor atau kabel kustom, mereka mudah dibuat.
Hildred

Sebagai catatan: Saya pikir 'S' di USART adalah singkatan dari "Synchronous", bukan "Serial". Lihat di sini . USART adalah "estensions" atas chip UARTs lama yang memungkinkan mode komunikasi sinkron.
Lorenzo Donati

14

UART berfungsi untuk mengubah data paralel dari jalur bus PC ke data serial untuk transmisi melalui driver saluran ke perangkat RS-232, RS-422 , dan RS-485 . Pin jam dari chip UART diumpankan oleh sumber jam yang dapat diprogram. Kecepatan jam ditentukan oleh konfigurasi baud rate yang akan digunakan perangkat. Kecepatan clock adalah 16 X baud rate. Menempatkan probe osiloskop pada pin clock dari chip UART dan menentukan frekuensi, kemudian membaginya dengan 16 adalah salah satu cara untuk menentukan baud rate yang tidak diketahui.


5
+1 untuk "mengubah data paralel menjadi data serial", tidak ada jawaban lain di sini yang menyebutkan ini.
TisteAndii
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.