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

Стандартный набор ответов модема



Стандартный набор ответов модема



Ответ в символьном видеОтвет цифровым кодом Значение ответа
OK0Модем выполнил команду без ошибок
CONNECT1Модем установил связь со скоростью 300 bps (после выполнения команд X1, X2, X3, X4) или со скоростью 600, 1200, 2400 bps (после выполнения команды X0)
RING2Модем обнаружил сигнал звонка на телефонной линии. Это сообщение модем передает компьютеру каждый раз, когда по телефонной линии поступает сигнал вызова (звонок)
NO CARRIER3Модем потерял несущую или не получил ответ от удаленного модема
ERROR4Ошибка в командной строке, командный буфер переполнен или ошибка в контрольной сумме (команда I2)
CONNECT 12005Модем установил связь со скоростью 1200 bps, (смотри команды X1, X2, X3, X4)
NO DIALTONE6Отсутствие сигнала станции при снятии трубки (смотри команды X2, X4)
BUSY7Модем обнаружил сигнал"занято" после набора номера
NO ANSWER8Ответ получается в случае использования в командной пятисекундной тишины
CONNECT 6009Модем установил связь со скоростью 600 bps (смотри команды X1, X2, X3, X4)
CONNECT 240010Модем установил связь со скоростью 2400 bps (смотри команды X1, X2, X3, X4)

Xn - определяет набор сообщений модема, управляет определением сигнала "занято" и наличием гудков на линии.

  • X, X0 Сообщение модема об установлении связи приводится в короткой форме - CONNECT - при всех скоростях. Номер набирается модемом после паузы, вне зависимости от присутствия гудка на линии. Состояние "занято" не определяется.
  • X1 Сообщение модема об установлении связи приводится в полной форме:

СообщениеСкорость, bps
CONNECT 300
CONNECT 600600
CONNECT 12001200
CONNECT 24002400

  Номер набирается модемом после паузы, вне зависимости от присутствия гудка на линии. Состояние "занято" не определяется.

  • X2 Сообщение модема об установлении связи приводится в полной форме. Номер набирается только при наличии гудка на линии. Состояние "занято" не определяется.
  • X3 Сообщение модема об установлении связи приводится в полной форме.
    Номер набирается модемом после паузы, вне зависимости от присутствия гудка на линии. Состояние "занято" определяется.
  • X4 Сообщение модема об установлении связи приводится в полной форме. Номер набирается модемом после паузы при наличии гудка на линии. Соотояние "занято" определяется.


Ниже приводится таблица с возможными сообщениями от модема для каждой X-команды:

СообщениеКоманды

X0 X1 X2 X3 X4

Смысл
CONNECT + + + + +

соединение
RING + + + + +

пришел звонок
NO CARRIER + + + + +

потеря или неудачная попытка связи
ERROR + + + + +

ошибка в команде, неправильная команда
CONNECT 1200 + + + +

соединение на скорости 1200
NO DIALTONE + +

после снятия модемом телефонной трубки не обнаружен сигнал коммутатора (длинный гудок)
BUSY + +

номер занят
NO ANSWER + + +

при использовании команды @, модем не обнаружил пятисекундной паузы (тишины) на линии или вызываемый модем не отвечает
Yn - способ отключения модема от линии. Существуют два способа отключения модема от линии: стандартный, когда модем получает неактивный сигнал DTR от компьютера, и принудительный, когда модем получает от удаленного модема сигнал перерыва BREAK. Команда ATH0 направляет удаленному модему сигнал перерыва BREAK, который длится 4 s. При n = 0 модем отключается стандартно (см. команду &D). При n = 1 модем отключается после получения из линии сигнала BREAK.

Z - сбрасывает конфигурацию модема. При этом во все регистры загружаются значения, принятые по умолчанию. Значения регистров, принятые по умолчанию берутся из энергонезависимой памяти модема или, если модем такой памяти не имеет, из постоянной памяти или определяется исходя из состояния переключателей на плате модема.

+++ - Escape-последовательность, используемая для перехода в командный режим работы модема. Благодаря этой команде можно перейти из режима передачи данных модемом в командный режим работы без разрыва связи. Модем требует тишины перед и после направления этой Escape-последовательности.


Величина этого промежутка тишины определена в регистре S12 (в заводской установке S12 = 50 - 1 секунда). Десятичную величину знака ASCII, который является знаком последовательности выхода, содержит регистр S2 (в заводской установке S2 = 43, т.е. '+').

&Cn - данная команда управляет сигналом DCD порта RS-232-C. При n = 0 сигнал DCD всегда активен, а при n = 1 сигнал DCD устанавливается только тогда, когда модем обнаруживает несущую частоту от удаленного модема.

&Dn - управление сигналом DTR. При n = 0 - модем игнорирует DTR, n = 1 при потере сигнала DTR модем переходит в командный режим работы, n = 2 - при потере сигнала DTR модем прекращает связь, отключается от линии, отключает режим автоответа и переходит в командный режим работы, n = 3 - при потере сигнала DTR автоматически сбрасывается конфигурация модема, как при выполнении команды ATZ. Модем обнаруживает потерю сигнала DTR, если сигнал DTR отсутствует дольше времени, определенного в регистре модема S25.

&F - Модем устанавливает конфигурацию, записанную в постоянной памяти.

&Gn - включение/выключение защитной частоты: n = 0 - защитная частота выключена, n = 1 - модем генерирует защитную частоту 550 Hz, n = 2 - модем генерирует защитную частоту 1800 Hz. Использование данной команды зависит от особенностей телефонной линии.

&Ln - вид линии связи. При n = 0 передача по обычным телефонным (коммутируемым) линиям связи, n = 1 - передача по выделенным каналам связи.

&Mn - установка асинхронного/синхронного режима работы. При n = 0 устанавливается асинхронный режим; при n = 1, 2, 3 устанавливается синхронный режим. Особенности использования данной команды вы можете посмотреть в описании модема.

&Pn - установка импульсного коэффициента набора номера в соответствии с различными стандартами. При n = 0 - коэффициент заполнения замыкание/интервал 39/61 (американский стандарт), n = 1 - коэффициент заполнения замыкание/интервал 33/67% (английский стандарт).



&Rn - управление сигналом CTS: n = 0 - сигнал CTS переходит в активное состояние после получения сигнала RTS. Данные, передаваемые модему до поступления сигнала RTS, игнорируются. Если n = 1, модем игнорирует RTS. Во время асинхронной передачи данных (команда &M0) сигнал CTS всегда активен. Особенности использования данной команды вы можете посмотреть в описании модема.

&Sn - управление сигналом DSR порта RS-232-C. При n = 0 сигнал DSR активен всегда, пока модем включен, а при n = 1 сигнал DSR активизируется только после окончания этапа установления связи между модемами (квитирования).

&Tn - используется для тестирования модема.

С помощью команды &T0 можно прервать выполнение теста модема в любой момент. Если модем выполняет локальный аналоговый тест или удаленный цифровой тест, то перед передачей команды &T0 надо с помощью Escape-последовательности перевести модем в командный режим.

По команде &T1 модем начинает выполнять локальный аналоговый тест. Продолжительность теста определяется регистром S18. В ходе локального аналогового теста проверяется и модем и компьютер:


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