Распиновки RS-232
Что такое интерфейс RS-232?
Изначально интерфейс RS-232 (Recommended Standart 232 или EIA232) был разработан для связи ПК с аналоговым модемом, передающим данные по телефонной линии. Так же известен как COM-порт или последовательный интерфейс (Serial Interface).
По своей природе является асинхронным. Это означает, что приемник начнет принимать данные только после получения определенной последовательности бит. Окончание данных так же обозначается последовательностью бит.
Топология интерфейса изначально "точка-точка", где есть передатчик (оригинально терминал или Data Terminal Equipment - DTE) и приёмник (коммуникационное устройство или Data Communication Equipment - DCE). Но способен работать в многоточечном режиме, где только один узел - передатчик, а все остальные узлы - приёмники.
Это низкоскоростной интерфейс - до 115200 бод (символы в секунду) с максимальным расстоянием передачи данных до 15 м. Его преимущество в том, что он прост в реализации и аппаратной части.
Основные термины
Чтобы обеспечить связь между двумя устройствами, нужно понимать определенные термины, относящиеся к RS-232:
- Управление потоком (Flow Control). Существует три способа управления потоком: аппаратное, программное и без управления.
- Аппаратное управление. В соединяющем передатчик и приёмник кабеле присутствует две дополнительные жилы, именуемые RTS (Request to send - запрос отправлять данные) и CTS (Clear to send - готовность принимать данные). Когда устройство готово к отправке данных, выставляется сигнал RTS, и передача не начнется, пока принимающее оборудование не выставит сигнал CTS.
- Программное управление. Или управление потоком Xon/Xoff. Когда буфер принимающего устройства заполняется, оно посылает символ Xoff (ASCII №19). Освободив буфер, принимающее устройство посылает символ Xon (ASCII №17), и передача данных продолжается. Этот способ замедляет передачу данных, но позволяет использовать в соединительном кабеле всего три провода.
- Контроль четности (Parity). Назначение этой функции - простейшая проверка переданных данных на наличие ошибок. Контроль четности может принимать значения: Чет (Even), Нечет (Odd) или без контроля (None). Во время передачи подсчитывается количество бит данных. И в зависимости от того четное оно или нет выставляется значение бита четности. Бывает встречаются обозначения Mark и Space. Mark - бит четности всегда 1, а Space - всегда 0.
- Стартовые и стоповые биты (Start/Stop bits). Определяет, сколько бит будет использовано для синхронизации приемника с передатчиком. Вначале посылается стартовый бит, который синхронизирует такты приемника с тактом передатчика (каждый бит это уровень сигнала в течении определенного времени - такта). Затем принимаются биты данных, которые завершаются стоповыми битами. Как правило, значения стартовых и стоповых битов могут быть 1, 1.5 или 2.
- Режим передачи данных. Для интерфейса RS-232 возможен полудуплексный режим и реже - дуплексный режим. В полудуплексном режиме передача данных идет попеременно от передатчика к приемнику - от приемника к передатчику и повторяется. В дуплексном режиме передача и прием возможны одновременно.
Применяемые разъемы
Чаще всего для RS-232 интерфейса применяются разъемы DB9 и DB25. Иногда - RJ11, RJ12 или RJ45. В маркировке разъемов DB9 и DB25 иногда добавляют буквы F и M, которыми обозначают DB9F (female) - розетка, DB9М (male) - вилка. Вилка используется на ведущем устройстве (передатчике DTE), а розетка - на приемнике (DCE). Этот факт говорит о том, что сама распиновка разъемов на устройствах несколько отличается.
Передатчик (DTE) | Направление сигнала | Приемник (DCE) | ||||
---|---|---|---|---|---|---|
Обозначение | Расшифровка | Номер контакта | Номер контакта | Обозначение | Расшифровка | |
CD | Carrier Detect | 1 | ← | 1 | CD | Carrier Detect |
RXD | Receive Data | 2 | ← | 3 | RXD | Receive Data |
TXD | Transmit Data | 3 | → | 2 | TXD | Transmit Data |
DTR | Data Terminal Ready | 4 | → | 4 | TXD | Data Terminal Ready |
GND | Signal Ground | 5 | 5 | GND | Signal Ground | |
DSR | Data Set Ready | 6 | ← | 6 | DSR | Data Set Ready |
RTS | Request To Send | 7 | → | 7 | RTS | Request To Send |
CTS | Clear To Send | 8 | ← | 8 | CTS | Clear To Send |
RI | Ring Indicator | 9 | ← | 9 | RI | Ring Indicator |
Передатчик (DTE) | Направление сигнала | Приемник (DCE) | ||||
---|---|---|---|---|---|---|
Обозначение | Расшифровка | Номер контакта | Номер контакта | Обозначение | Расшифровка | |
SHLD | SHIELD (Экран) | 1 | 1 | SHLD | SHIELD (Экран) | |
TXD | Transmit Data | 2 | → | 3 | RXD | Receive Data |
RXD | Receive Data | 3 | ← | 2 | TXD | Transmit Data |
RTS | Request To Send | 4 | → | 4 | RTS | Request To Send |
CTS | Clear To Send | 5 | ← | 5 | CTS | Clear To Send |
DSR | Data Set Ready | 6 | ← | 6 | DSR | Data Set Ready |
GND | Signal Ground | 7 | 7 | GND | Signal Ground | |
CD | Carrier Detect | 8 | ← | 8 | CD | Carrier Detect |
Не исп. | 9-19 | 9-19 | Не исп. | |||
DTR | Data Terminal Ready | 20 | → | 20 | TXD | Data Terminal Ready |
Не исп. | 21 | 21 | Не исп. | |||
RI | Ring Indicator | 22 | ← | 22 | RI | Ring Indicator |
Не исп. | 23-25 | 23-25 | Не исп. |
Какие применяются кабели RS-232
Разъемы на соединительных кабелях выполняют в различных вариациях, в зависимости от того, какие устройства требуется соединить:
- Розетка (DTE) - Вилка (DCE): Эта конфигурация используется чаще всего при подключении к какому-либо устройству с помощью ПК;
- Вилка (DTE) - Вилка (DTE): Эта конфигурация используется для соединения двух передатчиков, работающих попеременно. Например, таким кабелем можно соединить ПК с другим ПК и организовать между ними передачу данных;
- Вилка (DCE) - Вилка (DCE): Используется для соединения двух модемов друг с другом. Например, если нужно соединить два сегмента телефонной сети.
Кабели DTE-DTE и DCE-DCE - нульмодемные. Нульмодемный - это кабель напрямую соединяющий два оконечных устройства связи, таким образом, что между ними не используется модем. Ниже приведены распиновки кабелей. Они справедливы как для DTE-DTE, так и для DCE-DCE.
Рабочие распиновки кабелей RS-232
Ниже приведены рабочие распиновки некоторых кабелей, реально используемых для связи ПК и устройства.
Распиновка кабеля RS-232 для подключения к Spac-810
Кабель с обоих концов имеет разъемы DB9F (розетки).
Заглушка для проверки работы порта
Такая заглушка применяется для проверки физической исправности порта RS-232. Например, в программе Hyper Terminal открывается проверяемый порт, устанавливается такая заглушка. При отключенном ECHO-режиме нажимая кнопки на клавиатуре, получаем их обратно в окне терминала, если порт исправен.