Информация к новости
  • Просмотров: 78443
  • Автор: administrator
  • Дата: 28 февраля 2008
  • 100
28 февраля 2008

Интерфейс RS-232 (COM-порт)

Категория: Полезная информация

RS232 - популярный протокол, применяемый для связи компьютеров с модемами и другими периферийными устройствами. В данном обзоре представлен комплект полезной и справочной информации, представлена распиновка стандартных разъемов, описано применение микросхем MAX232 фирмы MAXIM.
 
Что это такое RS-232
 
RS-232 - интерфейс передачи информации между двумя устройствами на расстоянии до 20 м. Информация передается по проводам с уровнями сигналов, отличающимися от стандартных 5В, для обеспечения большей устойчивости к помехам. Асинхронная передача данных осуществляется с установленной скоростью при синхронизации уровнем сигнала стартового импульса.
 
Назначение RS-232
 
Интерфейс RS-232-C был разработан для простого применения, однозначно определяемого по его названию "Интерфейс между терминальным оборудованием и связным оборудованием с обменом по последовательному двоичному коду". Каждое слово в названии значимое, оно определяет интерфейс между терминалом (DTE) и модемом (DCE) по передаче последовательных данных.
 
Соединители
 
Устройства для связи по последовательному каналу соединяются кабелями с 9-ю или 25-ти контактными разъемами типа D. Обычно они обозначаются DB-9, DB-9, CANNON 9, CANNON 25 и т.д. Разъемы типов розетки и штырей. Каждый вывод обозначен и пронумерован. Расположение выводов представлено ниже.
 
Стандарт
 
Ассоциация электронной промышленности (EIA) развивает стандарты по передаче данных. Стандарты EIA имеют префикс "RS". "RS" означает рекомендуемый стандарт, но сейчас стандарты просто обозначаются как "EIA" стандарты. RS-232 был введен в 1962. Стандарт развивался и в 1969 представлена третья редакция (RS-232C). Четвертая редакция была в 1987 (RS-232D, известная также под EIA-232D). RS-232 идентичен стандартам МККТТ (CCITT) V.24/V.28, X.20bis/X.21bis и ISO IS2110.

Обозначения устройств

 
Обозначения устройств (рис.1)
 
Уровни сигналов
 
В RS-232 используются два уровня сигналов: логические 1 и 0. Логическую 1 иногда обозначают MARK, логический 0 - SPACE . Логической 1 соответствуют отрицательные уровни напряжения, а логическому 0 - положительные. Соответствующие значения напряжений представлены в таблице.
 
Уровни сигналов данных
 
Уровень
Передатчик
Приемник
Логический 0
От +5 В до +15 В
От +3 В до +25 В
Логический 1
от-5 В до -15 В
От -3 В до -25 В
Не определен
От -3 В до +3 В
 
Уровни управляющих сигналов
 

Уровни управляющих сигналов

Сигнал
На выходе устр-ва (Driver)
На входе устр-ва (Terminator)
"Off"
От -5 В до -15 В
от -3 В до -25 В
"On"
От 5 В до 15 В
от 3 В до 25 В
 
Ослабление сигнала

Сигналы после прохождения по кабелю ослаюляются и искажаются. Ослабление растет с увеличением длины кабеля. Этот эффект сильно связан с электрической емкостью кабеля. По стандарту максимальная нагрузочная емкость составляет 2500 пФ. Типичная погонная емкость кабеля составляет 130 пФ, поэтому максимальная длина кабеля ограничена примерно 17 м.

Дополнительная информация в разделе Кабели и Длина проводов.
 
Проблемы с источником питания
Перед соединением двух компьютеров через RS-232, каждый из которых питается от различных источников рекомендуется выравнять напряжения между их сигнальными землями перед подключением.
 
Контакты разъемов
 
DB25 Розетка (мама)
DB25 Розетка (мама)
Контакт Обозн. Направление Описание
1 SHIELD --- Shield Ground - защитная земля, соединяется с корпусом устройства и экраном кабеля
2 TXD --> Transmit Data - Выход передатчика
3 RXD <-- Receive Data - Вход приемника
4 RTS --> Request to Send - выход запроса передачи данных
5 CTS <-- Clear to Send - вход разрешения терминалу передавать данные
6 DSR <-- Data Set Ready - вход сигнала готовности от аппаратуры передачи данных
7 GND --- System Ground - сигнальная (схемная) земля
8 CD <-- Carrier Detect - вход сигнала обнаружения несущей удаленного модема
9-19 N/C - -
20 DTR --> Data Terminal Ready - выход сигнала готовности терминала к обмену данными
21 N/C - -
22 RI <-- Ring Indicator - вход индикатора вызова (звонка)
23-25 N/C - -
 
