Телекоммуникационные технологии. Том 1

       

Набор AT-команд модемов


Семёнов Ю.А. (ГНЦ ИТЭФ), book.itep.ru

AT-команды посылаются ЭВМ или терминалом модему через последовательный интерфейс RS-232 (модем должен быть при этом в командном режиме). Все эти команды начинаются с префикса AT, за исключением A/, A> и +++. Код A/ вызывает выполнение модемом предыдущей команды, A> заставляет модем выполнять предыдущую команду до 9 раз или пока не будет нажата какая-либо клавиша терминала или управляющей панели модема, или пока не будет установлена связь с удаленным модемом. Команда +++ (ESC-последовательность) переводит модем в командный режим или возвращает его в режим передачи данных.

Таблица 10.9.1. Стандартные AT-команды

Обозначение командыОписание функции команды
AВключает режим отклика (снимается трубка, выполняется подключение к линии)
+ B0Выбирает режим CCITT V.22 (1200бит/с, по умолчанию)
B1Выбирает для коммуникации стандарт Bell 212A (1200 бит/с)
D

Вход в базовый режим, набор номера и попытка соединения с удаленным модемом.

Числа и модификаторы, применимые с командой D:
0-9,#,* - цифры набора номера. Ниже следуют модификаторы набора.
P - Импульсный набор.
T - Тоновый набор.
R - Начинает вызов в режиме отклика. Вводится как последняя цифра.
S - Набирается номер, записанный в памяти.
W - Ожидание длинного гудка перед набором (длительность ожидания определяется S7, по умолчанию 30сек).
, - Пауза на время, заданное S8 (по умолчанию 2сек).
; - Возврат в командный режим после набора номера.
@ - Ожидание 5 сек. молчания прежде чем продолжить, в противном случае возврат (NO ANSWER).

DLНабор номера, использованного последним.
DSnНабор номера, записанного в EEPROM в позиции n(0-9).
E0Запрет символьного отклика в командном режиме.
+ E1Разрешает символьный отклик в командном режиме.
FnПереключение между дуплексным и полудуплексным режимами (n=0 - полудуплексный; n=1 - дуплексный).
H0Вешание трубки и отключение от линии
H1Снятие трубки и подключение к линии
I0Отображение информации о модеме (идентификационный код)
I1Отображение результата проверки контрольной суммы ROM (EPRROM).
I2Проверяется состояние внутренней памяти ROM и возвращается сообщение OK или CHECKSUM ERROR.
I3Выдается версия модема
I4Модем передает ЭВМ строку, заданную производителем модема.
I5Выдается код страны производителя.
I6Выдается код модели модема
L0-7Управление громкостью динамика (по умолчанию L4).
M0Громкоговоритель всегда выключен.
+ M1Громкоговоритель включен пока не обнаружена несущая.
M2Громкоговоритель всегда включен.
M3Громкоговоритель включен после набора последней цифры и выключается после детектирования несущей.
N0-7Управление громкостью звонка. N0 запретит звонок при приходе сигнала вызова.
OВозвращение в состояние on line.
PИмпульсный набор
+ Q0Модем возвращает код результата (по умолчанию)
Q1Модем не возвращает код результата
Q2Модем возвращает код результата, но отключается после ответа на звонок.
Sr=nЗаписывает в S-регистр r код n, n должно быть десятичным числом в интервале 0-255.
Sr ?Отображает код, записанный в регистре r.
+ TТоновый набор (по умолчанию)
V0Отображает код результата в сжатой цифровой форме.
+ V1Отображает код результата в символьной форме (по умолчанию)
XnОпции отображения работы и кодов результата (по умолчанию X5). Определяет набор сообщений, управляет определением сигнала “занято” и проверкой наличия гудка.
YnОпределяет способ отключения модема от линии. Команда Y1 заставляет модем повесить трубку, если от удаленного модема получен сигнал BREAK. Команда Y0 запрещает прерывать связь при получении длительного сигнала BREAK
WnЗаписывает текущую конфигурацию модема в профайл n.
ZnУстанавливает конфигурацию модема из профайла n (n=0-3). Z4 устанавливает заводской набор параметров модема.
<
Символ “+” указывает на то, что данный режим является режимом по умолчанию.

