Использование модемов
 
Содержание
1. Введение
2. Последовательный асинхронный адаптер
2.1. Аппаратная реализация
2.2. Программирование адаптера
3. Типы модемов
4. Программирование модемов
5. Протоколы обмена данными
5.1. Коррекция ошибок
5.2. Передача файлов
6. Телекоммуникационные программы
7. Использование модемов
7.1. Электронная доска объявлений
7.2. Электронная почта
7.3. Факс-модемные платы
 
1. Введение
В последнее время модемы становятся неотъемлемой частью компьютера. Установив модем на свой компьютер, вы фактически открываете для себя новый мир. Ваш компьютер превращается из обособленного компьютера в звено глобальной сети.
Модем позволит вам, не выходя из дома, получить доступ к базам данных, которые могут быть удалены от вас на многие тысячи километров, разместить сообщение на BBS (электронной доске объявлений) , доступной другим пользователям, скопировать с той же BBS интересующие вас файлы, интегрировать домашний компьютер в сеть вашего офиса, при этом (не считая низкой скорости обмена данными) создается полное ощущение работы в сети офиса. Кроме того, воспользовавшись глобальными сетями (RelCom, FidoNet) можно принимать и посылать электронные письма не только внутри города, но фактически в любой конец земного шара. Глобальные сети дают возможность не только обмениваться почтой, но и участвовать во всевозможных конференциях, получать новости практически по любой интересующей вас тематике.
Существует три основных способа соединения компьютеров для обмена информацией: непосредственная связь, через асинхронный порт; - связь с использованием модема; - связь через локальные сети.
В реферате рассматривается первые два типа соединений - непосредственное и соединение через модем.
2. Последовательный асинхронный адаптер
Практически каждый компьютер оборудован хотя бы одним последовательным асинхронным адаптером. Обычно он представляет собой отдельную плату или же расположен прямо на материнской плате компьютера. Его полное название - RS-232-C. Каждый асинхронный адаптер обычно содержит несколько портов, через которые к компьютеру можно подключать внешние устройства. Каждому такому порту соответствует несколько регистров, через которые программа получает к нему доступ, и определенная линия IRQ (линия запроса прерывания) для сигнализации компьютеру об изменении состояния порта. Каждому порту присваивается логическое имя (COM1, COM2, и т.д.) .
Интерфейс RS-232-C разработан ассоциацией электронной промышленности (EIA) как стандарт для соединения компьютеров и различных последовательных периферийных устройств.
Компьютер IBM PC поддерживает интерфейс RS-232-C не в полной мере; скорее разъем, обозначенный на корпусе компьютера как порт последовательной передачи данных, содержит некоторые из сигналов, входящих в интерфейс RS-232-C и имеющих соответствующие этому стандарту уровни напряжения.
В настоящее время порт последовательной передачи данных используется очень широко. Вот далеко не полный список применений:
- подключение мыши;
- подключение графопостроителей, сканеров, принтеров, дигитайзеров;
- связь двух компьютеров через порты последовательной передачи данных с использованием специального кабеля и таких программ, как FastWire II или Norton Commander;
- подключение модемов для передачи данных по телефонным линиям;
- подключение к сети персональных компьютеров;
Последовательная передача данных означает, что данные передаются по единственной линии. При этом биты байта данных передаются по очереди с использованием одного провода. Для синхронизации группе битов данных обычно предшествует специальный стартовый бит, после группы битов следуют бит проверки на четность и один или два стоповых бита. Иногда бит проверки на четность может отсутствовать.
Использование бита четности, стартовых и стоповых битов определяют формат передачи данных. Очевидно, что передатчик и приемник должны использовать один и тот же формат данных, иначе обмен не возможен.
Другая важная характеристика - скорость передачи данных. Она также должна быть одинаковой для передатчика и приемника.
Скорость передачи данных обычно измеряется в бодах (по фамилии французского изобретателя телеграфного аппарата Emile Baudot - Э. Бодо) . Боды определяют количество передаваемых битов в секунду. При этом учитываются и старт/стопные биты, а также бит четности.
2.1. Аппаратная реализация
Компьютер может быть оснащен одним или двумя портами последовательной передачи данных. Эти порты расположены либо на материнской плате, либо на отдельной плате, вставляемой в слоты расширения материнской платы.
Бывают также платы, содержащие четыре или восемь портов последовательной передачи данных. Их часто используют для подключения нескольких компьютеров или терминалов к одному, центральному компьютеру. Эти платы имеют название "мультипорт".
В основе последовательного порта передачи данных лежит микросхема INTEL 8250 или ее современные аналоги INTEL 16450,16550,16550A. Эта микросхема является универсальным асинхронным приемопередатчиком (UART - Universal Asynchronous Receiver Transmitter) . Микросхема содержит несколько внутренних регистров, доступных через команды ввода/вывода.
Микросхема 8250 содержит регистры передатчика и приемника данных. При передаче байта он записывается в буферный регистр передатчика, откуда затем переписывается в сдвиговый регистр передатчика. Байт "выдвигается" из сдвигового регистра по битам.
Программа имеет доступ только к буферным регистрам, копирование информации в сдвиговые регистры и процесс сдвига выполняется микросхемой UART автоматически.
К внешним устройствам асинхронный последовательный порт подключается через специальный разьем. Существует два стандарта на разьемы интерфейса RS-232-C, это DB-25 и DB-9. Первый имеет 25, а второй 9 выводов.
Разводка разъема DB25
Номер контакта
Назначение контакта (со стороны компьютера)
Вход или выход

