Разница между UART и RS-232?

80

В большинстве случаев RS-232 и UART объединяются в теории последовательной связи. Они оба одинаковые? Из моих чтений я пришел к выводу, что UART является аппаратной формой протокола RS-232. Я прав?

Толлин Хосе
источник
1
Приведенные выше ответы дали представление о различиях. Но я хотел бы добавить к этим ответам, добавив ссылку от National Instruments, которая обсуждает эту тему достаточно подробно. Ниже приведена ссылка: RS-232, RS-422, RS-485 Общие понятия о последовательной связи
devangmotwani

Ответы:

80

Нет, UART и RS-232 не совпадают.

UART отвечает за отправку и получение последовательности битов. На выходе UART эти биты обычно представлены напряжениями логического уровня. Этими битами могут стать RS-232, RS-422, RS-485 или, возможно, некоторые проприетарные спецификации.

RS-232 определяет уровни напряжения . Обратите внимание, что некоторые из этих уровней напряжения являются отрицательными, и они также могут достигать ± 15 В. Больший перепад напряжения делает RS-232 более устойчивым к помехам (хотя и в некоторой степени).

Микроконтроллер UART не может самостоятельно генерировать такие уровни напряжения. Это делается с помощью дополнительного компонента: линейного драйвера RS-232. Классическим примером линейного драйвера RS-232 является MAX232 . Если вы посмотрите таблицу, вы заметите, что эта микросхема имеет зарядный насос, который генерирует ± 10 В от + 5 В.

введите описание изображения здесь ( источник )

Ник Алексеев
источник
4
Определение RS-232, которое я прочитал, вообще не говорит о последовательности битов или синхронизации. Фактически, я никогда не находил официальный стандарт, который описывает асинхронный протокол NRZ start-stop.
Воутер ван Оойен
1
RS-232 не определяет последовательность битов.
Slebetman
Судя по всему, в разработке формата символов UART телефонная компания Bell доминировала так, что вариантов не возникало. В результате формат бита начала / данных / четности / стопа никогда не был предметом независимого стандарта. Использование в отрасли было настолько единообразным, что не требовалось никакого «официального» определения. Это не относится к физическим каналам связи, поэтому был разработан RS-232.
WhatRoughBeast
3
Форматы символов UART предшествовали модемам Белла, это было в аппаратных средствах Teletype (восемь бит с четностью) в ASCII и до Baudot до этого.
Whit3rd
34

UART (или USART) - универсальный (синхронный) асинхронный приемник / передатчик

По сути, это интерфейс последовательной связи. «Универсальная» часть означает, что она может быть настроена для поддержки множества различных последовательных протоколов. Термин является общим и не представляет конкретный стандарт. Как минимум это означает , что он имеет , TXи в RXлинию, которая передает поток последовательных данных и принимает последовательный поток данных.

RS-232 - стандарт, определяющий сигналы между двумя устройствами, определяющий названия сигналов, их назначение, уровни напряжения, разъемы и выводы.

Это особый стандарт интерфейса, который обеспечивает совместимость оборудования. В то время как два устройства могут иметь UART, вы не знаете, что они будут подключаться без повреждений или правильно обмениваться данными, если вы не знаете, что они имеют одинаковые стандарты распиновки и напряжения, или не используете преобразователь или специальный проводной кабель, специфичный для соединения эти два конкретных устройства. Чтобы избежать необходимости в специальных преобразователях или кабелях, производители могут предпочесть следовать стандарту RS-232. Итак, вы знаете, что стандартный кабель RS-232 соединит их.

Тем не менее, ни UART, ни стандарт RS-232 определить , что отправляется на TXи RXлиний. Обычно, когда люди используют RS-232, они используют простое 8-битное кодирование NRZ с одним стартовым битом и одним стоповым битом. Большинство производимого сегодня оборудования использует эту кодировку, но это не требуется. Вы можете найти старое оборудование, которое содержит биты четности или использует 7 или 9 бит. UART может быть настроен для поддержки этих различных протоколов на своем TXи RXлиниях.

UART обычно не взаимодействуют напрямую с RS-232. Вам нужно будет преобразовать выход UART в стандарт +/- 12 В, который требуется для RS-232. Полный интерфейс RS-232 обычно включает в себя как UART, так и преобразователь уровня RS-232. Кроме того, стандарт RS-232 включает в себя определение нескольких других сигнальных выводов, кроме того, TXи RX, которое вам может понадобиться в зависимости от оборудования, к которому необходимо подключиться. Они также должны быть преобразованы по уровню, и ваш UART может поддерживать или не поддерживать эти сигналы. Если этого не произойдет, вам придется напрямую управлять ими с помощью вашего программного обеспечения / прошивки.

Таким образом, хотя UART может помочь вам реализовать интерфейс RS-232, это не сам интерфейс RS-232.

Адам Дэвис
источник
Стандартный кабель RS-232? Там нет такой вещи. В моей сумке с оборудованием у меня около десятка адаптеров для RS-232. RS-232 определяет разъем DB-25, но я видел DD-9, RJ45, din8 и другие разъемы, и кроме подключения модема к ПК, мне никогда не удавалось использовать кабель COTS для любого проекта rs232. К счастью, в 90% случаев можно использовать пару адаптеров или специальный кабель, их легко изготовить.
hildred
Просто для справки: я думаю, что «S» в USART означает «Синхронный», а не «Последовательный». Смотрите здесь . USART - это «расширение» старых чипов UART, которые также допускают синхронные режимы связи.
Лоренцо Донати
14

Функция UART позволяет преобразовывать параллельные данные из шинных линий ПК в последовательные данные для передачи через линейные драйверы на устройства RS-232, RS-422 и RS-485 . Вывод тактовой частоты микросхемы UART подается программируемым источником тактовой частоты. Тактовая частота определяется конфигурацией скорости передачи, которую будет использовать устройство. Тактовая частота равна 16-кратной скорости. Поместив датчик осциллографа на тактовый вывод микросхемы UART и определив частоту, затем разделив на 16, можно определить неизвестную скорость передачи данных.

Дон Слэйд
источник
5
+1 для «преобразования параллельных данных в последовательные данные», другой ответ здесь не упоминает об этом.
TisteAndii