Команда X0 заставляет модем посылать сообщения в короткой форме. Номер набирается после паузы вне зависимости от наличия гудка. Состояние “занято” не распознается. После команды X1 модем посылает сообщения в полной форме. Команда X2 отличается от X1 и X0 тем, что набор номера выполняется лишь при наличии гудка. Команда X3 требует полной формы сообщений, номер набирается после паузы вне зависимости от наличия гудка, сигнал занято идентифицируется. Команда X4 сходна с X3, но требует для набора наличия гудка. При получении команд X2 или X4 модем разрывает связь и кладет трубку, если удаленный модем переведет линию в состояние BREAK на 1,6 секунды.

Существует несколько команд вывода справочной информации (работают не на всех модемах):
$справочная информация по базовому набору команд;
&$справочная информация по расширенному набору команд (названия команд начинаются с символа &);
*$справочная информация по улучшенному набору команд.
Таблица 10.9.2. Команды модема из расширенного набора (различие для разных типов модемов здесь может быть значительным).
КомандаОписание
&B0DTE/DCE скорость следует за быстродействием линии.
+ &B1DTE/DCE скорость зафиксирована на уровне заданном DTE (300-76800 бит/с, режим по умолчанию)
&C0Предполагает, что несущая всегда присутствует (делает CD=ON)
+ &C1CD отслеживает наличие несущей (по умолчанию.)
&D0Игнорируется DTR сигнал, предполагает DTR=ON.
&D1Переключение DTR OFF->ON вызывает набор номера по умолчанию.
&D2DTR OFF вызывает отключение от линии и переход модема в командный режим.
&D3Аналогична &D2, но вызывает также загрузку профайла 0.
&FЗагружает в RAM заводской набор параметров модема.
&K0Никакого контроля ошибок.
&K1MNP4 (включая MNP3)
&K2MNP4 + MNP5
&K3V.42 (эквивалентно &K1)
+ &K4V.42 + V.42bis (эквивалентно &K2)
+ &L0Выход в обычную городскую телефонную сеть (по умолчанию)
&L12-проводная выделенная линия.
&L24-проводная выделенная линия


Пример записи AT-команды: ATDnnnnnnnnn, где последовательность символов n включает номер телефона и модификаторы набора (к модификаторам можно отнести P и T, указывающие на импульсный и тоновый тип набора соответственно. Допускается и более удобная для восприятия запись: ATD 8, (095) 123-94-42.

Таблица 10.9.3. Сообщения модема (коды результата Xn)
КодНазваниеОписание
0OKКоманда выполнена без ошибок
1ConnectУстановлена связь на скорости 300 бит/с (после реализации команд X1, X2, X3, X4) или на скорости 600, 1200, 2400 бит/с (после команды X0)
2RingОбнаружен сигнал звонка. Этот код модем передает ЭВМ каждый раз, когда поступает сигнал вызова.
3No CarrierПотеряна или не получена несущая от удаленного модема.
4ErrorОбнаружена ошибка в командной строке, переполнен командный буфер или обнаружена ошибка контрольной суммы.
5Connect 1200Установлена связь на скорости 1200 бит/с (см. команды X1, X2, X3, X4).
6No Dial ToneНет сигнала (гудка) при снятии трубки (см. команды X2, X4)
7BusyОбнаружен сигнал <занято> после набора номера.
8No AnswerОтклик может быть получен при использовании в командной строке символа @, если не выполнено условие - 5-сек тишины.
9RingingПришел вызов (звонок)
10Connect 2400Установлена связь на скорости 2400бит/с (см. команды X1, X2, X3, X4).
11Connect 4800Установлена связь на скорости 4800бит/с
12Connect 9600Установлена связь на скорости 9600бит/с
14Connect 19200Установлена связь на скорости 19200бит/с
15Connect 7200Установлена связь на скорости 7200бит/с
16Connect 12000Установлена связь на скорости 12000бит/с
17Connect 14400Установлена связь на скорости 14400бит/с
18Connect 16800Установлена связь на скорости 16800бит/с
19Connect 38400Установлена связь на скорости 38400бит/с
20Connect 57600Установлена связь на скорости 57600бит/с
21Connect 76800Установлена связь на скорости 76800бит/с

Содержание раздела