|
Управление модемом
Объясняет, как управлять модемом с помощью AT-команд и как модем должен отвечать на эти команды. В главе 3 описан формат AT-команд. Здесь также описаны возможные сообщения, выдаваемые модемом в ответ на введенную команду. Обычно пользователи работают с модемом посредством развитых телекоммуникационных программами, в этом случае нет необходимости управлять модемом посредством AT-команд напрямую и анализировать непосредственные ответы модема. Программа сама посылает команды и обрабатывает сообщения модема. Иными словами, весь интерфейс низкого уровня скрыт от пользователя, которому обычно не важно, что именно телекоммуникационный пакет посылает модему и какие сообщения получает в ответ, для того, чтобы, например, передать файл или положить письмо в ящик электронной почты, так как Вас, как правило, интересует конечный результат, а не способ его достижения. Впрочем, если Вам по каким либо причинам требуется управлять модемом напрямую, то сведения изложенные в настоящей главе окажутся как нельзя кстати. Ввод команд
С помощью AT-команд Вашему модему можно приказать исполнять большое количество разнообразных функций, среди которых - набор номера, ответ удаленному модему, действия по передаче факсов и многие другие. Однако, модем воспринимает AT-команды тогда и только тогда, когда он находится в командном режиме. Чтобы ввести AT-команду, сделайте следующее:
Как исправить неправильно набранную команду. Если при наборе команды вы обнаружили ошибку, то для ее
исправления следует клавишей Как набирать команды в виде, наиболее удобном для восприятия.
Чтобы сделать набранную командную строку более удобочитаемой и,
тем самым, избежать возможных ошибок, допустимо отделять отдельные команды и
поля параметров знаками препинания и пробелами. В любом месте командной строки
допускается ставить пробел. В телефонном же номере допустимы кроме пробелов и
знаки скобок, и дефис. При разборе командной строки модем игнорирует пробелы и
указанные знаки препинания. Однако, длина строки команд вместе с этими знаками
не должна превышать 40-символьный лимит.
Ввод командных строк длиной более 40 символов
Если Вы хотите ввести строку длиной более 40 символов, вам
придется разбить ее на две отдельные строки и вводить каждую отдельно. В случае,
если требуется ввести очень длинную команду набора номера D (к примеру, команда
для набора номера и выдачи тонового пароля может оказаться значительно длиннее),
наберите сначала первую часть номера, длиной до 39 символов (вместе с самой
командой AT, D и прочими символами), в конце поставьте ';' и нажмите
Пропуск параметров (параметры по умолчанию)
Некоторые команды требуют задания числовых параметров, однако
при вводе эти параметры можно опустить, тогда модем, исполняя команду, будет
использовать параметр, принятый по умолчанию. Везде в этом документе, где явно
не указано иное, значением параметра по умолчанию является 0.
Например, команда Q - "Задать режим выдачи ответов" имеет
параметр 0 или 1.
Q0 - говорит модему, что тот обязан сопровождать каждую выполняемую команду
подтверждающим сообщением. Другим хорошим примером является строка инициализации,
используемая программой MTEZ с некоторыми модемами, часто вызывающая удивление
пользователей: которую можно записать в более понятном виде, как AT S0=0 Q0
(т.е. запретить автоматический ответ и разрешить выдачу подтверждений).
Повторное выполнение командной строки.
Следует отметить, что последняя введенная командная строка
хранится в памяти модема до тех пор, пока ее не заменит следующая команда.
Поэтому имеется возможность повторить исполнение последней командной строки. Для
этого служит специальная команда A/. Поскольку при выключении питания или
аппаратном сбросе содержимое буфера командной строки разрушается, очевидно, что
в этом случае пытаться повторить последнюю командную строку бессмысленно.
Внимание! Команда A/ набирается без стандартного префикса AT
и не завершается клавишей Команда A/ обычно используется для повторного выполнения
длинной команды или для перенабора телефонного номера, который был занят.
Команду A/ можно использовать неоднократно, до тех пор, пока не
будет набрана новая командная строка, начинающаяся с AT, или не произойдет сброс
модема или выключение питания.
Сведения о командах.
Теперь, когда вы знаете, что такое команды и как они задаются,
обратитесь к следующим главам для полного описания доступных команд.
Когда Вы послыаете модему какую-либо команду, модем выдает в
ответ сообщение - обычно OK. Вы можете никогда не увидеть этих сообщений, так
как некоторые телекоммуникационные программы перехватывают и самостоятельно
обрабатывают сообщения, до того, как они могут быть выведены на дисплей. Однако,
если Вы собираетесь непосредственно управлять модемом, Вам необходимо знать,
какие сообщения и в каких случаях выдает модем.
В данном разделе рассматриваются все виды сообщений, выдаваемые
модемом.
Текстовые и числовые сообщения
Модем, в зависимости от настроек, может посылать два типа
сообщений - в виде текста и в виде чисел (соотвественно, называемые текстовыми
или числовыми сообщениями). Каждому текстовому сообщению однозначно
соответствует числовое и наоборот. Как правило, большинство программ и
пользователей, работающих с модемом непосредственно, используют более удобные
текстовые сообщения, на которые модем настроен по умолчанию. Однако в этом
тексте для краткости иногда будут указаны только соответствующие им числовые
сообщения. (См. Табл. 3-1).
Если Ваше программное обеспечение требует числовых ответов, то
перевести модем в этот режим можно при помощи команды V0.
Запретить получение каких либо ответов вообще (например, для
модема, подключенного к принтеру) можно командой Q1.
Наборы сообщений
Модем может работать в одном из пяти режимов, задаваемых
командой Xn. Каждый из этих режимов предусматривает свой метод набора номера и
каждому из них соответствует определенный набор сообщений, которые может
выдавать модем в ответ на введенную команду или в ответ на возникшую ситуацию,
например обнаружение сигнала "занято" или установление соединения. Так как
команда Xn влияет не только на вид сообщений модема, но и на метод набора
номера, описание этой команды и соответствующих сообщений находится в Главе 4, в
разделе "Методы набора номера".
Сообщения модема при работе с протоколами коррекции ошибок и сжатия
данных
Ваш модем поддерживает протоколы исправления ошибок и сжатия
данных MNP и V.42/V.42bis. При работе с этими протоколами модем выдает
дополнительные сообщения, перечисленные в Таблице 3-1.
Чтобы разрешить выдачу расширенного набора сообщений, следует пользоваться
командой Wn.
Внимание! Команду W, разрешающую выдачу расширенных сообщений
при прохождении фазы выбора протокола коррекции-сжатия данных в момент
установления соединения между двумя модемами, следует отличать от модификатора
W в команде D (набор номера). По умолчанию принимается установка W0, запрещающая выдачу
расширенного набора ответов, если регистр S95=0 (заводская установка). В режиме
W0 все сообщения "CONNECT XXXX" соответствуют скорости обмена данными между
модемом и Вашим терминалом (DTE speed).
Командой W1 разрешается выдача сообщений "CARRIER" и
"PROTOCOL". В этом режиме сообщения "CONNECT XXXX" также указывают скорость
обмена данными с терминалом, последнее справедливо в случае, если регистр S95=0.
Если Вы желаете, чтобы сообщение "CONNECT XXXX" указывало
физическую скорость передачи данных в канале (DCE speed) вместо скорости обмена
с терминалом, введите команду W2. Эта команда запрещает выдачу расширенного
набора ответов, если регистр S95=0.
Модемы, поддерживающие протоколы исправления ошибок и сжатия
данных MNP и V.42/V.42bis, обрабатывают также команду V1. В этом режиме все
сообщения "CONNECT" будут содержать суффикс /ARQ, если модем установил
соединение с использованием протокола коррекции ошибок. Этот режим
устанавливается по умолчанию.
Внимание! Многие программы могут работать некорректно в
режиме W1, а некоторые - и в режиме W2, поэтому не рекомендуется изменять
заводские настройки, если вы не уверены, что ваша программа способна работать
с расширенными сообщениями. С другой стороны, коммуникационные программы,
использующие современные протоколы передачи файлов (например, Zmodem), могут
работать неустойчиво, если установлен режим W0 или отсутствуют суффиксы /ARQ в
режиме W2.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||