Смекни!
smekni.com

Интеллектуальные возможности модемов (стр. 2 из 7)

Таблица 4.2. Расширенный набор АТ-команд

Команда Назначение АТ-команды
&Сп Определение положения информационной несущей (DCD): &СО — модем поддерживает DCD (контакт 8 DB-25 RS-232) всегда включенным; &С1 — информационная несущая DCD определяется состоянием связи.
&Dn Определение положения линии готовности терминала (DTR): &DO — модем игнорирует сигнал DTR (контакт 20 DB-25 RS-232); &D1 — при пропадании DTR модем переходит в коммандный асинхронный режим; &D2 — выключение OTR приводит к "опусканию трубки", выходу из режима ответа и возвращению к командному режиму; &D3 — отключение DTR инициализирует модем.
&F Считывание конфигурации из энергонезависимой памяти (ERPROM)
&Gn Выбор частоты сигнала защитного тона: &GO или &G — без защитного тона; &Q1 — 550 Гц; &G2 — 1800 Гц (по умолчанию).
&Jn Выбор телефонного разъема: &JO — RJ-11/ RJ-41S/ RJ-45S; &J1 —RJ-12/RJ-13.
&Ln Выбор типа линии: &LO — коммутируемая; &L1 — выделенная (арендуемая) линия.
&Мп Выбор режима связи: &МО — асинхронный: &М1 — первый синхронный режим — асинхронный вызов и последующий переход в синхронный режим; &М2 — второй синхронный режим — запоминание номера вызова; &МЗ — третий синхронный режим — ручной вызов.
&Pn Выбор отношения вызов/пауза (брейк-отношения) для импульсного режима набора: &РО — 39/61 (стандарт США, Канады и России); &Р1 — 33/67 (стандарт Великобритании).
&Rn Определение положения сигнала RTS (только в синхронном режиме): &RO — сигнал CTS (контакт 5 DB-25 RS-232) передается при наличии сигнала RTS (контакт 4); &R1 — модем игнорирует RTS и включает CTS, когда готов к приему синхронных данных.
Команда Назначение АТ-команды
&Sn Определение положения сигнала готовности модема (DSR): &SO — модем устанавливает DSR по включению; &S1 — DSR (контакт 6 DB-25 RS-232) функционирует согласно рекомендации Е1А.
&Tn Установление тестового режима: &ТО — прекращает любой выполняемый тест по получении команды; &Т1 — запускает локальный аналоговый тест; &Т2 — запускает локальный цифровой тест; &ТЗ — подготавливает модем к выполнению удаленного цифрового теста по запросу другого модема; &Т4 — запрещает удаленный цифровой тест; &Т5 — разрешает удаленный цифровой тест с другим модемом: &Т6 — инициализирует удаленный цифровой тест; &Т7 — инициализирует удаленный цифровой тест с самодиагностикой.
&Wn Запись текущей конфигурации в энергонезависимую память профиля (профайла) п
&Xn Выбор источника тактовой частоты синхронизации передачи (только для синхронного режима работы порта): &ХО — модем генерирует тактовую частоту и выдает ее на 15-й контакт DB-25 RS-232; &Х1 — компьютер генерирует тактовую частоту и передает ее на модем через 24-й контакт DB-25, а модем передает ее через контакт 15; &Х2 — модем выделяет сигнал тактовой синхронизации из входного сигнала и поддерживает его на контакте 15 RS-232.
&Zn Запоминание телефонного номера п

Стандартный и расширенный наборы АТ-команд приведены в табл. 4.1. и 4.2 соответственно.

Если модем не выполняет команды, необходимо проверить следующее:

> находится ли модем в командном режиме;

> стоит ли в начале последовательности команд префикс AT;

> находится ли конфигурация компьютера и программы в соответствии с параметрами обмена модема по порту RS-232.

Если после выполнения команды от модема пришло сообщение ERROR, то причиной этого могут быть следующие:

> переполнение командного буфера по причине большого количества команд;

