В этой серии статей мы рассматриваем различные типы протоколов последовательной связи, доступные для передачи данных между устройствами. Статьи охватывают несколько наиболее популярных протоколов и стандартов, используемых сегодня, и в конце этой серии мы подведем итоги и сравним преимущества и недостатки каждого из них. Мы надеемся, что эта информация окажется полезной в следующий раз, когда вам нужно будет реализовать шину последовательной связи в вашей конструкции, помогая вам выбрать наиболее подходящий вариант для вашей схемы.
В этой статье мы рассмотрим устаревший стандарт протокола RS-232.
RS-232, что означает Рекомендованный Стандарт 232, является стандартом протокола электронных устройств, используемым для передачи данных между электронными устройствами, созданным в 1960 году. Когда-то RS-232 был наиболее широко используемым форматом передачи данных и в основном реализовывался с использованием стандартного 9-контактного соединения D-sub (DB-9). Этот стандарт до сих пор часто используется сегодня в различных электронных устройствах, включая компьютеры, автоматизацию и медицинские устройства.
Классический кабель DB-9, Источник изображения: https://www.digikey.co.uk/product-detail/en/assmann-wsw-components/AK131-2/AE1379-ND/930165
RS-232 использует положительное напряжение для передачи сигнала низкого логического уровня (0) и отрицательное напряжение для передачи сигнала высокого логического уровня (1).
Примеры сигналов RS-232
Напряжение |
Логическое значение |
---|---|
-18в до -5в |
1 |
-5в до +5в |
(неопределено) |
+5в до +18в |
0 |
Принцип коммуникации RS-232 прост. Устройство-отправитель хранит данные в своем буфере, затем отправляет данные через кабель (или дорожку на печатной плате), и приемник затем хранит эти данные в своем буфере. После этого приемник может прочитать данные из буфера.
Чтобы избежать отправки информации, когда приемник не подключен, используются контакты DTR (Data Transmit Ready) и DSR (Data Set Ready). Когда эти контакты подключены и приемник устанавливает на них правильное напряжение, тогда устройство-отправитель будет знать, что приемник подключен и готов.
Если отправитель передает данные слишком быстро, а приемник не может достаточно быстро считывать данные из своего буфера, буфер переполнится, и данные будут потеряны. Для предотвращения этой ситуации к отправителю были добавлены два дополнительных контакта, а к приемнику - один. Со стороны отправителя контакт обозначается как RTS (Request to send - Запрос на отправку), а со стороны приемника - как CTS (Clear to send - Готовность к приему). Приемник информирует отправителя о том, что его буфер заполнен, понижая напряжение на этом контакте. Это сигнализирует отправителю о необходимости прекратить отправку информации до тех пор, пока приемник не будет готов. Это известно как управление потоком на аппаратном уровне.
Также существуют еще два контакта для телефонных приложений, которые сейчас в основном устарели. Один из них - DCD (Data Carrier Detect - Обнаружение несущей данных), который сообщает модему о приеме аналогового сигнала, а другой - RI (Ring Indicator - Индикатор звонка), который указывает на то, что телефон звонит. На практике они сегодня практически не используются.
Последнее соединение - SG или Signal Ground (Земля сигнала), которое является опорным напряжением земли для общающихся устройств.
Существует два типа устройств для коммуникации RS-232: DTE (оборудование терминальных данных) и DCE (оборудование для передачи данных). Примеры DTE включают в себя компьютер, программируемый логический контроллер (PLC) или другое оборудование, отправляющее команды. Примеры DCE - это модем, камера, принтер и оборудование для общей автоматизации.
Два устройства DTE или два устройства DCE не могут передавать информацию друг другу. Должно присутствовать устройство DTE, которое отправляет команды для установления связи между устройствами, и устройство DCE для выполнения этих команд.
RS-232 также может использоваться для связи между компьютерами с использованием модемов, как показано ниже:
В качестве альтернативы можно использовать соединение через Null Modem, которое исключает необходимость в модеме
Однако, чтобы исключить необходимость в проводах DSR и RTS, пакеты данных со стороны приемника должны быть отправлены, чтобы указать, когда данные могут быть отправлены, и когда это невозможно. Пакеты устанавливаются в XON, чтобы предложить, что данные могут быть отправлены, и XOFF, чтобы указать, что данные отправить нельзя. Это известно как управление потоком на основе программного обеспечения.
Основным недостатком использования RS-232 является то, что его скорость передачи данных относительно медленная по сравнению с другими протоколами последовательной связи. Он может надежно достигать скорости только до 128 кбит/с во многих приложениях. Другой недостаток заключается в том, что максимальная длина кабеля, на которой он может надежно работать, составляет всего 15 метров. Сопротивление проводов и петли напряжения становятся проблемой на больших расстояниях.
Хотя RS-232 сейчас не часто используется в новых устройствах из-за наличия других, более современных протоколов связи, старые устройства часто встречаются. Тем не менее, даже самые современные и высокотехнологичные материнские платы компьютеров обычно имеют заголовок COM-порта, который предоставляет доступ к RS-232, если он вам нужен. На поле все еще есть значительное количество оборудования старше 10 лет, включая такие устройства, как принтеры, оборудование для промышленной автоматизации и т. д., требующие программирования и обслуживания по мере их использования. Для этого RS-232 необходим. К счастью, существует множество преобразователей, таких как RS-232 в USB, что означает, что мы все еще можем легко общаться с этими устройствами.
В этой статье были рассмотрены некоторые особенности стандарта протокола RS-232 и обсуждены его преимущества и детали реализации. В следующей статье мы рассмотрим некоторые альтернативные протоколы последовательной связи. Пропустили что-то? Ознакомьтесь с предыдущими статьями этой серии: Протоколы последовательной связи - Введение и Протоколы последовательной связи - Часть Вторая: UART.
Хотите узнать больше о том, как Altium Designer® может помочь вам в следующем проекте печатной платы? Обратитесь к эксперту в Altium.