Широко используемый последовательный интерфейс синхронной и асинхронной передачи данных, определяемый стандартом EIA RS-232-C и рекомендациями V.24 CCITT. Изначально создавался для связи компьютера с терминалом. В настоящее время используется в самых различных применениях.
Интерфейс RS-232-C соединяет два устройства. Линия передачи первого устройства соединяется с линией приема второго и наоборот (полный дуплекс) Для управления соединенными устройствами используется программное подтверждение (введение в поток передаваемых данных соответствующих управляющих символов). Возможна организация аппаратного подтверждения путем организации дополнительных RS-232 линий для обеспечения функций определения статуса и управления.
Стандарт
EIA RS-232-C, CCITT V.24
Скорость передачи
115 Кбит/с (максимум)
Расстояние передачи
15 м (максимум)
Характер сигнала
несимметричный по напряжению
Количество драйверов
1
Количество приемников
1
Схема соединения
полный дуплекс, от точки к точке
Порядок обмена по интерфейсу RS-232C
Наименование
Направление
Описание
Контакт
(25-контактный разъем)
Контакт
(9-контактный разъем)
DCD
IN
Carrier Detect (Определение несущей)
8
1
RXD
IN
Receive Data (Принимаемые данные)
3
2
TXD
OUT
Transmit Data (Передаваемые данные)
2
3
DTR
OUT
Data Terminal Ready (Готовность терминала)
20
4
GND
—
System Ground (Корпус системы)
7
5
DSR
IN
Data Set Ready (Готовность данных)
6
6
RTS
OUT
Request to Send (Запрос на отправку)
4
7
CTS
IN
Clear to Send (Готовность приема)
5
8
RI
IN
Ring Indicator (Индикатор)
22
9
Интерфейс RS-232C предназначен для подключения к компьютеру стандартных внешних устройств (принтера, сканера, модема, мыши и др.), а также для связи компьютеров между собой. Основными преимуществами использования RS-232C по сравнению с Centronics являются возможность передачи на значительно большие расстояния и гораздо более простой соединительный кабель. В то же время работать с ним несколько сложнее. Данные в RS-232C передаются в последовательном коде побайтно. Каждый байт обрамляется стартовым и стоповыми битами. Данные могут передаваться как в одну, так и в другую сторону (дуплексный режим).
Компьютер имеет 25-контактный (DB25P) или 9-контактный (DB9P) разъем для подключения RS-232C. Назначение контактов разъема приведено в таблице.
Назначение сигналов следующее:
FG — защитное заземление (экран).
TxD — данные, передаваемые компьютером в последовательном коде (логика отрицательная).
RxD — данные, принимаемые компьютером в последовательном коде (логика отрицательная).
RTS — сигнал запроса передачи. Активен во все время передачи.
CTS — сигнал сброса (очистки) для передачи. Активен во все время передачи. Говорит о готовности приемника.
DSR — готовность данных. Используется для задания режима модема.
SG — сигнальное заземление, нулевой провод.
DCD — обнаружение несущей данных (детектирование принимаемого сигнала).
DTR — готовность выходных данных.
RI — индикатор вызова. Говорит о приеме модемом сигнала вызова по телефонной сети.
Наиболее часто используются 3-х- или 4-хпроводная связь (для двунапрвленной передачи). Схема соединения для 4-хпроводной линии связи показана на рисунке 1.1.
Для 2-хпроводной линии связи в случае лишь передачи из компьютера во внешнее устройство используются сигналы SG и TxD. Все 10 сигналов интерфейса задействуются лишь при соединении компьютера с модемом.
Формат передаваемых данных показан на рисунке 1.2. Собственно данные (5, 6, 7 или 8 бит) соопровождаются стартовым битом, битом четности и одним или двумя стоповыми битами. Получив стартовый бит, приемник выбирает из линии биты данных через определннные интервалы времени. Очень важно, чтобы тактовые частоты приемника и передатчика были одинаковыми, допустимое расхождение — не более 10%). Скорость передачи по RS-232C может выбираться из ряда: 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 бит/с.
Рис.1.1 Схема 4-проводной линии связи для RS-232C
Все сигналы RS-232C передаются специально выбранными уровнями, обеспечивающими высокую помехоустойчивость связи (рис.1.3.). Отметим, что данные передаются в инверсном коде (лоической единице соответствует низкий уровень, логическому нулю — высокий уровень).
Для подключения произвольного УС к компьютеру через RS-232C обычно используют 3-х- или 4-хпроводную линию связи (см. рис. 1.1), но можно задействовать и другие сигналы интерфейса.
Рис.1.2 Формат данных RS-232C
Обмен по RS-232C осуществляется с помощью обращений по специально выделенным для этого портам COM1 (адреса 3F8h…3FFh, прерывание IRQ4), COM2 (адреса 2F8h…2FFh, прерывание IRQ3), COM3 (адреса 3F8h…3EFh, прерывание IRQ10), COM4 (адреса 2E8h…2EFh, прерывание IRQ11). Форматы обращений по этим адресам можно найти в многочисленных описаниях микросхем контроллеров последовательного обмена UART (Universal Asynchronous Receiver/Transmitter), например, i8250, КР580ВВ51.
Рис.1.3 Уровни сигналов RS-232C на передающем и принимающем концах линии связи.