Общий вид разъемов DB-25 и DB-9, используемых в интерфейсе RS-232 приведен на рис. 3.3.
3.1.4. Соединения по интерфейсу RS-232. Кабели
Входы TxD и RxD используются устройствами DTE и DCE по-разному. Устройство DTE использует линию TxD для передачи данных, а линию RxD — для приема данных. И наоборот, устройство DCE использует линию TxD для приема, а линию RxD — для передачи данных. Поэтому для соединения терминального устройства и устройства передачи данных их необходимо соединить напрямую, как показано на рис. 3.4 (для DB-25)
Для корректной работы коммуникационных приложений требуется программное либо аппаратное управление потоком данных. Для реализации аппаратного управления потоком данных требуется большее количество управляющих
Рис. 3.4. Подключение DTE к DCE
Рис 3 5 Подключение DTE к DTE
чиний порта Наиболее правильным будет использование кабеля-удлинителя всех линии интерфейса RS-232
Если понадобится соединить два персональных компьютера друг с другом, то необходимо произвести перекрестное соединение линий TxD и RxD, как показа но на рис 3 5. Однако часто этого недостаточно, т к. для устройств DTE и DCE функции, выполняемые линиями DSR, DTR, DCD, CTS и RTS, асимметричны.
Устройство DTE подает сигнал DTR и ожидает получения сигналов DSR и DCD В свою очередь, DCE подает сигналы DSR, DCD и ожидает получения сигнала DTR Таким образом, если вы соедините вместе два устройства DTE, то они не смогут "договориться" друг с другом и осуществить процесс подтверждения связи.
Для решения этих проблем при соединении двух устройств типа DTE (DCE) используется специальный кабель, часто называемый нуль-модемом Имея два разъема и многожильный кабель, нуль-модем можно изготовить самостоятельно, руководствуясь схемами, приведенными на рис 3 6
Рис 3.6 Нуль-модем
Рис. 3.7. Модемный кабель DB25-DB25
Рассмотрим механическое соединение портов RS-232. Для подключения модема к компьютеру, как правило, используют модемный кабель, представляющий собой удлинитель основных цепей RS-232. Внешний вид такого кабеля показан на рис. 3.7.
Из-за использования в компьютерах и модемах разъемов различных типов (рис. 3.8) часто приходится пользоваться переходниками. Схема одного из них приведена на рис. 3.9, а внешний вид модемного кабеля DB-9 — DB-25 показан на рис. 3.10.
Рис.3.8. Внешний вид разъемов, используемых в компьютерах и модемах
Рис. 3.9. Переходник DB-25 — DB-9
Следует отметить, что DTE (компьютер) всегда оборудуется разъемом-вилкой (на инженерном жаргоне — "папа", male), a DCE (модем) — разъемом-розеткой ("мама", female). Переходник для мыти DB-9 — DB-25, выполненный в неразборном компактном корпусе, для подключения модемов с 9-контактным разъемом лучше не использовать. Дело в том, что в этом переходнике линии CTS (5-8), DSR (6-6), DCD (8-1) и RI (22-9) не используются. В результате чего нельзя будет использовать аппаратное управление потоком, что может привести к неполной совместимости с имеющимся программным обеспечением.
Рис. ЗЛО. Модемный кабель DB-9 — DB-25
Рис 3 11 Переходник Mini DIN-8 — DB-25 для компьютеров Macintosh
Для подключения модема к компьютерам Macintosh необходим переходник для подключения к используемому в этих компьютерах разъему Mini DIN-8 Схема одного из возможных вариантов такого переходника приведена на рис 3 11, а внешний вид соответствующего кабеля — на рис 312
Рис 3 12 Модемныи кабель Mini DIN-8 — DB-25 для компьютеров Macintosh
3.1.5. Управление потоком
Различают программный и аппаратный методы управления потоком. При программном методе включение и выключение передачи данных производится путем посылки по встречной информационной линии специальных служебных символов. При аппаратном управлении потоком для приостановки и последующего возобновления передачи используют специальные линии интерфейса
Большинство компьютеров и модемов поддерживают управление потоком. Однако если один из них не поддерживает такой механизм, то необходимо обеспечить работу последовательного порта на скорости, не большей, чем действительная скорость соединения. В данном случае управление потоком должно быть запрещено на соответствующих портах модема и компьютера.
Модем может принимать и передавать данные через последовательный порт на скорости, отличающейся от скорости канального порта модема. Это возможно благодаря наличию двух буферов, по одному на каждое направление потока данных. Если последовательный порт работает на скорости, большей, чем скорость канального порта модема, его буфер заполняется полностью. При использовании механизма управления потоком потерь данных при заполнении буфера не происходит.
Программный метод управления потоком.
Программный метод управления потоком, или метод XON/XOFF, заключается в следующем:
> передача знака XOFF (код DC3h ASCII) по линии TxD (103) для сообщения местному или удаленному DTE о необходимости прерывания потока информации;
> передача знака XON (код DClh ASCII) по линии RxD (104) для сообщения местному или удаленному DTE о необходимости восстановления потока информации.
Знак XOFF представляет собой символ CTRL-S ("S), a XON — символ CTRL-Q (*0). Если управление потоком разрешено по канальному интерфейсу модема и по последовательному порту, и знак XOFF принят по каналу связи, то этот знак заставляет модем приостановить передачу данных из своего буфера в канал связи.
Буфер модема заполняется в процессе передачи данных местным DTE через последовательный порт. Если буфер заполнился, модем передает знак XOFF через последовательной порт, который сообщает местному DTE-устройству о необходимости прервать передачу. Местное DTE возобновляет передачу данных только в том случае, если оно принимает знак XON от модема или по каналу связи от удаленной системы (через местный модем). Это заставляет местное DTE-устройство возобновить передачу данных.
Рассмотренный метод называется программным методом управления потоком (.Software Hand-Shaking). Его преимущество заключается в возможности
Рис. 3.13. Простейшая схема соединения для программного управления потоком
применения соединения между компьютером и модемом (DTE—DCE) с использованием небольшого числа проводников. Одна из возможных схем такого соединения приведена на рис. 3.13.
Модемы также поддерживают так называемое "аппаратное управление потоком", реализованное только средствами последовательного порта.
Аппаратное управление потоком.
DCE могут использовать два типа аппаратного управления потоком: однонаправленный и двунаправленный. Однонаправленное аппаратное управление потоком аналогично методу управления XON/XOFF. Вместо передачи знака XOFF местному терминалу модем переводит в низкое логическое состояние уровень сигнала на линии CTS (106) ("Готов к передаче").
При изменении уровня сигнала CTS, DTE прекращает передачу данных по последовательному порту. Передача данных возобновляется, когда DCE переводит уровень сигнала на линии CTS в высокое логическое состояние, что для последовательного порта аналогично передаче сигнала XON.
DTE может запретить DCE передавать данные в его сторону. Это возможно только тогда, когда действует двунаправленное аппаратное управление потоком. При таком управлении потоком линия CTS используется точно также, как и при однонаправленном управлении. Кроме того, DCE останавливает передачу данных к DTE, если последний переводит в низкое состояние уровень сигнала на линии RTS (105) ("Запрос передачи"). DCE возобновляет передачу при переходе уровеня сигнала на линии RTS в высокое логическое состояние. Для большинства применений эффективен однонаправленный метод управления потоком.
Аппаратное управление потоком носит также название Hardware Hand-Shaking. Для соединения аппаратуры DTE и DCE с использованием аппаратного протокола управления потоком рекомендуется использовать полную схему соединения, приведенную на рис. 3.14.
Рис. 3.14. Схема соединения DCE и DTE при аппаратном управлении потоком
3.1.6. Адресация последовательных портов
При установке внутреннего модема со своим портом или дополнительного контроллера последовательного порта, должны быть установлены адреса ввода/вывода, по которым операционная система с помощью BIOS будет обмениваться данными с адаптером этого порта. У каждого порта должен быть свой уникальный адрес. Только при этом условии можно гарантировать нормальную работу порта и подключенного к нему модема.
При запуске PC операционная система проверяет адреса портов посредством опроса платы адаптера и заносит их в специальную область оперативной памяти компьютера. Затем ОС анализирует содержимое этой области и присваивает каждому порту имя в порядке расположения его адреса в памяти.
Система опрашивает порты в определенном порядке: 3F8h, 2F8h', 3E8h и 2E8h. При нахождении порта определенного типа ОС включает его адрес в специально зарезервированную для этого область памяти BIOS. Это небольшая область памяти, начинающаяся с абсолютного адреса 0400h. Первые восемь байт в этой области предназначены для хранения адресов четырех последовательных портов. Следующие восемь байт хранят информацию об адресах параллельных портов. При загрузке ОС считывает эти адреса из области данных BIOS и присваивает каждому из них имя в соответствии с порядком их расположения в этой области памяти: от СОМ1 до COM4 для последовательных портов, и от LPT1 до LPT4.