DB9 Розетка (мама)
DB9 Розетка (мама)
Контакт Обозн. Направление Описание
1 CD <-- Carrier Detect
2 RXD <-- Receive Data
3 TXD --> Transmit Data
4 DTR --> Data Terminal Ready
5 GND --- System Ground
6 DSR <-- Data Set Ready
7 RTS --> Request to Send
8 CTS <-- Clear to Send
9 RI <-- Ring Indicator
 
RJ-45
RJ-45
Контакт Обозн. Направление Описание
1 RI <-- Ring Indicator
2 CD <-- Carrier Detect
3 DTR --> Data Terminal Ready
4 GND --- System Ground
5 RxD <-- Receive Data
6 TxD --> Transmit Data
7 CTS <-- Clear to Send
8 RTS --> Request to Send
Соединения коннектора RJ-45 не стандартизовано. Данный вариант один из возможных.
 
Кабели подключения
 
3-проводный минимальный
3-проводный минимальный
 
Совместимость

Рассмотрим сначала DSR сигнал (конт.6). Этот вход сигнала готовности от аппаратуры передачи данных. В схеме соединений вход замкнут на выход DTR (конт.4). Это означает, что программа не видит сигнала готовности другого устройства, хотя он есть. Аналогично устанавливается сигнал на входе CD (конт.1). Тогда при проверке сигнала DSR для контроля возможности соединения будет установлен выходной сигнал DTR.

Это соответствует 99% коммуникационного программного обеспечения. Под этим подразумевается, что 99% программного обеспечения с этим нуль-модемным кабелем примут проверку сигнала DSR.

Аналогичный трюк применяется для входного сигнала CTS. В оригинале сигнал RTS (конт.7) установливается и затем проверяется CTS (конт.8). Соединение этих контактов приводит к невозможности зависания программ по причине неответа на запрос RTS.
 
7-проводный полный
7-проводный полный
Совместимость

Самый дорогой полный нуль-модемный кабель с семью проводами. Только сигналы индикатора вызова и определения несущей не подключены.

Этот кабель не разрешает использовать предыдущий метод контроля предачи данных. Основная несовместимость перекрестное соединение сигналов RTS и CTS. Первоначально эти сигналы использовались для контроля потоком данных по типу запрос/ответ. При использовании полного нуль-модемного кабеля более нет запросов. Эти сигналы применяются для сообщения другой стороне есть ли возможность соединения.
 
Особенность
Контакты 2 и 3 на 9-ти выводном разъеме D типа противоположны этим же контактам на 25-ти контатном раземе. Поэтому, если соединить контакты 2-2 и 3-3 между разъемами D25 и D9, получится коммуникационный кабель. Контакты сигнальной земли Signal Ground (SG) также должны быть подключены между собой. См. таблицу ниже.
 
5-проводный с управлением потоком
 
5-проводный с управлением потоком
Описание

Можно найти или изготовить много типов кабелей для связи по интерфейсу RS-232. В этом нуль- модемном кабеле используется только 5 проводов: сигналы данных TXD, RXD, сигнал GND и управляющие сигналы RTS CTS для управления потоком.

Обозначение кабелей

Все DTE-DCE кабели прямого соединения, контакты соединяются один к одному. Кабели DTE-DTE и DCE-DCE кросс-кабели.

  1. DTE - DCE называется 'прямой кабель'
  2. DTE - DTE называегся 'нуль-модемный кабель'
  3. DCE - DCE называется 'Tail Circuit Cable'
Описание полного нуль-модемного кабеля

Соединение D9- D9

DB9-1 DB9-2
Receive Data 2 3 Transmit Data
Transmit Data 3 2 Receive Data
Data Terminal Ready 4 6+1 Data Set Ready + Carrier Detect
System Ground 5 5 System Ground
Data Set Ready + Carrier Detect 6+1 4 Data Terminal Ready
Request to Send 7 8 Clear to Send
Clear to Send 8 7 Request to Send
 
Соединение D25-D25
DB25-1 DB25-2
Receive Data 3 2 Transmit Data
Transmit Data 2 3 Receive Data
Data Terminal Ready 20 6+8 Data Set Ready + Carrier Detect
System Ground 7 7 System Ground
Data Set Ready + Carrier Detect 6+8 20 Data Terminal Ready
Request to Send 4 5 Clear to Send
Clear to Send 5 4 Request to Send
 
