АТ-команды
Чтобы использовать модем, вам не обязательно знать команды AT, но иногда применение правильной инструкции способно дать модему второе дыхание.
Практически каждый
модем рекламируется как Hayes-совместимый, т. е.
понимающий большинство команд языка AT,
разработанного компанией Hayes в 70-е годы. Чтобы
использовать модем, вам не обязательно знать
команды AT, но иногда применение правильной
инструкции способно дать модему "второе
дыхание". Имейте в виду, что не все команды
работают со всеми модемами, а каждая конкретная
модель поддерживает лишь основные команды языка
Hayes и имеет набор своих собственных (и весьма
полезных) команд. Подробная информация об этом
содержится в документации на модем и на
Web-сервере поставщика. Чтобы воспользоваться
командами AT, запустите утилиту Hyper Terminal
или Терминал, входящий в пакет Norton
Commander 5.0.
AT - команды
AT |
начало (префикс)
командной строки.
После получения этой команды модем
автоматически подстраивает скорость передачи и
формат знака к параметрам терминала. |
A |
ручной ответ.
Команда переключает модем из командного
режима на режим ожидания сигнала несущей
вызывающего модема. После получения
сигнала несущей, модем реализует процедуру
положительного ответа на вызов и действует
как переключенный на процедуру
автоматического ответа. Если модем работает на
выделенных линиях связи, то отвечает
несущей без указания частоты. В этом случае
если автоматический ответ (auto-answer) выключен (S0=0) и
происходит вызов, то для получения связи
надо передать команду ATA. |
A/ |
модем повторяет
предыдущую командную строку.
Команда подается без префикса (AT) и нажатия . |
Bn |
выбор коммуникационного стандарта:
n = 0 CCITT V.21, V.22, V.22bis,
n = 1 BELL 103/202A. |
Ds |
автоматический набор номера.
После получения этой команды, модем начинает набор номера и при получении связи переходит в режим передачи.
Команда состоит из телефонного номера, в состав которого могут входить следующие управляющие параметры:
s = P обозначает, что цифры телефонного номера идущие после символа P модем должен набирать импульсно (используются символы 0-9).
s = T обозначает, что цифры телефонного номера идущие после символа T модем должен набирать частотой (разрешено использовать символы 0-9, A-D, * а также #).
s = , обозначает перерыв перед набором следующей цифры (2s).
s = ; если применяется как последний знак в командной строке, то модем после набора номера переходит в командный режим работы.
s = @ модем ожидает 5-секундной тишины на линии, если она не появится в течении 30s (содержимое регистра S7), модем отключается, и отвечает NO ANSWER.
s = ! если знак ! стоит перед знаками последовательности набора, модем переходит в состояние ON HOOK (кладет трубку) на 0,5s, а затем снова перейдет в состояние OFF HOOK (снимает трубку).
s = S модем набирает телефонный номер записанный в памяти EEROM.
s = R при записи как последний символ в командной строке, устанавливает модем после набора номера в режим answer, но только в том случае, если модем звонит к модему originate.
s = W модем ожидает ответ станции (длинный гудок) перед дальнейшим набором телефонного номера (например выход на автоматическую междугороднюю связь). |
En |
местное эхо ON/OFF.
После команды E1 модем возвращает эхо каждого знака передаваемого ему, что позволяет узнать, как действительно работает командная линия.
Команда E0 блокирует эту функцию.
n = 0 эхо выключено,
n = 1 эхо включено |
Hn |
управление линией.
Команда используется прежде всего при окончании телефонной связи:
n = 0 отключение модема от линии,
n = 1 подключение модема на линию. |
In |
производственный код и контрольная сумма:
n = 0 сообщение сода продукта,
n = 1 подсчет контрольной суммы программы содержащейся в ROM (EPROM),
n = 2 модем проверяет состояние внутренней памяти ROM и возвращает сообщение OK или ERROR. |
Ln |
установка громкости сигнала встроенного динамика (громкоговорителя).
n = 0,1 низкая
n = 2 средняя
n = 3 высокая |
Mn |
управление динамиком (громкоговорителем).
n = 0 динамик выключен,
n = 1 динамик включен только во время набора номера и выключается после обнаружения несущей,
n = 2 динамик включен все время,
n = 3 динамик включается после набора последней цифры номера и выключается после обнаружения несущей отвечающего модема. |
Qn |
управление ответом модема.
n = 0 ответ включен,
n = 1 ответ выключен.
Независимо от состояния Q0 или Q1 модем всегда сообщает содержание S-регистров, код продукта, контрольную сумму и результаты теста (смотри команды S, I, а также &T). |
O |
после прохождения
команды, модем настраивается на режим передачи данных и отвечает CONNECT (если до этого
он находился в командном режиме работы). |
Sr |
управление S-регистрами. |
Sr? |
считывание содержимого S-регистра номер r. |
Sr=nnn |
ввод числового параметра nnn в S-регистр номер r.
Все команды модифицируют содержимое одного или более S-регистров. Некоторые S-регистры содержат временные параметры, которые можно поменять только командой S. |
Vn |
выбор вида ответа модема.
n = 0 ответ цифровым кодом,
n = 1 ответ в символьном виде на английском языке. |
Стандартный набор ответов модема |
Ответ в символьном виде |
Ответ цифровым кодом |
Значение ответа |
OK |
0 |
Модем выполнил команду |
CONNECT |
1 |
Модем подключен со скоростью 300bps. После команды X0 возможна работа со скоростью 600, 1200, 2400 bps. |
RING |
2 |
Модем обнаружил правильный сигнал звонка. Ответ выдается всегда, независимо от режима работы. |
NO CARRIER |
3 |
Модем потерял несущую или не получил ответ от удаленного модема. |
ERROR |
4 |
Ошибка в командной строке. Командная строка длиннее 40 символов, или ошибка в контрольной сумме (смотри команду L2). |
CONNECT 1200 |
5 |
Модем подключен со скоростью 1200 bps, (смотри команды X1, X2, X3, X4). |
NO DIALTONE |
6 |
Отсутствие сигнала станции коммутации (смотри команды X2, X4). |
BUSY |
7 |
Номер (канал) занят. |
NO ANSWER |
8 |
Ответ получается в случае использования в командной строке управляющего символа @ и если не выполнено условие - 5s тишины (см команду D). |
CONNECT 600 |
9 |
Модем подключен со скоростью 600 bps, (смотри команды X1, X2, X3, X4). |
CONNECT 2400 |
10 |
Модем подключен со скоростью 2400 bps, (смотри команды X1, X2, X3, X4). |
Xn - выбор групп ответов модема связанных с процедурой набора номера: |
|
X0 |
X1 |
X2 |
X3 |
X4 |
Сообщение о связи |
1 |
2 |
2 |
2 |
2 |
Опоздание (S6 s) |
да |
да |
нет |
да |
нет |
Ожидание сигнала коммутатора |
нет |
нет |
да |
нет |
да |
Определение сигнала занято номера |
нет |
нет |
нет |
да |
да |
Сообщение о связи 1 |
обозначает, что модем после установления связи сообщит CONNECT, независимо от скорости работы. |
Сообщение о связи 2 |
обозначает, что модем после установления связи сообщит следующий ответ в зависимости от скорости работы: CONNECT, CONNECT 600, CONNECT 1200 CONNECT 2400.
Ответ CONNECT обозначает работу со скоростью передачи данных - 300 bps. |
Опоздание (S6 s) |
обозначает, что модем перед набором телефонного номера, ожидает определенное в S-регистре S6 время. Во многих странах существует требование определения сигнала централи перед набором телефонного номера. |
Ожидание сигнала коммутатора |
обозначает, что модем будет ожидать сигнала станции 5s и по истечении этого времени выдаст сообщение NO DIALTONE и перейдет в командный режим работы. |
Определение сигнала занято номера |
обозначает, что модем в случае занятости вызываемого номера, выдаст сообщение BUSY, и возвратится в командный режим работы. |
Yn |
способ отключения модема от линии.
Существуют два способа отключения модема от линии:
- обыкновенный, когда модем получит неактивный сигнал DTR,
- когда модем получит от удаленного модема сигнал перерыва.
Команда ATH0 направляет сигнал перерыва, который длится 4 s.
n = 0 модем отключается обыкновенно (см. команду &D),
n = 1 модем отключается после получения сигнала из линии. |
Z |
обнуление модема (процессор считывает конфигурацию модема из памяти NOVRAM). |
+++ |
последовательность выхода.
Благодаря этой команде можно перейти из режима передачи в командный режим
работы модема без перерыва связи. Команда требует тишины перед и после направления
последовательности выхода. Величина этого времени определена в регистре S12 (обычно 50 = 1s).
Десятичную величину знака ASCII, который является знаком последовательности выхода содержит регистр S2 (обычно 43 те. '+'). |
:: назад
|