Модели машинной графики


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
старшим битом) для вывода зна­чения старшего байта делителя частоты тактового
генератора.
в) Регистр идентификации прерывания
Считывая его содержимое, программа может определить причи­ну прерывания
г) Управляющий регистр
Управляющий регистр доступен по записи и чтению. Этот ре­гистр управляет
различными характеристиками UART : скоростью передачи данных,контролем четности,
передачей сигнала BREAK, длиной передаваемых слов(символов).
д) Регистр управления модемом
Регистр управления модемом управляет состоянием выходных линий DTR, RTS и линий,
специфических для модемов - OUT1 и OUT2, а такжезапуском диагностики при
соединенных вместе входе и выходе асинхронного адаптера.
е) Регистр состояния линии
Регистр состояния линии определяет причину ошибок, которые могут возникнуть при
передаче данных между компьютером и мик­росхемой UART.
ж) Регистр состояния модема
Регистр состояния модема определяет состояние управляющих сигналов, передаваемых
модемом асинхронному порту компьютера.
Инициализация асинхронного адаптера
Первое, что должна сделать программа, работающая с асинх­ронным адаптером -
установить формат и скорость передачи дан­ных. После загрузкиоперационной
системы для асинхронных адап­теровустанавливается скорость 2400 бод, не
выполняется провер­ка на четность, используются один стоповый ивосьмибитовая
дли­на передаваемого символа. Можно изменить этот режим командой MS-DOS MODE.
Выполнив ввод из управляющего регистра, программа может получить текущий режим
адаптера. Для установки нового режима измените нужныевам поля и запишите новый
байт режима обратно в управляющий регистр.
Если вам надо задать новое значение скорости обмена данны­ми, перед записью
байта режима установите старший бит этого байта в 1, при этомрегистр данных и
управляющий регистр используются для задания скорости обмена. Затем
последовательно двумя командами ввода загрузите делитель частотытактового
ге­нератора. Младший байт запишите в регистр данных, а старший - в регистр
управления прерываниями.
Перед началом работы необходимо также проинициализировать регистр управления
прерываниями, даже если в вашей программе не используютсяпрерывания от
асинхронного адаптера. Для этого сначала надо перевести регистр данных и регистр
управления пре­рываниями в обычный режим, записав ноль встарший бит
управляю­щего регистра. Затем можно устанавливать регистр управления
прерываниями. Если прерывания вам не нужны, запишите в этот портнулевое
значение.
Современные микросхемы UART
Фактически микросхема UART 8250 в ее исходном виде исполь­зовалась только в
старых моделях компьютеров IBM PC. Современ­ные микросхемы - UART 16450, 16550,
16550A изготовленные по но­вой технологии, позволяют достичь более высокой
скорости обмена данными, а такжеобладают новыми аппаратными возможностями.
Основные возможности различных микросхем UART:
- 8250 (8250-B) : Использовался на первых моделях IBM PC
- 16450 (8250-A) : Эта микросхема имеет большую производи­тельность по сравнению
с 8250. Фактически это 8250, но изготов­ленный с использованиемновой технологии.
Микросхема дополнена регистром расширения (scratch register). Устранены ошибки в
ре­гистре разрешения прерываний и добавлена возможностьперевода линии OUT2 в
высокоимпедансное состояние во время проведения тестов, когда выход данных
замкнут на вход.
- 16550 : Фактически соответствует 16450. Добавлена воз­можность внутренней
буферизации передаваемых и принимаемых дан­ных. Буфера выполнены посхеме FIFO
(First In First OUT - пер­вый вошел, первым вышел) или, другими словами в виде
очере­ди.При использовании буферизации возможно заметноуменьшить число
прерываний, вырабатываемых асинхронным портом. Однако из-за ошибки в микросхеме
эту возможность лучше не использовать
- можно потерять отдельные символы. В общем случае микросхема 16550 более
быстрая, чем 16450. Дополнительно 16550 дает воз­можностьиспользовать несколько
каналов прямого доступа ( DMA channels).
- 16550A (16550AN) Соответствует 16550, исправлены ошибки реализации FIFO. Эта
микросхема дает возможность использования программистунескольких каналов прямого
доступа. 16550А, как правило, используется в компьютерах с процессорами
80386/486 и в компьютерах с RISC-архитектурой. Есливы хотите работать на
скоростях больших, чем 9600 бод, желательно использовать именно эту микросхему.
3.Типы модемов
В настоящее время выпускается огромное количество всевоз­можных модемов, начиная
от простейших, обеспечивающих скорость передачи около 300бит/сек, до сложных
факс-модемных плат, поз­воляющих вам послать с вашего компьютера факс или
звуковое письмо в любую точку мира.
В реферате будет рассказано только о так называемых hayes-совместимых модемов.
Эти модемы поддерживают разработан­ный фирмой Hayesнабор АТ-команд управления
модемами. В настоя­щее время такие модемы широко используются во всем мире для
связи персональных компьютеров IBM PC/XT/AT, PS/2через теле­фонные линии.
Аппаратно модемы выполнены либо как отдельная плата, вставляемая в слот на
материнской плате компьютера, либо в виде отдельногокорпуса с блоком питания,
который подключается к последовательному асинхронному порту компьютера. Первый
из низ называется внутренним модемом, а второй -внешним.
Типичный модем содержит следующие компоненты: специализи­рованный
микропроцессор, управляющий работой модема, оператив­ную память,
хранящуюзначения регистров модема и буферизующие входную/выходную информацию,
постоянную память, динамик, позво­ляющий выполнять звуковой контроль связи,
атакже другие вспо­могательные элементы ( трансформатор, резисторы,
конденсаторы, разьемы). Если у вас достаточно современный модем, то он
скореевсего дополнительно содержит электрически перепрограммируемую постоянную
память, в которой может быть сохранена конфигурация модема даже при
выключениипитания.
Чтобы модемы могли обмениваться друг с другом информацией, надо, чтобы они
использовали одинаковые способы передачи данных по телефоннымлиниям. Для
разработки стандартов передачи данных был создан специальный международный
консультативный комитет по телеграфии и телефонии (CCITT) иприняты следующие
рекоменда­ции:
CCITT V.21 - 300 bps. Модем, регламентированный данной ре­комендацией,
предназначен для передачи данных по выделенным и коммутируемым линиям.
Он работает в асинхронном дуплексном режиме. Для передачи и приема данных
используетсяспособ частотной модуляции.
CCITT V.22 - 1200 bps. Модем, работающий в соответствии с данной рекомендацией,
использует асинхронно-синхронный дуп­лексный режимпередачи.
Асинхронно-синхронный режим означает, что компьютер передает модему данные в
асинхронном режиме. Мо­дем удаляет из потока данных компьютерастартовые и
стоповые биты. И уже в синхронном виде передает их удаленному компьюте­ру. Для
модуляции передаваемого сигнала применяется метод диф­ференциальнойфазовой
модуляции.
CCITT V.22bis - 2400 bps. Дуплексный модем, со скоростью передачи данных 2400
bps. При передаче со скоростью 2400 bps используется методквадратурной
модуляции, а при скорости 1200
- метод дифференциальной фазовой модуляции. На скорости 1200 bps модем CCITT
V.22bis совместим с CCITT V.22.
CCITT V.23 - 600/1200 bps. Асинхронный модем, использующий метод частотной
модуляции. Модем может работать в дуплексном режиме соскоростью передачи данных
по прямому каналу - 600/1200 bps, а по обратной - только 75 bps. Этот стандарт
не совместим с CCITT V.21, V.22, V.22bis.
Bell 103 - 300 bps, Bell 212A - 1200 bps.
Bell - это американский стандарт, не совместимый со стан­дартами CCITT.
4. Программирование модемов
После выпуска американской фирмой Hayes модемов серии Smartmodem, система
команд, использованная в ней, стала неким стандартом, которогопридерживаются
остальные фирмы - разработ­чики модемов. Система команд, применяемая в этих
модемах, носит название hayes-команд, или AT-команд.
Со времени выпуска первых AT-совместимых модемов набор их команд несколько
расширился, но все основные команды остались без изменения.
Все команды, передаваемые компьютером модему, надо начи­нать префиксом AT
(ATtention - внимание) и заканчивать символом возврата каретки ( ). Только
команда А/ и Escape-последо­вательность "+++" не требуют для себя префикса AT.
После префикса AT могут идти одна или сразу несколько ко­манд. Для ясности эти
команды могут быть отделены друг от друга символами пробела,тире, скобками. В
большинстве случаев коман­ды могут быть написаны как заглавными, так и строчными
буквами.
При передаче модему команд они сначала заносятся во внут­ренний буфер, который,
как правило, имеет размер 40 символов. Команды, записанные вбуфер модема,
исполняются после поступле­ния символа возврата каретки. Вследствие
ограниченности размера буфера не следует передавать модему слишкомдлинные
команды ( больше размера буфера). Длинные команды можно разбивать на части и
передавать в несколько заходов. При этом каждая часть должна начинатьсяпрефиксом
АТ и заканчиваться символом возвра­та каретки.
Если вы допустили ошибку при наборе команды, то ее можно исправить, используя
клавишу BackSpace.
После выполнения каждой команды модем посылает обратно компьютеру ответ в виде
числа или слова. Этот ответ означает, выполнена ликоманда или произошла ошибка.
Если у вас внешний модем, то на его лицевой панели нахо­дится восемь световых
индикаторов. Хотя их расположение на раз­личных моделях можетменяться, их
обозначения являются стан­дартными:
MR Modem Ready - Модем готов к обмену данными. Если этот индикатор не горит, то
надо проверить линию питания модема.
TR Terminal Ready - Компьютер готов к обмену данными с мо­демом. Этот индикатор
горит, когда модем получил от компьютера сигнал DTR.
CD Carrier Detect - Индикатор зажигается, когда модем об­наружил несущую частоту
на линии. Индикатор должен гореть на протяжении всего сеансасвязи и гаснуть,
когда один из модемов освободит линию.
SD Send Data - Индикатор мигает, когда модем получает дан­ные от компьютера.
RD Receave Data - Индикатор мигает, когда модем передает данные к компьютеру
HS High Speed - Модем работает на максимально возможной для него скорости.
AA Auto Answer - Модем находится в режиме автоответа. То есть модем
автоматически будет отвечать на приходящие звонки. Когда модемобнаружит звонок
на телефонной линии, этот индика­тор замигает.
OH Off-Hook - Этот индикатор горит, когда модем снял труб­ку ( занимает линию).
Основные команды модема
AT - Начало (префикс) командной строки. После получения этой команды модем
автоматически подстраивает скорость передачи и формат данных к параметрам
компьютера.
A - Автоответ. Если режим автоматического ответа выключен (S0=0), команда
используется для ответа на звонок от удаленного модема. Командазаставляет модем
снять трубку ( подключиться к линии ) и установить связь с удаленным модемом.
A/ - Модем повторяетпоследнюю введенную команду. Команда передается на модем без
префикса AT и исполняется модемом не­медленно, неожидая прихода символа возврата
каретки. Если вы передадите модему строку AT A/ , то модем укажет на ошибку
и вернет слово ERROR.
Bn - Команда производит выбор стандарта, согласно которому будет происходить
обмен данными между модемами. При скорости передачи 300 бит/спроисходит выбор
между стандартами BELL 103 и CCITT V.21, при скорости 1200 bps - между BELL 212A
и CCITT
V.22bis. При скорости 2400 bps эта команда игнорируется и используется стандарт
CCITT V.22. Если n=0, устанавливаются стандарты CCITTV.21/V.22, а если n=1 -
стандарты BELL 103/212A.
Ds - Команда используется для набора номера. После получе­ния этой команды модем
начинает набор номера и при установлении связи переходит врежим передачи данных.
Команда состоит из префикса AT, символа D и телефонного номера, в состав
которого могут входить следующие управляющие модификаторы: Pили T. Эти
модификаторы производят выбор между импульсной и тоновой систе­мой набора ( в
нашей стране используется импульсная система).
, - Символ запятой вызывает паузу при наборе номера. Дли­тельность паузы
определяется содержимымрегистра S8.
; - Символ точки с запятой, если он находится в конце ко­мандной строки,
переводит модем после набора номера в командный режим.
@ - Модем ожидает пятисекундной тишины на линии в течение заданного промежутка
времени. Промежуток времени, в течение ко­торого модеможидает тишины, задается в
регистре S7. Если в те­чение этого времени паузы тишины не было, модем
отключается и отвечает NO ANSWER.
! - Если знак ! стоит перед знаками последовательности на­бора, модем переходит
в состояние ON HOOK (кладет трубку) на 1/2 секунды, а затемснова переходит в
состояние OFF HOOK ( снимает трубку).
S - Модем набирает телефонный номер, записанный в его па­мяти. Эта команда
выполняется только для модемов, имеющихвстроеннуюэнергонезависимую память и
возможность записи в нее номеров телефонов.
R - После набора номера переводит модем в режим автоотве­та. Этот модификатор
должен находиться в конце набираемого но­мера.
W - Перед дальнейшим набором телефонного номера модем ожи­дает длинный гудок из
линии. Причем время ожидания гудка содер­жится в регистре S7.Если в отведенное
время гудок не появился, модем прекращает набор номера и возвращает сообщение NO
DIALTONE. Этот параметр может быть полезен при наборемеждуго­родних номеров.
En - Управление эхо-выводом команд, передаваемых модему. После команды Е1 модем
возвращает каждый знак, передаваемый ему, обратнокомпьютеру, что позволяет
узнать, как работает связь модема и компьютера. Команда Е0 запрещает эхо-вывод.
Fn - Переключение между дуплексным/полудуплексным режима­ми. При n=0 переход в
полудуплексный режим, а при n=1 - в дуп­лексный.
Hn - Эта команда используется для управления телефонной линией. Если n=0, то
происходит отключение модема от линии, если n=1, модемподключается к линии.
In - Выдает идентификационный код модема и контрольную сумму содержимого памяти
модема. Если n=0, модем сообщает свойидентификационный код, если n=1, модем
проводит подсчет конт­рольной суммы EPROM и передает ее компьютеру, n=2 - модем
про­веряет состояние внутреннейпамяти ROM и возвращает сообщение OK или CHECKSUM
ERROR (ошибка контрольной суммы). При n=3 выда­ется состояние модема.
Ln - Установка громкости сигнала внутреннего динамика: n=0,1 соответствует
низкой громкости, n=2 - средней и n=3 - максимальной.
Mn - Управление внутренним динамиком. При n=0 динамик вык­лючен. При n=1 динамик
включен только во время набора номера и выключен послеобнаружения несущей. При
n=2 динамик включен все время. При n=3 динамик включается после набора последней
цифры номера и выключается после обнаружениянесущей отвечающего мо­дема.
Qn - Управление ответом модема на AT-команды. При n=0 от­вет разрешен, при n=1
ответ запрещен. Независимо от состояния Q0 или Q1 модемвсегда сообщает
содержание S-регистров, свой идентификационный код, контрольную сумму памяти и
результаты теста.
On - Команда переводит модем из командного режима в режим передачи данных. При
этом модем отвечает CONNECT. Команда О и О0 переводятмодем в режим передачи
данных без инициирования последовательности сигналов проверки линии связи.
Команда О1 переводит модем в режим передачи данных изаставляет модем пе­редать
последовательности сигналов проверки линии связи, т.е. производить повторное
квитирование с удаленным модемом.
Sr? - Чтение содержимого регистра модема, имеющего номер r.
Sr=n - Запись в регистр модема с номером r числа n. Число n может иметь значения
от 0 до 255. Все команды модифицируют содержимое одногоили более S-регистров.
Некоторые S-регистры содержат временные параметры, которые можно поменять только
ко­мандой S.
Vn - Производит выбор вида ответа модема на AT-команды. При n=0 ответ происходит
цифровым кодом, а при n=1 модем отве­чает в символьномвиде на английском языке.
Использование циф­ровой формы ответа облегчает обработку результатов выполнения
команды при написании собственных программуправления модемом.
Стандартный набор ответов модема
OK0Модем выполнил команду без
ошибок
CONNECT1Модем установил связь со
скоростью 300 bps
RING2Модем обнаружил сигнал
звонка
NO CARRIER3Модем потерял несущую
частоту
ERROR4Ошибка в командной строке
CONNECT 12005Модем установил
связь со скоростью 1200 bps
NO DIALTONE6Отсутствие сигнала
станции при снятии трубки
BUSY7Модем обнаружил сигнал
"занято"
NO ANSWER8Нет ответа после
ожидания сигнала
CONNECT 6009Модем установил
связь со скоростью 600 bps
CONNECT 2400 10 Модем установил связь со скоростью 2400 bps
Yn - Способ отключения модема от линии. Существуют два способа отключения модема
от линии: стандартный, когда модем получаетнеактивный сигнал DTR от компьютера,
и принудительный, когда модем получает от удаленного модема сигнал перерыва
BREAK. Команда ATH0 направляет удаленному модему сигналпрерыва BREAK, который
длится 4с. При n=0 модем отключается стандартно, при n=1 модем отключается после
получения из линии сигнала BREAK.
Z - Сбрасывает конфигурацию модема. При этом во все ре­гистры загружаются
значения, принятые по умолчанию. Значения регистров, принятые поумолчанию
берутся из энергонезависимой памяти модема или, если модем такой памяти не
имеет, из посто­янной памяти или определяется исходя из переключателейна плате
модема.
+++ - Escape-последовательность, используемая для перехода в командный режим
работы модема. Благодаря этой команде можно перейти из режимапередачи данных
модемом в командный режим ра­боты без разрыва связи. Модем требует тишины перед
и после нап­равления этой Escape-последовательности.Величина этого проме­жутка
тишины определена в регистре S12.
&Cn - Данная команда управляет сигналом DCD порта RS-232-C. При n=0 сигнал DCD
всегда активен, а при n=1 сигнал DCDустанавливается только тогда, когда модем
обнаруживает несущую частоту от удаленного модема.
&Dn - Управление сигналом DTR. При n=0 модем игнорирует DTR, n=1 - при потере
сигнала DTR модем переходит в командный режимработы, n=2 - при потере сигнала
DTR модем прекращает связь, отключается от линии, отключает режим автоответа и
пере­ходит в командный режим работы, n=3 -при потере сигнала DTR автоматически
сбрасывается конфигурация модема, как при выпол­нении команды ATZ. Модем
обнаруживает потерю сигнала DTR, если сигнал DTRотсутствует дольше времени,
определенного в регистре модема S25.
&F - модем устанавливает конфигурацию, записанную в посто­янную память.
&Gn - Включение/выключение защитной частоты. n=0 - защит­ная частота выключена,
n=1 - модем генерирует защитную частоту 550 Hz,n=2 - модем генерирует защитную
частоту 1800 Hz. Использование данной команды зависит от особенностей телефонной
линии.
&Ln - Вид линии связи. При n=0 передача по обычным (комму­тируемым) линиям
связи, n=1 передача по выделенным каналам.
&Mn - Установка асинхронно/синхронного режима работы. При n=0
устанавливаетсяасинхронный режим, при n=1,2,3 устанавлива­ется синхронный режим.
&Pn - Установка импульсного коэффициента набора номера в соответствии с
различными стандартами. При n=0 - коэффициент заполнениязамыкание/интервал 39/61
(Америка), при n=1 - 33/67 (Англия).
&Rn - Управление сигналом CTS: n=0 - сигнал переходит в активное состояние после
получения сигнала RTS. Данные, переда­ваемые модемудо поступления сигнала RTS,
игнорируются. Если n=1 модем игнорирует RTS.
&Sn - Управление сигналом DSR порта RS-232-C. При n=0 сиг­нал DSR активен
всегда, а при n=1 сигнал DSR активизируется только послеокончания этапа
установления связи между модемами.
&Tn - Тестирование модема. От n зависит вид теста.
&V - Модем показывает свою текущую конфигурацию и телефон­ные номера, записанные
в энергонезависимой памяти.
&W - Модем записывает свою текущую конфигурацию в энерго­независимую память. При
сбросе модема будет загружена именно этаконфигурация.
&Zn - Используется для записи телефонного номера в энерго­независимую память
модема. Количество телефонов зависит от мо­дели модема.
Основные принципы программирования модемов
Доступ к модему происходит через последовательный асинх­ронный порт. При этом
для передачи модему команд их необходимо просто записать врегистр данных
COM-порта, на котором нахо­дится модем. Ответ от модема также поступает через
последова­тельный порт.Передавая модему команды, его можнопроинициализи­ровать,
перевести в режим автоответа или заставить набрать но­мер.
Когда модем наберет номер удаленного абонента или когда модему в режиме
автоответа придет вызов, он попытается устано­вить связь судаленным модемом.
После установления связи модем передает компьютеру через COM-порт специальное
сообщение и пе­реключится из командного режима в режимпередачи данных. После
этого данные, передаваемые модему, перестают восприниматься им как команды и
сразу передаются по телефонной линии наудаленный модем.
Итак, после установления связи с удаленным модемом, комму­никационная программа
может начинать обмен данными. Обмен дан­ными так же, как и передачакоманд,
осуществляется через COM-порт. Затем при помощи специальной
Escape-последователь­ности можно переключить модем из режима передачи
данныхобратно в командный режим и положить трубку, разорвав связь с удаленным
модемом.
Последовательность действий для установления связи
а)Инициализация COM-порта
Проводим инициализацию COM-порта, к которому подключен мо­дем. Для этого
программируем регистры микросхемы UART, задавая формат данных искорость обмена.
Заметим, что модем будет про­водить соединение с удаленным модемом как раз на
этой скорости. Чем скорость выше, тем быстрее будетпроисходить обмен данными с
удаленным модемом.
Однако при увеличении скорости на плохих телефонных линиях сильно возрастает
количество ошибок.
б)Инициализация модема
Передавая модему AT-команды через СОМ-порт, производим его инициализацию. При
помощи АТ-команд можно установить различные режимы работымодема - выбрать
протокол обмена, установить на­бор диагностических сообщений модема и т.д.
в)Соединение с удаленным модемом
Передаем модему команду набора номера (ATD). В этом случае модем набирает номер
и пытается установить связь с удаленным модемом. Илипередаем модему команду AT
S0=1 для перевода его в режим автоответа. После этого модем ожидает звонка от
удаленно­го модема, а когда он приходит, пытаетсяустановить с ним связь.
г)Ожидаем ответ от модема
В зависимости от режима, в котором находится модем, он мо­жет передавать
компьютеру различные сообщения. Например, если модем производитвызов удаленного
модема (АТ-команда ATD), то модем может выдать следующие сообщения:
CONNECTУспешное соединение
BUSYНомер занят
NO DIALTONEНа линии отсутствует сигнал коммутатора
NO ANSWERАбонент не отвечает
NO CARRIERНеудачная попытка установить связь
Когда приходит звонок, модем передает компьютеру сообщение RING, если регистр
модема S0 равен нулю. В этом случае для от­вета на звонокнадо послать модему
команду АТА. Если модем на­ходится в режиме автоответа и регистр модема S0 не
равен нулю, то модем автоматически пытается ответить назвонок и может вы­дать
следующие сообщения:
CONNECTУспешное соединение
NO DIALTONE Нет несущей частоты удаленного модема
NO CARRIERНеудачная попытка установить связь
Если модем передал компьютеру сообщение CONNECT ,значит, он успешно произвел
соединение и теперь работает в режиме пере­дачи данных.Теперь все данные,
которые вы передадите модему через СОМ-порт, будут преобразованы модемом в
форму, пригодную для передачи по телефонным линиям, ипереданы удаленному
моде­му. И наоборот, данные, принятые модемом по телефонной линии, переводятся в
цифровую форму и могут быть прочитаны через СОМ-порт, ккоторому подключен модем.
Если модем передал компьютеру сообщения BUSY, NO DIALTONE, NO ANSWER, NO CARRIER
значит, произвести соединение с удаленным модемом неудалось и надо попытаться
повторить соединение.
д)Подключение модема в командный режим
После окончания работы коммуникационная программа должна перевести модем в
командный режим и передать ему команду поло­жить трубку(ATH0). Для перевода
модема в командный режим можно воспользоваться Escape-последовательностью "+++".
После того как модем перешел вкомандный режим, можно опять передавать ему
АТ-команды.
е)Сбрасываем сигналы на линиях DTR и RTS
Низкий уровень сигналов DTR и RTS сообщает модему, что компьютер не готов к
приему данных через COM-порт.
При работе с асинхронным последовательным адаптером вы мо­жете использовать
механизм прерываний. Так какпередача и прием данных модемом представляют собой
длительный процесс, то приме­нение прерываний от порта позволяет использовать
процессорное время для других нужд.
5.Протоколы обмена данными
5.1.Протоколы коррекции ошибок нижнего уровня
При передаче данных по зашумленным телефонным линиям всег-
да существует вероятность, что данные, передаваемые одним моде­мом, будут
приняты другим модемом в искаженном виде. Например,
некоторые передаваемые байты могут изменить свое значение или даже просто
исчезнуть.
Для того, чтобы пользователь имел гарантии, что его данные переданы без ошибок,
используются протоколы коррекции ошибок.
Общая форма передачи данных по протоколам с коррекцией ошибок следующая: данные
передаются отдельными блоками (пакета­ми) по 16-20000байт, в зависимости от
качества связи. Каждый блок снабжается заголовком, в котором указана проверочная
ин­формация, например контрольная сумма блока.Принимающий компь­ютер
самостоятельно подсчитывает контрольную сумму каждого бло­ка и сравнивает ее с
контрольной суммой из заголовка блока. Если эти двеконтрольный суммы совпали,
принимающая программа считает, что блок передан без ошибок. В противном случае
прини­мающий компьютер передает передающему запросна повторную пере­дачу этого
блока.
Протоколы коррекции ошибок могут быть реализованы как на аппаратном уровне, так
и на програмном. Аппаратный уровень реа­лизации болееэффективен. Быстродействие
аппаратной реализации протокола MNP примерно на 30% выше, чем програмной.
MNP-протоколы
MNP (Microcom Network Protocols) - серия наиболее расп­ространенных аппаратных
протоколов, впервые реализованная на модемах фирмы Microcom. Этипротоколы
обеспечивают автомати­ческую коррекцию ошибок и компрессию передаваемых данных.
Сейчас известны 10 протоколов:
MNP1. Протокол коррекции ошибок, использующий асинхронный полудуплексный метод
передачи данных. Это самый простой из про­токолов MNP.
MNP2. Протокол коррекции ошибок, использующий асинхронный дуплексный метод
передачи данных.
MNP3. Протокол коррекции ошибок, использующий синхронный дуплексный метод
передачи данных между модемами (интерфейс мо­дем - компьютеростается
асинхронным).
Так как при асинхронной передаче используется десять бит на байт - восемь бит
данных, стартовый бит и стоповый бит, а при синхроннойтолько восемь, то в этом
кроется возможность ускорить обмен данными на 20%.
MNP4. Протокол, использующий синхронный метод передачи, обеспечивает оптимизацию
фазы данных, которая несколько улучша­етнеэффективность протоколы MNP2 и MNP3.
Кроме того, при изме­нении числа ошибок на линии соответственно меняется и
размер блоков передаваемых данных. Приувеличении числа ошибок размер блоков
уменьшается, увеличивая вероятность успешного прохожде­ния отдельных блоков.
Эффективность этого метода составляет около 20% по сравне­нию с простой
передачей данных.
MNP5. Дополнительно к методам MNP4, MNP5 часто использует простой метод сжатия
передаваемой информации. Символы часто встречающиеся впередаваемом блоке
кодируются цепочками битов меньшей длины, чем редко встречающиеся символы.
Дополнительно кодируются длинные цепочки одинаковыхсимволов. Обычно при этом
текстовые файлы сжимаются до 35% своей исходной длины. Вместе с 20% MNP4 это
дает повышение эффективности до 50%.
Заметим, что если вы передаете уже сжатые файлы, а в боль­шинстве это так и
есть, дополнительного увеличения эффектив­ности за счет сжатия данныхмодемом
этого не происходит.
MNP6. Дополнительно к методам протокола MNP5 автоматически переключается между
дуплексным и полудуплексным методами пере­дачи взависимости от типа информации.
Протокол MNP6 также обеспечивает совместимость с протоколом V.29.
MNP7. По сравнению с ранними протоколами использует более эффективный метод
сжатия данных.
MNP9. Использует протокол V.32 и соответствующий метод ра­боты, обеспечивающий
совместимость с низкоскоростными модемами.
MNP10. Предназначен для обеспечения связи на сильно зашум­ленных линиях, таких,
как линии сотовой связи, междугородними линиями, сельские линии.Это достигается
при помощи следующих методов:
- многократного повторения попытки установить связь
- изменения размера пакетов в соответствии с изменением уровня помех на линии
- динамического изменения скорости передачи в соответствии с уровнем помех линии
Все протоколы MNP совместимы между собой снизу вверх. При установлении связи
происходит установканаивысшего возможного уровня MNP-протокола. Если же один из
связывающихся модемов не поддерживает протокол MNP, то MNP-модем работает без
MNP-прото­кола.
Режимы MNP-модемов.
MNP-модем обеспечивает следующие режимы передачи данных:
- Стандартный режим. Обеспечивает буферизацию данных, что позволяет работать с
различными скоростями передачи данных меж­ду компьютером имодемом и между двумя
модемами. В результате для повышения эффективности передачи данныхвы можете
устано­вить скорость обмена компьютер-модем выше, чеммодем-модем. В стандартном
режиме работы модем не выполняет аппаратной коррек­ции ошибок.
- Режим прямой передачи. Данный режим соответствует обыч­ному модему, не
поддерживающему MNP-протокол. Буферизация дан­ных не производится иаппаратная
коррекция ошибок не выполня­ется.
- Режим с коррекцией ошибок и буферизацией. Это стандарт­ный режим работы при
связи двухMNP-модемов. Если удаленный мо­дем не поддерживает протокол MNP, связь
не устанавливается.
- Режим с коррекцией ошибок и автоматической настройкой. Режим используется,
когда заранее не известно, поддерживает ли удаленный модемпротокол MNP. В начале
сеанса связи после опре­деления режима удаленного модема устанавливается один из
трех других режимов.
Протоколы V.42 и V.42bis.
Протокол с коррекцией ошибок и преобразованием асинхрон­ный-синхронный. Протокол
использует метод компрессии, при кото­ром определяется частотапоявления
отдельных символьных строк и происходит их замена на последовательности символов
меньшей длины. Этот метод компрессии носит названиеLempel-Ziv. Данный метод
компрессии обеспечивает 50% сжатие текстовых файлов. Вместе с 20% выигрышем от
синхронного преобразования это увели­чиваетэффективность на 60%.
5.2. Протоколы передачи файлов
В отличие от протоколов нижнего уровня данные протоколы позволяют организовать
прием и передачу файлов.
ASCII.
Этот протокол работает без коррекции ошибок. В результате при передаче файлов по
телефонным каналам из-за шума принятый файл сильноотличается от передаваемого.
Если вы передаете вы­полняемый файл, то ошибки при передаче могут стать роковыми
- полученная программа не будет работать. Если выпередаете ко­роткие текстовые
сообщения, то ошибки легко могут быть исправ­лены.
XModem.
Наиболее распространены три разновидности протокола XModem:
- оригинальный протокол Xmodem
- Xmodem c CRC
- 1K Xmodem
Оригинальный протокол Xmodem разработал Вард Кристенсен (Ward Christensen) в
1977 году. Вард Кристенсен был одним из первыхспециалистов по протоколам обмена
данными. В честь него этот протокол иногда называют также протоколом
Кристенсена.
При передаче файлов с помощью протоколов Xmodem формат данных должен быть
следующим: 8-битовые данные, один стоповый бит и отсутствиепроверки на четность.
Для передачи использу­ется полудуплексный метод, т.е. данные могут передаваться
в каждый момент времени только в одном направлении.
Протокол Xmodem Cheksum передает данные пакетами по 128 байт. Вместе с пакетом
передается егоконтрольная сумма. При получении пакета контрольная сумма
вычисляется снова и сравни­ваетсяс суммой, вычисленной на передающей машине.
Пакет пере­дан без ошибок, если суммы совпадают.
Этот метод обеспечивает достаточно хорошую защиту от оши­бок. Только один из 256
пакетов может содержать ошибки, даже если контрольная суммаправильная.
Xmodem c CRC. Более защищенным от ошибок является протокол Xmodem CRC (Cyclic
Redundancy Check).Xmodem CRC - протокол с проверкой циклическим избыточным
кодом. В нем 8-битовая конт­рольная сумма заменена на 16-битовый циклический
избыточный код. Этот протоколгарантирует вероятность обнаружения ошибок, равную
99,9984%. Только один из 700 биллионов плохих пакетов будет иметь правильный
CRC-код. Протокол Xmodem CRCтакже пере­дает данные пакетами по 128 байт.
1K Xmodem. Если передача идет без ошибок, протокол 1К Xmodem увеличивает размер
пакета с 128 до 1024байт. При увели­чении числа ошибок размер пакета снова
уменьшается. Такое изме­нение длины пакета позволяет увеличить скорость передачи
фай­лов. В остальномпротокол 1K Xmodem совпадает с протоколом Xmodem CRC.
Ymodem.
Протокол Ymodem разработал Чак Форсберг в 1984-1985 годах. Протокол Ymodem похож
на протокол 1K Xmodem, но имеет одно от­личие: протоколYmodem может передавать
или принимать за один заход несколько файлов.
Существует модификация протокола Ymodem - Ymodem G. Прото­кол Ymodem G
предназначен для использования с модемами, автома­тическиосуществляющими
коррекцию ошибок на аппаратном уровне. Например, MNP-модемы с аппаратной
реализацией MNP. В этом про­токоле упрощена защита от ошибок, т.к. еевыполняет
сам модем. Не используете этот протокол, если ваш модем не осуществляет
аппаратную коррекцию ошибок.
Другой особенностью протокола Ymodem является то, что вместе с файлом передаются
все его атрибуты. В результате как минимум имя файлаи дата остаются неизменными.
Zmodem.
Zmodem - это быстрый протокол передачи данных, использую­щий окна. Zmodem
осуществляет передачу данных пакетами по несколько штук в окне.При этом
принимающий данные компьютер не передает сигнал подтверждения или сигнал
переспроса неправиль­ного пакета, пока не получит все пакеты в окне.
Протокол Zmodem, так же как и протокол 1K Xmodem, может изменять длину пакета
(блока) от 64 до 1024 байт в зависимости от качествалинии.
Кроме того, протокол обладает следующей полезной особен­ностью: если при
передаче файла произошел сбой на линии и вы не успели передать весьфайл, то в
следующий раз при передаче это­го же файла он автоматически начнет передавать с
того же места, где произошел обрыв связи. Таким образом, оченьбольшие файлы вы
можете передавать по частям.
Из всех протоколов верхнего уровня, описанных выше, этот протокол самый быстрый
и удобный.
BiModem.
Особенностью протокола Bimodem является возможность однов­ременной передачи двух
файлов в разных направлениях. Кроме то­го, одновременно спередачей файлов вы
можете побеседовать с оператором удаленного компьютера при помощи клавиатуры.
Kermit.
Широко известны две разновидности протокола Kermit - стан­дартный и Super
Kermit. Этот протокол был разработан в Колум­бийском университете в1981 году для
связи междуразличными ти­пами компьютеров, включая большие компьютеры,
мини-компьютеры и персональные компьютеры. В отличие от протоколовXmodem и
Zmodem он использует для передачи данных пакеты переменной дли­ны и максимальным
размером 94 байт.
Так же как и Ymodem, протокол Kermit может передавать или принимать несколько
файлов за один сеанс.
Протокол Super Kermit предназначен специально для исполь­зования в сетях типа
TeleNet или TymNet. Эти сети имеют очень большие задержки припередаче данных.
Так что если ждать подт­верждения для каждого пакета, это может привести к
резкому сни­жению скорости обмена. В протоколе Super Kermitэта проблема решается
следующим способом. Несколько пакетов передается за один раз. Все действия по
контролю над ошибками остаются, за исключением того, чтопринимающий данные
компьютер не передает сигнал подтверждения или сигнал на переспрос неправильного
па­кета, пока не получит все пакеты в окне.
В результате использования такого механизма происходит резкое сокращение времени
задержки. Окно может содержать от од­ного до 31пакета.
В дополнение Kermit использует также предварительную комп­рессию данных для
увеличения эффективной скорости обмена данны­ми.
6.Телекоммуникационные программы
Существует огромное множество различных телекоммуникацион­ных программ,
предоставляющих пользователю удобное средство ра­боты с модемом -MTE, Telix,
Comit, Bitcom и т.д.
Основные параметры по которым оцениваются коммуникационные программы являются:
програмная эмуляция протоколов коррекции ошибок (MNP),наличие разнообразных
протоколов обмена файлами, интерфейс с пользователем.
MTE.
Широко распространенная коммуникационная программа фирмы MagicSoft Inc. В MTE
версии 2.10 програмно реализован протокол MNP. Поэтому,если ваш модем не имеет
аппаратной реализации протокола MNP, использование МТЕ позволяет установить
устойчи­вую связь с MNP-модемами.
МТЕ имеет следующие встроенные протоколы обмена файлами: ASCII, Xmodem CRC,
Ymodem, Ymodem-G, Zmodem, Kermit.
Telix.
Telix, версия 3.12 - удобная коммуникационная программа, поддерживающая много
протоколов обмена файлами. В Telix реали­зованы следующиепротоколы: Kermit,
Modem7, SEAlink, Telink, Xmodem, Xmodem-1k, Ymodem, ymodem-G, Zmodem, HSlink,
MobyTurbo, ASCII.
Однако Telix имеет один большой недостаток: эта программа не поддерживает
програмной эмуляции MNP. Вследствие этого ее невозможноиспользовать на сильно
зашумленных линиях с модема­ми, не обеспечивающими аппаратную коррекцию ошибок.
Comit.
Comit, версии 1.27b - удобная коммуникационная программа, часто поставляется в
комплекте с модемами, не имеющими аппарат­ной реализацииMNP. Выполняет
програмную эмуляцию протоколов MNP2, MNP4, MNP5, MNP7.
К сожалению, эта коммуникационная программа имеет очень бедный набор протоколов
для обмена файлами. Поддерживаются про­токолы Xmodem,Xmodem CRC, Ymodem,
Ymodem-G, ASCII.
Bitcom.
Bitcom, версии 3.584 - коммуникационная программа, часто поставляемая в
комплекте с модемами, не имеющими аппаратной ре­ализации MNP.Выполняет
програмную эмуляцию протоколов MNP (до MNP5 включительно).
Bitcom поддерживает следующие протоколы обмена файлами: ASCII, Xmodem CRC,
Ymodem, Ymodem-G, Kermit, CompuServe Plus.
Следует также отметить, что в Bitcom неудачно реализован интерфейс с
пользователем.
7. Использование модемов
7.1. Электронная доска обьявлений
BBS ( Bulletin Board System ) - это компьютер, снабженный одним или несколькими
модемами, на котором выполняется специ­альная программа.Эта программа дает
возможность удаленным пользователям связываться с ней по телефонным линиям и
выпол­нять обмен файлами и сообщениями.
Большинство операторов станций BBS также являются членами сети FidoNet. Сеть
FidoNet представляет собой международную не­коммерческуюсеть пользователей
компьютеров многих стран. Не надо путать BBS и FidoNet. Станции BBS могут не
входить в FidoNet, и в свою очередь, узлы FidoNet могут неиметь BBS, а
использоваться только для пересылки почты.
Если вы успешно установили модем на своем компьютере, то у вас возникнет
естественное желание куда-нибудь позвонить. Для этого вы можетевоспользоваться
любой телекоммуникационной программой - MTE, COMIT, BITCOM. Если ваш модем не
имеет аппа­ратной коррекции ошибок, то лучше использовать MTEили другую
программу, имеющую возможность эмуляции MNP (например COMIT).
Хотя различные BBS используют различные программы для ор­ганизации своей работы
- TPBoard, Allan's Kakboard, Remote Access, Opus, Phoenix, Maximusи т.д.,
фактически все они имеют одинаковый набор команд. Здесь мы рассмотрим станции
BBS, использующие программу Maximus.
Maximus организует диалог с пользователем, позволяет поль­зователю получить
адресованные ему сообщения (почту), отпра­вить почту другимпользователям данной
станции BBS или сети FidoNet (если данная станция входит в эту сеть).
Пользователь BBS получает возможность просматривать архивы файлов BBS,
переписывать себе интересующие его файлы, переда­вать на BBS своифайлы, которые
могут кого-нибудь заинтересо­вать.
Итак, вы звоните на BBS. В большинстве случаев после сое­динения с BBS на вашем
дисплее появитсяследующее сообщение:
CONNECT 2400
FrontDoor 2.02; Noncommercial version
Press Escape twice for Maximus
Maximus is being loaded
Оно означает, что станция является узлом какой-либо сети, нап­ример FidoNet, и
на ней выполняется специальная почтовая прог­раммаFrontDoor. Вам предлагается
нажать два раза на клавишу ESC для загрузки программы Maximus, которая и будет
далее под­держивать диалог с вами.
Если в это время станция работает только для обмена почтой в сети, то на экране
появится другое сообщение:
CONNECT 2400
FrontDoor 2.02; Noncommercial version
Mail-only system. Please hang up.
Если BBS работает, то через некоторое время на ней за­пустится программа Maximus
или аналогичная и на вашем экране появится заставка -информация о данной BBS,
которая может включать номера телефонов, расписание работы, фамилию системно­го
оператора.
Затем BBS попросит ввести вас свое имя и фамилию. Если вы входите на BBS первый
раз, то у вас будут запрошены истинные имя и фамилия,рабочий и домашний
телефоны, тип используемого вами терминала.
Под типом терминала понимается возможность распознавать те или иные управляющие
символы. Обычновам предоставляется выбор из двух возможных типов терминалов -
TTY и ANSI.
TTY представляет собой наиболее простой тип терминала. Он не позволяет управлять
цветом символов, выводимых на экран и устанавливатькурсор в заданную позицию.
ANSI - это наиболее универсальный тип терминала. Он под­держивает управление
положением курсора, а также цветом симво­лов и фоном символов.Управление цветом
и положением курсора обеспечивается специальными Escape-последовательностями.
После такой процедуры регистрации вас попросят выбрать се­бе пароль и вы
автоматически становитесь пользователем данной BBS. При последующихвходах на эту
BBS используйте то же имя и фамилию, что и первый раз. Программа на BBS отыщет
ваше имя в списке пользователей и предложит вам ввести пароль,определен­ный при
первом вхождении в систему.
Главное меню BBS
Когда система наконец признает в вас своего пользователя, на экран будет
выведено основное меню:
MAIN:
M)essage AreasF)ile Areas
S)tatistics
C)hange SetupW)ho is on/)Chat
Menu
Y)ell for SysopR)egistration
G)oodbye
Рассмотрим каждую из команд меню:
Message Areas
Выбрав этот элемент основного меню, вы переходите в об­ласть сообщений. Наэкране
отобразится меню работы с сообщения­ми, из которого высможете просмотреть,
послать или принять сообщения.
File Areas
Переход в файловую область BBS. На экране появится меню для работы с файлами. Из
него вы сможете просмотреть список файлов, имеющихсяна BBS, принять или передать
на BBS файлы.
Statistics
Эта команда отображает на экране статистику вашей работы с BBS: время,
отведенное на этот сеанс, время которое вы уже про­работали с этойсистемой и
оставшееся время. Также выводится информация о размерах принятой и переданной
вами информации, а также сколько еще килобайт вы можете перекачатьсебе сегодня.
Change Setup
При выборе этого элемента меню вы сможете изменить ваше имя, пароль, номера
телефонов, тип терминала, который вы используете.
Who is on
Система сообщит вам, о том, кто еще подключился к BBS ( если BBS имеет несколько
телефонных линий).
Chat Menu
Если система имеет несколько телефонных линий, то вы смо­жете передать сообщение
тому, кто находится на другой линии этой BBS.
Yell for Sysop
При помощи этой команды можно попробовать вызвать систем­ного оператора, если он
находится поблизости от BBS и пожелает вступить впереговоры. Если вам повезет,
вы сможете с помощью клавиатуры передать ему сообщение и получить ответ.
Registration
Система начнет задавать вам вопросы для вашей регистрации на BBS.
Goodbye
С помощью этой команды вы разорвете связь с BBS.
7.2. Электронная почта
Электронные доски обьявлений BBS являются, пожалуй, самым простым способом
обмена сообщениями и файлами. Значительно больший интереспредоставляет
использование глобальных сетей.
Одной из возможностей использования глобальных сетей явля­ется организация
электронной почты. Если ваш компьютер подклю­чен к глобальной сетии вы имеете
специальное програмное обеспечение для обмена почтой, то вы можете отправлять
через сеть письма другим пользователям сети.
Само письмо представляет собой обычный файл, содержащий текст письма и
специальный заголовок, в котором указано, от ко­го письмонаправлено, кому
предназначено, какая тема письма и дата отправления.
В зависимости от используемой вами сети электронный адрес может иметь различный
формат.
Отправляя электронное письмо, надо знать только адрес по­лучателя. Маршрут, по
которому оно будет передаваться, опреде­ляется самой системойэлектронной почты и
может изменяться в зависимости от загруженности отдельных линий.
Таким образом, отправленное вами письмо через несколько минут или дней ( в
зависимости от расстояния и других причин) попадет накомпьютер адресата. Когда у
адресата будет время, он сможет просмотреть пришедшую почту и в случае
необходимости от­правит вам ответ.
Другой возможностью использования глобальных сетей явля­ются телеконференции.
Использование телеконференций соот­ветствует возможностиобмена сообщениями на
BBS, но предпола-
гает больший сервис и круг пользователей.
Телеконференции или новости обычно делятся в зависимости от их тематики на
несколько областей. Абонент сети может "под­писаться"на интересующие его
конференции. После этого он полу­чает возможность отправлять свои сообщения по
тематике данной конференции и автоматическиполучать все новые сообщения по этой
конференции, отправленные другими пользователями сети.
В настоящее время в нашей стране самыми большими являются сеть Relcom и FidoNet.
Relcom является маленьким подмножеством сети InterNet.Обе эти сети позволяют
передавать данные не только внутри России, но и по всему миру.
7.3. Факс-модемные платы
В последнее время на рынке появилось множество факсимиль­ных и факс-модемных
плат. Если вы подключите эту плату к вашему компьютеру, то выполучите
факсимильный аппарат. Благодаря этим платам вы можете передать факс на любой
факсимильный аппарат или на любую факс-модемную плату в мире.
Факс-модемные платы можно использовать и как обычные моде­мы.
Програмное обеспечение, обслуживающее факс-модемные платы, позволяет
преобразовывать данные в различных форматах к формату факсимильныхаппаратов.
Например, программа Quick Link II Fax позволяет передавать на факс-машины и
другие факс-модемы следу­ющие данные: текст, файлы в форматахTIFF, IMG
подготовленные программой GEM Artline или Ventura Pablisher, BMP из Microsoft
Windows, CUT из Dr.Halo и PCX из Paintbrush.
Некоторые модемы позволяют даже послать звуковое письмо. Они обеспечивают запись
и последующее воспроизведениеречевого сигнала с помощью встроенных
аналогово-цифрового и цифроанало­гового преобразователей.