Соединение D9-D25
DB9 DB25
Receive Data 2 2 Transmit Data
Transmit Data 3 3 Receive Data
Data Terminal Ready 4 6+8 Data Set Ready + Carrier Detect
System Ground 5 7 System Ground
Data Set Ready + Carrier Detect 6+1 20 Data Terminal Ready
Request to Send 7 5 Clear to Send
Clear to Send 8 4 Request to Send
Заглушка тестирования RS-232
Заглушка для эмуляции терминала
Данный соединитель RS-232 может быть использован для проверки последовательного порта кмпьютера. Сигналы данных и управления соединены. В этом случае передаваемые данные сразу возвращаются. Компьютер проверяет собственный поток. Это может быть использовано для проверки функционирования порта RS-232 со стандартным терминальным программным обеспечением.
 
DB9 "мама" - 'DB9
 
DB25 "мама" - 'DB25
 
Расстояния передачи
Длина кабеля

Длина кабеля влияет на максимальную скорость передачи информации. Более длинный кабель имеет большую емкость и соответственно для обеспечения надежной передачи более низкую скорость. Большая емкость приводит к тому, что изменение напряжения одного сигнального провода может передаться на другой смежный сигнальный провод. Максимальным расстоянием обычно считается равным 15 м, но это не установлено в стандарте. Мы рекомендуем использовать на расстояниях до 50 м, но это зависит от типа используемого оборудования и характеристик кабеля.

Максимальная длина кабеля

Скорость [бод] Макс. длина [футы] Макс. длина [метры]
19 200 50 15
9 600 500 150
4 800 1000 300
2 400 3000 900
Скорость передачи данных
Скорость передачи информации по RS-232 измеряется в Бодах. Эта единица названа в честь Эмиля Бодо (Jean Maurice-Emile Baudot) (1845-1903), французского инженера по телеграфии, изобретателя первого печатающего устройства для телеграфа (телепринтера) , представленного на Международной Телеграфной конференции в 1927. Максимальная скорость согласно стандарту 20000 Бод. Однако современное оборудование может работать значительно быстрее. Не имеет значения на сколько быстрое (медленное) ваше соединение - максимальное число чтения за секунду можно установить с помощью используемого программного обеспечения.
 
Контроль четности
Четность в RS-232 (Parity)
При передаче по последовательному каналу контроль четности может быть использован для обнаружения ошибок при передаче данных. При использовании контроля четности посылаются сообщения подсчитывающие число единиц в группе бит данных. В зависимости от результата устанавливается бит четности. Приемное устройство также подсчитывает число единиц и затем сверяет бит четности.
 
Типы четности
Для обеспечения контроля четности компьютер и устройство должны одинаково производить подсчет бита четности. То есть, определиться устанавливать бит при четном (even) или нечетном (odd) числе единиц. При контроле на четность биты данных и бит четности всегда должны содержать четное число единиц. В противоположном случае соответствует для контроля на нечетность.
 
Mark и Space биты четности
Часто в драйверах доступны еще две опции на четность: Mark и Space. Эти опции не влияют на возможность контроля ошибок. Mark означает, что устройство всегда устанавливает бит четности в 1, а Space - всегда в 0.
 
Обнаружение ошибок
Проверка на четность - это простейший способ обнаружения ошибок. Он может определить возникновение ошибок в одном бите, но при наличии ошибок в двух битах уже не заметит ошибок. Также такой контроль не отвечает на вопрос какой бит ошибочный. Другой механизм проверки включает в себя Старт и Стоп биты, циклические проверки на избыточность, которые часто применяются в соединениях Modbus.
 
Пример

В этом примере показана структура передаваемых данных со синхронизирующим тактовым сигналом. В этом примере используется 8 бит данных, бит четности и стоп бит. Такая структура также обозначается 8Е1.

В этом примере показана структура передаваемых данных со синхронизирующим тактовым сигналомПримечание: Тактовый сигнал - для асинхронной передачи это внутренний сигнал
Старт бит
Сигнальная линия может находится в двух состояниях: включена и выключена. Линия в состоянии ожидания всегда включена. Когда устройство или компьютер хотят передать данные, они переводят линию в состояние выключено - это установка Старт бита. Биты сразу после Старт бита являются бюитами данных.
 
