Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
modem.pdf
Скачиваний:
27
Добавлен:
17.05.2015
Размер:
3.06 Mб
Скачать

Рис.97

HyperTerminal: Ввод номера телефона и выбор одного из модемов, информация о которых занесена в Windows 95

Рис.38

HyperTerminal: Запуск набора номера

Работа с WinFax

Программа WinFax — одна из самых распространенных факсо вых программ для Windows (ее последнюю версию вы наверняка найдете на какой нибудь из BBS или же в Интернете по адресу http://www. Symantec, com/winfax/). Рассмотрим вкратце, как установить и настроить WinFax Pro версии 7.5 для Windows 95, а также послать и принять с ее помощью факс.

Программа инсталляции WinFax устанавливает в систему особый драйвер, позволяющий «подставить» факс модем вместо

принтера и таким образом послать факс иэ любого приложения Windows командой Print из меню File (стр. 134). Кроме того, при установке вам нужно будет ввести имя каталога для хранения принятых и подготовленных к отправке факсов, указать ваш номер телефона, а также подтвердить характеристики вашего факс модема (которые программа не только запрашивает у операционной системы, но и определяет самостоятельным тестированием модема).

На одном из последовательно возникающих окон настройки вы увидите флажок «Pulse dial», который должен быть взведен (помечен галочкой). Кстати, поле Dial Prefix на том же окне должно содержать не команду набора номера (как одноименный параметр в других программах), а «общую часть» всех номеров — например, девятку и запятую (паузу), что может понадобиться для учрежденческих АТС.

Дальнейшая настройка производится командами из меню Setup самой программы WinFax. Команда Program позволяет ука зать ваше имя и название организации, которые будут включаться в титульный лист факса (панель User) и содержимое строки заголовка в отправляемом факсе (панель Header). Команда Dialing позволяет установить режимы работы модема (панель General): распознавание сигнала «занято» (Detect busy tone) и гудка станции (Detect dial tone). Чуть ниже задается число попы ток дозвона при посылке факса (Dial Retries) и пауза между ними (Retry Time). Вероятнее всего, значения по умолчанию этих параметров подойдут для большинства случаев.

Установить режим автоматического приема факсов без участия пользователя можно, выбрав команду Automatic Receive из меню Receive. После этого в «лотке» панели задач Windows, рядом с часами, появится маленький модемообразный значок «Auto Receive Mode», символизирующий готовность модема снять трубку при звонке и начать принимать факс. Параметры этого режима устанавливаются командой Receive из меню Setup. На панели General можно задать количество звонков, по истечении которого модем снимет трубку, а также установить расписание, по которому программа будет сама переключаться в режим ав топриема (кнопка Schedule). Панель After Receive позволяет зака зать, что делать программе после успешного приема факса:

уведомить пользователя звуковым сигналом (Notify), запустить на его обработку модуль OCR (Recognize), распечатать полученный факс (Print) или показать его на экране (View).

Отправка факса, как вы уже знаете, осуществляется коман дой Print из любого приложения Windows, имеющего таковую (обычно команда эта расположена в меню File). Предварительно нужно выбрать «принтер» под названием «WINFAX» в окне

Printer Setup или Настройка печати той же программы. Можно также установить его как «принтер по умолчанию» в Панели управления Windows (в Windows 95 — в папке Принтеры [Printers]). Вслед за окном приложения, уведомляющем о процессе печати, вы увидите окно WinFax (рис. 29).

В этом окне вам предлагают указать имя (То) и номер телефона (Number) получателя факса. Кнопкой Phonebook можно открыть «телефонную книжку», в которой записаны ваши любимые номера телефонов. Если вы хотите отправить факс по нескольким номерам, нажмите кнопку Add to List, которая добавит введенные данные в список Recipient list. Кнопкой Delivery можно будет затем установить для каждого получателя расписание отправки факса (например, еженедельно по пятницам в 19:00). Флажок Cover page позволяет предпослать факсу один из поставляемых с программой титульных листов (Cover) или же быстро напечатать свой собственный (Fill In). Наконец, с помощью кнопки Options можно установить разрешение факса и некоторые дополнительные параметры.

Рис.89

WinFax: Посылка факса

Настройка модема и коммуникационной программы

Если «первый звонок» вам удалось произвести без особого труда и вам не терпится начать практическое исследование мира теле коммуникаций, вы вполне можете пропустить этот раздел и перейти к следующей главе, где пойдет подробный рассказ о BBS. Если же у вас что то не заладилось, то, скорее всего, требуется до полнительная настройка коммуникационной программы и (с ее помощью) модема. Об этой настройке здесь и пойдет речь.

В отличие от предыдущего раздела, здесь мы не будем говорить о какой либо конкретной программе. Я постараюсь дать вам общие сведения, применимые к возможно большему количеству программ и модемов. Конечно, у такого подхода есть и недостаток: чтобы применить полученные сведения к конкрет ной программе, требуется некая доля сообразительности. И все же, даже если не все получится с первого раза, понимание того, как и почему все работает в общем случае, поможет вам разобраться в документации к вашей программе или модему.

Здесь предполагается, что у вас уже установлен модем и ин сталлирована коммуникационная программа, а в ней правильно указаны основные опции: номер порта, номер линии IRQ и метод набора. Эту минимальную настройку мы рассматривали в начале главы.

Программирование модема

Мы уже не раз упоминали на страницах этой книги об АТ коман дах, с помощью которых модему даются инструкции произвести те или иные действия. Здесь мы обсудим подробнее, как пользо ваться АТ командами, а также вкратце рассмотрим такие важные вещи, как регистры (registers) и энергонезависимая память (non volatile memory) модема.

АТ:команды и строки

Как вы уже знаете, АТ команды состоят из трех компонентов: символов «AT», самой команды (обычно она представляет собой одну латинскую букву, иногда в сопровождении цифры или другого символа) и возврата каретки (т. е. нажатия клавиши Еп

ter). Помимо этого, должные выполняться следующие правила построения АТ команд:

все латинские буквы в командах могут быть как заглав ными, так и строчными (смысл команды от этого не ме няется), но в префиксе «AT» буквы могут быть только обе заглавными или обе строчными (т. е. нельзя писать «аТ» или «At»);

между символами AT и командой, а также внутри команды (например, между буквой и цифрой) могут стоять пробелы, но между символами «А» и «Т» пробел недопус тим;

несколько АТ команд можно объединять в одну строку, при этом символы AT пишутся только один раз в начале этой строки, а между командами в строке также могут стоять пробелы (однако любые команды, расположенные в строке после команды сброса ATZ, игнорируются);

общая длина АТ команды или строки команд не должна превышать 40 символов (не включая символы «AT», пробелы и возврат каретки);

существуют две особые команды, которые не начинаются с символов «AT»: так называемая escape последовательность, которая переводит модем из режима передачи данных в режим команд («+++»), и команда повторения («а/»), которая заставляет модем выполнить последнюю введенную команду еще раз.

Список стандартных АТ команд с объяснениями приведен в приложении 2 на стр. 293. Если ваш модем Hayes совместимый, то он обязательно должен понимать все перечисленные команды; но кроме того, в нем наверняка будут дополнительные, свои ко

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

ДТ:команды и команАЫ DOS

АТ команды модема — совсем не то же самое, что команды, набираемые в строке приглашения DOS. Если вы попытаетесь вста вить АТ команду в autoexec.bat, то, скорее всего, получите в ответ «Bad command or file name» — откуда DOS знать, что эта команда

предназначена для модема? Набор АТ команд с клавиатуры имеет смысл только тогда, когда то, что вы набираете, отправляется прямиком на тот порт, на котором установлен модем (а ответы модема, в свою очередь, пересылаются с порта на экран компьютера). Обеспечить это может только коммуникационная программа.

Если вы хорошо знакомы с компьютерами, то такой способ управления модемом — с помощью команд, набираемых на кла виатуре, — может показаться вам несколько старомодным. Дей ствительно, коммуникационные программы позволяют выпол нять основные операции с помощью меню и «горячих» клавиш, что значительно удобнее. И все же стоит познакомиться с АТ ко мандами поближе, так как любая программа, в конечном счете, общается с модемом с их помощью, и если между программой и модемом возникло непонимание, исправить дело можно лишь путем изменения АТ команд, посылаемых программой.

Большинство программ позволяют посмотреть и изменить АТ команды, с помощью которых они дают инструкции модему. Как правило, эти команды объединены в строки, каждая из которых служит для выполнения некоторой последовательности действий. Так, строка инициализации предназначена для начальной настройки параметров модема — программа посылает ее в модем при своей загрузке, и в строке инициализации собраны АТ команды, которые должны выполняться один раз в начале работы (можно сказать, что строка инициализации для модема — то же, что файл autoexec.bat для DOS).

Рассмотрим, какие наборы (строки) команд употребляются в коммуникационных программах, для чего они служат и какие ко манды они обычно содержат. Попытайтесь найти, где в вашей коммуникационной программе можно увидеть и отредактировать эти строки (соответствующее диалоговое окно, скорее всего, вызывается одной из команд меню настройки, которое может называться Setup, Settings, Options и т. п.). Сравните ваши строки с приведенными здесь примерами и (в качестве упражнения) попробуйте разобраться с помощью приложения 2 на стр. 293, что означают содержащиеся в них команды. Изменяя строки команд или создавая новые, помните, что их длина не должна превышать 40 символов.

Строка инициализации (initialization string)

Строка инициализации, используемая для настройки модема при запуске программы, может выглядеть, например, так:

AT S0=0 00 Е1 М1 Х4 М—АТ&СГМ'

Кроме АТ команд, вы видите здесь специальные символы, которые не передаются в модем, а обрабатываются самой программой. Они имеют следующее значение: «~» (тильда) означает паузу длительностью около 0,2 сек, а *'М» — нажатие клавиши Enter (таким образом, эта строка инициализации как бы состоит из двух строк). Конечно же; интерпретация этих специальных символов зависит целиком от программы (наш пример взят из программы Telemate; в других программах вместо «"М» иногда употребляется символ «|»).

Приведенная строка инициализации рассчитана на любой Hayes совместимый модем. В документации к вашему модему вы можете найти другую строку инициализации. Например, для мо дема US Robotics Sportster рекомендуется следующая строка ини циализации:

AT &F &АЗ &В1 &Н1 &R2 &S1 Х4 &КЗ

Чтобы разобраться в ней, вам, возможно, потребуется поко паться в инструкции, так как некоторые из этих команд не входят в стандартный набор АТ команд. Рекомендуемые строки инициализации для разных типов модемов собраны в Интернете " на сервере http://www.allwindows.com/allmodems.htmL

Префикс набора номера (dial prefix)

Префикс набора номера — это просто АТ команда, которая за ставляет модем снять трубку и набрать номер. «Префиксом» она называется потому, что к этой команде программа приписывает сам номер телефона, беря его, например, из списка номеров, а за тем уже получившуюся строку посылает в модем.

Команда набора номера в Hayes совместимых модемах одна и та же — «ATD», но после буквы «D» и перед номером телефона может стоять еще одна буква, указывающая метод набора (стр. 139) — тоновый или импульсный (соответственно «Т» или «Р»). Более того, во многих программах единственный способ из менить метод набора — ручное редактирование префикса набора номера. Поэтому важно понимать, что означают команды «ATDT» и «ATDP» и какая из них должна стоять в поле «dial prefix».

Сам номер телефона в команде «ATD» не заключается в какие либо кавычки или скобки. Поэтому в префикс набора номера можно занести, например, часть наборной последовательности, общую для всех номеров. Так, если АТС вашего учреждения требует набора девятки перед городским номером, вы можете за писать в префикс набора номера «ATDP9,» (запятая означает паузу в 2 секунды, см. стр. 166). Точно так же можно упростить звонки в другой город, вставив в префикс набора номера вызов

межгорода и нужный код — например, «ATDP8W095» («W» означает «дождаться гудка», см. стр. 166).

Строка разъединения (hangup string)

Эта строка посылается в модем, когда пользователь хочет разорвать соединение и повесить трубку. Она может выглядеть, например,так: ^

~1)"""+++"'"АТНО"М"'

(комбинация символов «"#» — это команда коммуникационной программе, означающая «остановить обмен данными между ком пьютером и модемом»). Эта строка состоит из escape последова тельности, которая переключит модем в режим команд, и АТ команды, которая заставит модем повесить трубку.

До и после escape последовательности в этой строке стоят паузы по 0,6 сек (один символ «~» означает паузу в 0,2 сек). Это необходимо для срабатывания escape последовательности, так как модем слышит ее только на фоне достаточно длительной

.тишины.

Строка переключения в режим ожидания звонка (auto answer string)

Эта строка служит для переключения модема в режим ожидания звонка (auto answer mode). Для Hayes совместимого модема она выглядит так:

+++ АТ 30=ГМ

Как видите, эта строка также содержит escape последователь ность и одну АТ команду установки значения регистра (стр. 293).

В обе стороны

Ехсаре последовательность, состоящая из трех плюсов, переводит модем из режима передачи данных в режим команд, но не требует, чтобы он прерывал соединение. Дав модему какое то количество команд или выяснив значение каких то параметров, вы можете вернуться на связь, не звоня по этому номеру снова, а набрав команду АТ01. Но так дело обстоит только в теории. На практике же после команды АТ01 удаленный модем часто остается на связи, но перестает принимать или передавать данные. В чем же дело?

Оказывается, если коммуникационная программа на том конце линии установлена в режим, при котором она отсылает обратно все полученные от вас символы (а чаще всего так и бывает — именно благодаря этому вы видите на своем экране все, что печатаете на клавиатуре в сеансе связи), то через удаленный модем волей

неволей проходит и «отраженная» Escape последовательность, — которую тот, не подозревая подвоха, и выполняет, переключаясь в режим команд. Вывести его из этого состояния может только вме шательство оператора станции или же разрыв связи и новый звонок. Если вам приходится часто сталкиваться с этой неприятностью,, проще всего изменить код символов, из которых состоит escape последовательность у вашего модема (регистр 82, см. стр. 297).

Сообщения модема (result codes)

В ответ на АТ команды модем выдает особые сообщения — result codes, которые говорят пользователю о результатах выполнения команд (например, об удаче или неудаче установления соедине ния, об ошибке в команде). Эти сообщения выводятся коммуни кационной программой на экран, и хотя большинство из них понятны без объяснений, я приведу здесь полный список этих сообщений (в частности, для того, чтобы вы могли различать со общения модема и программы).

OK — команда выполнена успешно, можно вводить сле дующую команду.

CONNECT (соединение) — установлено соединение. Как правило, это сообщение сопровождается уточняющей ин формацией: например, «CONNECT 14400/V.42bis» оз начает, что модем соединился на скорости 14400 бит/с с протоколом V.42bis (см. также описание команды «AT\V», стр. 298). Иногда, если модем поддерживает разные протоколы коррекции ошибок, он выдает сообщение типа «CONNECT 9600/ARQ» или «CONNECT 9600/REL» (от слова «reliable») без указания конкретного протокола.

RING (звонок) — модем слышит звонок. Если он при этом находится в режиме ожидания звонка, то снимет трубку и будет пытаться соединиться.

NO CARRIER (нет несущей) — это сообщение выдается либо когда соединение разорвалось, например из за шума и помех в линии, либо когда его так и не удалось устано вить (в этом случае «NO CARRIER» может просто оз начать, что на том конце линии не берут трубку).

ERROR (ошибка) — модем не смог понять полученную команду.

NO DIALTONE (отсутствует гудок) — при снятии трубки не слышно непрерывного гудка. Скорее всего, модем не подсоединен к линии (или ваш номер отключили за неуп лату).

BUSY (занято) — модем слышит короткие гудки.

NO ANSWER (нет ответа) — модем встретил символ «@» в строке набора (стр. 166), но не дождался 5 секундной тишины в линии.

Коммуникационная программа, получив одно из этих сообще ний, не только выводит его на экран, но и производит соответ ствующие действия. Так, получив от модема «CONNECT», она переходит в режим терминала, а получив «BUSY», она, после не которой паузы, дает команду снова звонить по тому же номеру (автодозвон). Поэтому некоторые прбграммы позволяют настраи ваться на нестандартные сообщения, если ваш модем их исполь зует, — вы должны будете ввести их в специальном окне, чтобы программа знала, чего ей ждать от модема в тех или иных ситуа циях.

Слова или цифры

Специальная АТ команда ATV (стр. 295) заставляет модем перейти с языка слов на язык цифр: после команды «ATVO» модем будет выдавать вместо сообщений их коды, т. е. числа: 0 вместо «ОК», 2 вместо «RING», 4 вместо «ERROR» и т. п. Столкнувшись с этим, наберите в режиме терминала команду «ATV1», чтобы модем вернулся к английскому языку.

Кроме этих сообщений, модем может выдавать и другую ин формацию. Так, команда «AT&V» заставит модем вывести на экран параметры своей настройки (содержимое регистров, см. ниже).

DTE и DCE

Сокращения «DTE» и «DCE», которые вы наверняка встретите в инструкции к модему, расшифровываются как «Data Terminal Equipment» и «Data Circuit Terminating Equipment» соответственно. Смысл этих страшных аббревиатур примерно следующий: «устройство

— источник и приемник данных» (DTE) и «устройство — преобразователь данных» (DCE), — то есть, попросту говоря, «компьютер» и «модем». Только и всего.

Регистры

Параметры настройки модема хранятся в его регистрах (registers) — специальных ячейках оперативной памяти. Hayes совмес тимый модем должен иметь как минимум 28 регистров, хотя у многих модемов их больше. Регистры обозначаются буквой «S» с соответствующим номером (SO, SI, S2 и т. д.), а специальные АТ команды позволяют узнать содержимое любого из регистров или записать в него другое значение (хотя содержимое некоторых

регистров менять небезопасно — модем может отказаться рабо тать и даже стать неуправляемым).

В регистрах модема хранятся, например, такие значения, как число гудков, после которых модем снимает трубку в режиме ожидания звонка (регистр SO); число секунд с момента снятия трубки, по истечении которых модем решает, что связаться не удалось (S7)1; ASCII код символа, из которого состоит escape по следовательность (S2, по умолчанию «+»). Каждый из регистров может хранить целое число от 0 до 255 (т. е. один байт), но содержимое некоторых регистров интерпретируется модемом не как число, а как набор битов (стр. 50), каждый из которых отвечает за какую то функцию или режим.

Регистры мастерства

Манипулируя содержимым регистров, можно управлять модемом в очень широких пределах. К сожалению, умение распоряжаться регистрами требует знаний, зачастую выходящих за пределы этой книги. Если вы хотите стать настоящим мастером по програм мированию модемов, начните с изучения приложения 2 на стр. 293, где вкратце описаны функции стандартных регистров Hayes совмес тимого модема. В совокупности с материалом гл. 2 это даст вам некоторое представление об искусстве манипулирования регистрами. В инструкции к вашему модему вы тоже найдете описание регистров, но, вероятнее всего, оно будет довольно путаным и невразумительным.

\.

Энергонезависимая память (non:volatile memory)

Помимо регистров, представляющих собой как бы оперативную память модема, в Hayes совместимом модеме есть и постоянное запоминающее устройство — энергонезависимая память. Как по нятно из названия, содержимое этой памяти не пропадает при выключении питания. В энергонезависимой памяти также хранятся параметры настройки модема, и при включении питания они переписываются в рабочие регистры. Кроме того, специальная АТ команда «ATZ» выполняет функции, подобные кнопке «Reset» компьютера, — по этой команде содержимое регистров замещается параметрами из энергонезависимой памяти.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]