1
2
3
4
5
6
7
8
9-19
20
21
22
23-25
Защитное заземление (Frame Ground, FG)
Передаваемые данные (Transmitted Data, TD)
Принимаемые данные (Received Data, RD)
Запрос для передачи (Request to send, RTS)
Сброс для передачи (Clear to Send, CTS)
Готовность данных (Data Set Ready, DSR)
Сигнальное заземление (Signal Ground, SG)
Детектор принимаемого с линии сигнала (Data Carrier Detect, DCD) Не используются
Готовность выходных данных (Data Terminal Ready, DTR) Не используется
Индикатор вызова (Ring Indicator, RI)
Разводка разъема DB9
Выход
Вход
Выход
Вход
Вход
Вход
Выход
Вход

1
2
3
4
5
6
7
8
9
Детектор принимаемого с линии сигнала (Data Carrier Detect, DCD) Принимаемые данные (Received Data, RD)
Передаваемые данные (Transmitted Data, TD)
Готовность выходных данных (Data Terminal Ready, DTR) Сигнальное заземление (Signal Ground, SG)
Готовность данных (Data Set Ready, DSR)
Запрос для передачи (Request to send, RTS)
Сброс для передачи (Clear to Send, CTS)
Индикатор вызова (Ring Indicator, RI)
Вход
Вход
Выход
Выход
Вход
Выход
Вход
Вход

Интерфейс RS-232-C определяет обмен между устройствами двух типов: DTE (Data Terminal Equipment терминальное устройство) и DCE (Data Communication Equipment устройство связи) . В большинстве случаев, но не всегда, компьютер является терминальным устройством. Модемы, принтеры, графопостроители всегда являются устройствами связи.
Сигналы интерфейса RS-232-C
Входы TD и RD используются устройствами DTE и DCE по-разному. Устройство DTE использует вход TD для передачи данных, а вход RD для приема данных. И наоборот, устройство DCE использует вход TD для приема, а вход RD для передачи данных. Поэтому для соединения терминального устройства и устройства связи выводы их разъемов необходимо соединить напрямую.
Подтверждение связи
Рассмотрим процесс подтверждения связи между компьютером и модемом. В начале сеанса связи компьютер должен удостоверится, что модем может произвести вызов (находится в рабочем состоянии) . Затем, после вызова абонента, модем должен сообщить компьютеру, что он произвел соединение с удаленной системой. Подробнее это происходит следующим образом.
Компьютер подает сигнал по линии DTR, чтобы показать модему, что он готов к проведению сеанса связи. В ответ модем подает сигнал по линии DSR. Когда модем произвел соединение с другим, удаленным модемом, он подает сигнал по линии DCD, чтобы сообщить об этом компьютеру.
Если напряжение на линии DTR падает, это сообщает модему, что компьютер не может далее продолжать сеанс связи, например из-за того, что выключено питание компьютера. В этом случае модем прервет связь. Если напряжение на линии DCD падает, это сообщает компьютеру, что модем потерял связь и не может больше продолжать соединение. В этом случае эти сигналы дают ответ на наличие связи между модемом и компьютером.
Существует более высокий уровень, который используется для управления скоростью обмена данными, но он также реализуется аппаратно. Практически управление скоростью обмена данными (управление потоком) необходимо, если производится передача больших объемов данных с высокой скоростью. Когда одна сист