> ошибка в команде.

4.3. Ответные коды модемов

В процессе своей работы модем может информировать компьютер пользователя о текущем состоянии связи и результатах выполнения АТ-команд. Для этого применяются так называемые ответные коды модема. Модемы могут передавать одиночные цифровые коды, которые можно расшифровать, используя руководство пользователя модема или символьный ответ, который близок к простому английскому языку.

В табл. 4.3 приведены основные ответные коды Hayes-совместимых модемов, а также набор Х-команд, определяющих использование соответствующих ответных кодов.

Таблица 4.3. Ответные коды модемов

Символьный Цифровой h •1або р ко манд Значение ответа
вид код ХО Х1 Х2 ХЗ Х4
ОК 0 + + + + + Модем выполнил команду без ошибок
CONNECT 1 + + + + + Связь установлена
со скоростью 300 бит/с (после
выполнения команд Х1, Х2, ХЗ, Х4) или
со скоростью 600, 1200, 2400 бит/с
(после выполнения команды ХО)
RING 2 + + + + + Обнаружение сигнала звонка на линии
NO CARRIER 3 + + + + + Модем потерял несущую или не
получил ответ от удаленного модема
ERROR 4 + + + + + Ошибка в командной строке,
командный буфер переполнен или
ошибка в контрольной сумме
(команда 12)
CONNECT 1200 5 + + + + Установлена связь со скоростью
1200 бит/с
NO DIALTONE 6 + + Отсутствие сигнала станции при снятии
трубки
BUSY 7 + + Модем обнаружил сигнал "занято"
после набора номера
NO ANSWER 8 + + + Использовалась команда 0, но не было
выполнено условие пятисекундной
паузы
CONNECT 600 9 + + + + Установлена связь со скоростью
600 бит/с
CONNECT 2400 10 + + + + Установлена связь со скоростью
2400 бит/с

Большинство ответов модема зависит от команды и связано с возвратом запрашиваемой информации или сообщением о текущем состоянии модема. Тем не менее, имеются два стандартных ответа — ОК. и ERROR. Ответ ОК означает, что команда принята и модем готов для приема следующей команды.

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

Различные модемы по разному реагируют на ошибки в командной строке. Обычно, любая ошибка в командной строке приводит к сбрасыванию всей командной строки без изменения состояния модема. Однако некоторые модемы могут обрабатывать правильные команды в строке до тех пор, пока они не встретят ошибку, после чего обработка командной строки прекращается.

4.4. S-регистры модемов

В интеллектуальных модемах имеется набор регистров, содержимое которых можно считывать и изменять программным образом. Устанавливая определенные значения в соответствующие регистры, можно управлять работой модема. На платах многих модемов имеются конфигурационные переключатели, которые можно установить определенным образом и тем самым задать содержимое некоторых регистров, которое они принимают по умолчанию при включении модема. В табл. 4.4 приведен список S-регистров модема, их содержимое по умолчанию и соответствующие функции модема.

Для того, чтобы прочитать содержимое регистра, необходимо подать команду Sn?, где п — номер регистра. Для записи числа х в регистр Sn используется команда Sn=x. После этой команды можно использовать команду чтения и записи, не включая в командную строку имени регистра, например:

ATS6 — установить указатель на регистр S6;

AT? — считать содержимое регистра S6;

АТ=3 — записать в регистр S6 число 3.

Указатель на данный регистр будет сохранятся до тех пор, пока не будет использована команда Sn со значение п, отличным от текущего.

Как и в случае АТ-команд, между разными изготовителями модемов существует некоторый уровень согласованности и в определениях S-регистров. Однако полная схема использования S-регистров зависит от типа модема. В общем случае можно считать, что 13 S-регистров SO-S12 присутствуют в любом модеме, и выполняемые ими функции согласованы между производителями модемов. Ниже приведено краткое описание и минимальные комментарии по этим тринадцати S-регистрам.

Таблица 4.4. Основные S-регистры интеллектуальных модемов