Стоп бит
Стоп бит позволяет устройству или компьютеру произвести синхронизацию при возникновении сбоев. Например, помеха на линии скрыла Старт бит. Период между старт и стоп битами постоянен, согласно значению скорости обмена, числу бит данных и бита четности. Стоп бит всегда включен. Если приемник определяет выключенное состояние, когда должен присутствовать стоп бит, фиксируется появление ошибки.
 
Установка Стоп бита

Стоп бит не просто один бит минимального интервала времени в конце каждой передачи данных. На компьютерах обычно он эквивалентен 1 или 2 битам, и это должно учитываться программе драйвера. Хоя, 1 стоп бит наиболее общий, выбор 2 бит в худшем случае немного замедлит передачу сообщения.

(Есть возможность установки значения стоп бита равным 1.5. Это используется при передаче менее 7 битов данных. В этом случае не могут быть переданы символы ASCII, и поэтому значение 1.5 используется редко.)
 
Управление потоком
Управление потоком
Управление потоком представляет управлять передаваемыми данными. Иногда устройство не может обработать принимаемые данные от компьютера или другого устройства. Устройство использует управление потоком для прекращения передачи данных. Могут использоваться аппаратное или программное управление потоком.
 
Аппаратное управление потоком
Аппаратный протокол управления потоком RTS/CTS. Он использует дополнительно два провода в кабеле, а не передачу специальных символов по линиям данных. Поэтому аппаратное управление потоком не замедляет обмен в отличие от протокола Xon-Xoff. При необходимости послать данные компьютер устанавливает сигнал на линии RTS. Если приемник (модем) готов к приему данных, то он отвечает установкой сигнала на линии CTS, и компьютер начинает посылку данных. При неготовности устройства к приему сигнал CTS не устанавливается.
 
Программное управление потоком

Программный протокол управления потоком Xon/Xoff использует два символа: Xon и Xoff. Код ASCII символа Xon - 17, а ASCII код Xoff - 19. Модем имеет маленький буфер, поэтому при его заполнении модем посылает символ Xoff компьютеру для прекращения посылки данных. При появлении возможности приема данных посылается символ Xon и компьютер продолжит пересылку данных. Этот тип управления имеет преимущество в том, что не требует дополнительных линий, т.к. символы передаются по линиям TD/RD. Но на медленных соединениях это может привести к значительному замедлению соединения, т.к. каждый символ требует 10 битов.

Преобразование уровней RS-232 в TTL уровень с помощью MAX232
Предшественники RS-232
Два типа устройств RS-232, 1488 и 1489, используются и сейчас. Это ранние представители этого стандарта. Устройства того времени запитывались мощными источниками питания, поскольку согласно стандарту RS-232 передатчики должны были обеспечивать минимальный +5В сигнал низкого уровня и минимальный -5В сигнал высокого уровня. Эти уровни сигналов обеспечивали устойчивость к помехам после передачи по проводам к приемнику. Но это требувало наличие двуполярного источника питания, и поэтому многие материнские платы включали в себя источник отрицательного напряжения исключительно для питания устройств типа 1488 ии 1489.
 
Техническая документация

Семейство микросхем MAX220-MAX249 линейных приемо-передатчиков предназначены для интерфейсов EIA/TIA-232E и V.28/V.24, особенно в устройствах, где отсутствуют напряжения ±12В.

Альтернативная микросхема ICL232. Это сдвоенный приемо-передатчик соответсвующая спецификациям RS-232C и V.28. Для питания мс требуется только напряжение +5В. Напряжения +10В и -10В преобразуются из 5В-го при помощи двух емкостных преобразователях напряжения.
 
Микросхема MAX232
 

Микросхема MAX232 быстро стала индустриальным стандартом. Многие разработчики используют ее, несмотря на то, что параметры микросхем с однополярным питанием значительно улучшились со временем.

Конфигурация выводов MAX232: представлена на рис.

Конфигурация выводов MAX232

Структурная схема MAX232A

На структурной схеме MAX232A изображены удвоитель напряжения и инвертор напряжения +10В в -10В. Эти напряжения используются для формирования сигналов соответсвующих RS-232. MAX232A позволяет подключить два последовательных порта.

 
Структурная схема MAX232A
 
Источник: www.gaw.ru

Метки к статье: rs232, COM-port, интерфейсы, соединение с ПК

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
<
Olezator

9 декабря 2008 05:57

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
Что-то все мне это напоминает не могу вспомнить что именно...
<
Konstantos

8 января 2009 16:34

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
Спасибище, от души!
<
dmitro

21 июля 2009 21:00

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
А как на счет описания LPT порта? ;)
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.