Модем

Содержание

стр.

1.Введение                        1

2.Последовательный асинхронный адаптер                        1

2.1.Аппаратная реализация                        2

2.2.Программирование адаптера                        5

3.Типы модемов                        8

4.Программирование модемов                        9

5.Протоколы обмена данными                        15

5.1.Коррекция ошибок                        15

5.2.Передача файлов                        17

6.Телекоммуникационные программы                        20

7.Использование модемов                        20

7.1.Электронная доска объявлений                        20

7.2.Электронная почта                        23

7.3.Факс-модемные платы                        24

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 падает, это сообщает компьютеру, что модем потерял связь и не может больше продолжать соединение. В этом случае эти сигналы дают ответ на наличие связи между модемом и компьютером.

Существует более высокий уровень, который используется для управления скоростью обмена данными, но он также реализуется аппаратно. Практически управление скоростью обмена данными (уп­равление потоком) необходимо, если производится передача боль­ших обьемов данных с высокой скоростью. Когда одна система пы­тается передать данные с большей скоростью, чем они могут быть обработаны принимающей системой, результатом может стать потеря части передаваемых данных. Чтобы предотвратить передачу больше­го числа данных, чем то, которое может быть обработано, исполь­зуют управление связью, называемое "управление потоком".

Стандарт RS-232-C определяет возможность управления пото­ком только для полудуплексного соединения, при котором в каждый момент времени данные могут передаваться только в одну сторону.

Фактически этот механизм используется и для дуплексных соединений, когда данные передаются по линии связи одновременно в двух направлениях.

Управление потоком

В полудуплексных соединениях устройство DTE подает сигнал RTS, когда оно желает передать данные. DCE отвечает сигналом по линии CTS, когда оно готово, и DTE начинает передачу данных. До тех пор, пока оба сигнала RTS и CTS не примут активное состоя­ние, только DCE может передавать данные.

При дуплексных соединениях сигналы RTS/CTS имеют значения противоположные тем, которые они имели для полудуплексных сое­динений.

Когда DTE может принять данные, он подает сигнал по линии RTS. Если при этом DCE готово для принятия данных, оно возвра­щает сигнал CTS. Если напряжение на линиях RTS и CTS падает, то это сообщает передающей системе, что получающая система не го­това для приема данных.

Однако на практике не все так просто. Соединить компьютер и модем не составляет труда, т.к. интерфейс RS-232-C как раз для этого и предназначен. Но если вы захотите связать вместе два компьютера при помощи такого же кабеля, который вы исполь­зовали для связи модема и компьютера, то у вас возникнут проб­лемы. Для соединения двух терминальных устройств - двух компь­ютеров - как минимум необходимо перекрестное соединение линий TR и RD. Однако часто этого недостаточно, т.к. для устройств DTE и DCE функции, выполняемые линиями DSR, DTR, DCD, CTS, RTS асимметричны.

Устройство DTE подает сигнал DTR и ожидает получения сиг­налов DSR и DCD. В свою очередь, устройство DCE подает сигналы DSR, DCD и ожидает получения сигнала DTR. Таким образом, если соединить вместе два устройства DTE кабелем, который вы исполь­зовали для соединения устройств DTE и DCE, то они не смогут до­говориться друг с другом.

Теперь перейдем к сигналам RTS и CTS, управления потоком данных. иногда для соединения двух устройств DTE эти линии сое­диняют вместе на каждом конце кабеля. В результате получаем то, что другое устройство всегда готово для получения данных. Поэ­тому, если при большой скорости передачи принимающее устройство не успевает принимать и обрабатывать данные, возможна потеря данных.

Чтобы решить все эти проблемы для соединения двух уст­ройств типа DTE используется специальный кабель, в обиходе на­зываемый нуль-модемом.

Технические параметры интерфейса RS-232-C

При передаче данных на большие расстояния без использова­ния специальной аппаратуры из-за помех, наводимых электромаг­нитными полями, возможно возникновение ошибок. Вследствие этого накладываются ограничения на длину соединительного кабеля между устройствами DTR-DTR и DTR-DCE.

Официальное ограничение по длине для соединительного кабе­ля по стандарту RS-232-C составляет 15,24 метра. Однако на практике это расстояние может быть значительно больше. Оно не­посредственно зависит от скорости передачи данных.

110бод - 1524м  / 914,4м

300бод - 1524м / 914,4м 1200бод - 914,4м / 914,4м 2400бод - 304,8м / 152,4м 4800бод - 304,8м / 76,2м 9600бод - 76,2м / 76,2м

Первое значение - скорость передачи в бодах, второе - максимальная длина для экранированного кабеля, третье - макси­мальная длина для неэкранированного кабеля.

Уровни напряжения на линиях разьема составляют для логи­ческого нуля -15..-3 вольта, для логической единицы +3..+15 вольт. Промежуток от -3 до +3 вольт соответствует неопределен­ному значению.

2.2. Программирование адаптера

Порты асинхронного адаптера

На этапе инициализации системы, модуль POST BIOS тестиру­ет имеющиеся асинхронные порты RS-232-C и инициализирует их. В зависимости от версии BIOS инициализируются первые два или че­тыре порта. Их базовые адреса располагаются в области данных BIOS начиная с адреса 0000:0400h.

Первый адаптер COM1 имеет базовый адрес 3F8h и занимает диапазон адресов от 3F8h до 3FFh. Второй адаптер COM2 имеет ба­зовый адрес 2F8h и занимает адреса 2F8h..2FFh.

Асинхронные адаптеры могут вырабатывать прерывания:

COM1,COM3 - IRQ4

COM2,COM4 - IRQ3

Имеется 7 основных регистров для управления портами:

а) Регистр данных

Регистр данных расположен непосредственно по базовому ад­ресу порта RS-232-C и используется для обмена данными и для за­дания скорости обмена.

Для передачи данных в этот регистр необходимо записать пе­редаваемый байт данных. После приема данных от внешнего уст­ройства принятый байт можно прочитать из этого же регистра.

В зависимости от состояния старшего бита управляющего ре­гистра ( расположенного по адресу base_adr+3, где base_adr соответствует базовому адресу порта RS-232-C) назначение этого регистра может изменяться. Если старший бит равен нулю, регистр используется для записи передаваемых данных. Если же старший бит равен единице, регистр используется для ввода значения младшего байта делителя частоты тактового генератора. Изменяя содержимое делителя, можно изменять скорость передачи данных. Старший байт делителя записывается в регистр управления преры­ваниями по адресу base_adr+1.

Максимальная скорость обмена информацией, которую можно достичь при использовании асинхронного адаптера, достигает 115200 бод, что примерно соответствует 14 Кбайт в секунду.

б) Регистр управления прерываниями

Этот регистр используется либо для управления прерываниями от асинхронного адаптера, либо (после вывода в управляющий ре­гистр байта с установленным в 1 старшим битом) для вывода зна­чения старшего байта делителя частоты тактового генератора.

в) Регистр идентификации прерывания

Считывая его содержимое, программа может определить

Если Вам нужна помощь с академической работой (курсовая, контрольная, диплом, реферат и т.д.), обратитесь к нашим специалистам. Более 90000 специалистов готовы Вам помочь.
Бесплатные корректировки и доработки. Бесплатная оценка стоимости работы.

Поможем написать работу на аналогичную тему

Получить выполненную работу или консультацию специалиста по вашему учебному проекту
Нужна помощь в написании работы?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Пишем статьи РИНЦ, ВАК, Scopus. Помогаем в публикации. Правки вносим бесплатно.

Похожие рефераты: