O Conjunto de Comandos de Modem HayesAqui está uma descrição do Conjunto de Comandos Hayes. A maioria dos modens seguem amplamente este conjunto de comandos. Se você perdeu o manual do seu modem ou nunca teve um manual, esta referência pode ser muito útil. Com ela, eu por exemplo finalmente descobri como desligar a caixinha de som do meu modem: ATM0 -- Finalmente: Silêncio!O string de inicialização do modem consiste de uma série de comandos. Ele prepara o modem para comunicação, configurando alguns recursos como modo de discagem, tempos de espera, detecção de sinal de ocupado e muitas outras configurações. Programas mais recentes de comunicação com modem reiniciam o string de inicialização de acordo com as opções de menu que você selecionou, com os recursos que você habilitou, &etc;.Por muitos anos os modens Hayes foram o padrão. Conforme o campo de fabricantes de modens cresceu, a maioria aderiu pelo menos parte do padrão Hayes. A lista à seguir é uma lista parcial do conjunto de comandos Hayes (chamado de comandos AT). O Conjunto de Comandos Hayes pode ser dividido em quatro grupos:Conjunto de Comandos BásicosUm caracter em maiúscula seguido por um dígito. Por exemplo, M1.Conjunto de Comandos ExtendidosUm & (e comercial) e um caracter maiúsculo seguido por um dígito. Esta é uma extensão do conjunto de comandos básicos. Por exemplo, &M1. Observe que M1 é diferente de &M1.Conjunto de Comandos de ProprietáriosNormalmente iniciado por uma barra invertida (\) ou um sinal de percentagem (%), estes comandos variam largamente de acordo com os fabricantes de modens. Por esta razão, somente alguns poucos destes comandos serão listados abaixo.Comandos RegistradoresSr=n onde r é o número do registrador a ser mudado, e n é o novo valor a ser atribuído.Um registrador é o termo computacional para uma localização física específica na memória. Modens possuem uma pequena quantidade de memória em seus circuitos. Este quarto conjunto de comandos é usado para inserir valores em uma registrador específico (localização da memória). O registrador será armazenado em uma variável (informação alfa-numérica) específica que é utilizada pelo modem e programas de comunicação. Por exemplo, S7=60 instrui ao seu computador para Configurar registrador #7 para o valor 60.Apesar da maioria dos comandos serem definidos por uma combinação de letra-número (L0, L1, &etc;), o uso do zero é opcional. Neste exemplo, L0 é o mesmo que um L. Tenha isto em mente ao ler a tabela abaixo!Aqui estão alguns dos mais importantes caracteres que podem aparecer em um string de inicialização do modem. Estes caracteres normalmente não devem ser mudados.ATDiz ao modem que a seguir existem comandos de modem. Isto deve iniciar cada linha de comandos.ZReinicia o modem para seu estado padrão, (um vírgula)faz com que seu programa pause por um segundo. Você pode usar mais de uma , em uma linha. Por exemplo, ,,,, diz ao programa para pausar quatro segundos. (A duração da pausa é baseada na configuração do registrador S8)^MEnvia o caracter de terminação de Retorno de Carro para o modem. Isto é um código de controle que a maioria dos programas de comunicação traduzem como Retorno de CarroO Conjunto de Comandos Básicos HayesEm ordem alfabética:
Conjunto de Comandos Básicos HayesComandoDescriçãoComentáriosA0 ou AResponder chamada de chegadaA/Repete último comandoNão preceder com AT. O 'Enter' normalmente aborta.B0 ou BNegociação de chamadaModo V32/Sequência de Resposta CCITTB1Negociação de chamadaSequência de Resposta Bell 212AB2Negociação de chamadaVerbal/Silêncio Ao ResponderDDiscarDisca o número a seguir e então negocia em modo origem.PDiscagem de PulsoTDiscagem de TomWEspera pelo segundo tom de discagem,Pausa pelo tempo especificado no registrador S8 (normalmente 2 segundos);Permanece em modo de comando após discagem.!Equivale a tecla 'Flash' do telefone (Interrompe a ligação por meio segundo, permitindo transferir uma chamada).LDisca o último númeroE0 ou ESem EcoNão ecoa comandos para o computadorE1EcoEcoa comandos para o computados (logo você poderá ver que comando foi enviado)H0Estado do GanchoNo gancho - Telefone desligadoH1Estado do GanchoFora do gancho - o telefone foi tirado do ganchoI0 ouIInquisição, Informação ou InterrogaçãoEste comando é muito específico do modelo. I0 normalmente retorna um número ou código, enquanto números maiores frequentemente fornecem informações mais úteis.L0 ouLNível do Alto-falante. Modens com botões de controle de volume não terão estas opções.Desligado ou volume baixoL1Volume BaixoL2Volume MédioL3Máximo ou Volume AltoM0 ou MAlto-falante desligadoM3 é também comum, mas diferente em muitas placasM1Alto-falante ligado até um carro remoto ser detectado (&ie; até outro modem ser ouvido)M2Alto-falante sempre ligado (os sons dos dados serão ouvidos após o CONNECT)N0 ou NNegociação de VelocidadeNegociar somente na velocidade em S37N1Negociar na maior velocidade maior que S37O0 ou ORetonar OnlineVeja também X1 como a detecção do tom de discagem pode estar ativa.O1Retorna Online após uma sequência de rebuscamento de equalizaçãoQ0 ou Q1Modo SilenciosoDesligado - Exibe os códigos de resultado, usuários vêem as respostas dos comandos (⪚ OK)Q1Modo SilenciosoLigado - Códigos de resultado são suprimidos, usuários não vêem respostas.Sn?Consulta o conteúdo do registrador S de número nSn=rArmazenarArmazena o valor de r no registrador S nV0 ou VVerbalCódigos de resultado numéricosV1Códigos de resultado em inglês (⪚ CONNECT, BUSY, NO CARRIER, &etc;)X0 ou XSmartmodemCódigos de resultados compatíveis com o Smartmodem 300 da HayesX1Normalmente adiciona a velocidade de conexão aos códigos de resultado básicos (⪚ CONNECT 1200)X2Normalmente adiciona a detecção de tom de discagem (evitando uma discagem cega, e algumas vezes evitando o AT0)X3Normalmente adiciona a detecção de sinal de ocupadoX4Normalmente adiciona a deteção do tom de discagem e do sinal de ocupadoZ0 ou ZReiniciarReinicia para a configuração armazenada. Use Z0, Z1, &etc; para perfis múltiplos. Isto é o mesmo que &F para os padrões de fábrica dos modens sem NVRAM (memória não volátil)
O Conjunto de Comandos Extendidos HayesComandos &
O Conjunto de Comandos Extendidos HayesComandoDescriçãoComentários&B0 ou &BRebuscar ParâmetrosDesabilita a função de auto-rebuscar&B1Rebuscar ParâmetrosHabilita a função de auto-rebuscar&B2Rebuscar ParâmetrosHabilita o auto-rebuscar, mas desconecta se não houver melhoria da linha no período de tempo ditado pelo S7&C0 ou &C1Detectar carroSinal sempre ligado&C1Detectar carroIndicar carro de retorno (normalmente o padrão preferido)&D0 ou &DTerminal de Dados Pronto (do inglês DTR)Sinal ignorado (Isto é específico do modem, você deve ver seu manual para informações sobre esta opção!)&D1Terminal de Dados Pronto (do inglês DTR)Se o DTR vai de Ligado para Desligado o modem vai para o modo de comando (Somente alguns modens)&D2Terminal de Dados Pronto (do inglês DTR)Alguns modens interrompem a ligação quando ocorre a transição do DTR de Ligado para Desligado (Este é normalmente o padrão preferido)&D3Terminal de Dados Pronto (do inglês DTR)Desliga, reinicia o modem e retorna ao modo de comando sobre o DTR&F0 ou &FPadrões de fábricaPadrões genéricos compatíveis com Hayes Isto é normalmente uma boa coisa para usar em seu string de inicialização, uma vez que as configurações &F1-&F3 pode variar entre modens, e elas podem atualmente ser a causa de problemas de conexão (Uma vez que você nunca sabe exatamente que tipo de X o &F2 realmente muda)Apesar dele impedir a experimentação de outras opções abaixo, muitos dos problemas podem ser resolvidos substituindo um complicado string de inicialização por um simples &F2 ou algo parecido. No entanto, se você está construindo um string de inicialização, é melhor iniciar com um simples &F, e não usar as formas personalizadas de padrões.&F1Padrões de FábricaPadrões de Fábricas adequados a um usuário de PC compatível com o IBM&F2Padrões de FábricaPadrões de fábrica para um Macintosh com negociação por software&F3Padrões de FábricaPadrões de fábrica para um Macintosh com negociação por hardware&G0 ou >ons de guardaDesabilitar tons de guarda&K0 ou &KControle de fluxo localDesabilitar controle de fluxo local&K1Controle de fluxo localHabilitar controle de fluxo local por hardware (RTS/CTS)&K2Controle de fluxo localHabilitar controle de fluxo local por software (XON/XOFF)&K3Controle de fluxo localHabilitar controle de fluxo local por hardware (RTS/CTS)&K4Controle de fluxo localHabilitar controle de fluxo local por software (XON/XOFF)&L0 ou &LModo de discagemSelecionar modo de discagem&M0 ou &MModo de controle de erroSeleciona o modo assíncrono não-EC (do inglês, Controle de Erro) (o mesmo que &Q0)&P0 ou &PTaxa de pulso de discagemTaxa de pulso de discagem de 39% pulso / 61% quebra (U.S./Canada)&P1Taxa de pulso de discagemTaxa de pulso de discagem de 33% pulso / 67% quebra (U.K./Hong Kong)&Q0 ou &QModo de controle de erroModo assíncrono não-EC. Sem armazenamento de dados. ASB desabilitado.&Q5Modo de controle de erroSeleciona operação EC V.42 (necessita de controle de fluxo)&Q6Modo de controle de erroModo assíncrono com ASB (necessita de controle de fluxo)&Q8Modo de controle de erroSeleciona protocolo alternativo de EC (MNP)&Q9Modo de controle de erroCompressão de dados condicional: V.42bis = sim, MNP5 = não.&S0 ou &SSeleciona ação DSRSempre ligado (padrão)&S1Seleciona ação DSRSegue a especificação EIA (Ativa seguindo o tom do carro, e até o carro ser perdido)&T0 ou &TAuto-testeAuto-teste específico do modelo em alguns modens&U0 ou &UModulação de código TrellisHabilita V.32 TCM&U1Modulação de código TrellisDesabilita V.32 TCM&V0 ou &V1Ver ativa(e frequentemente armazenada) perfil de configuração (ou ATI4)&W0 ou &WArmazenar perfilNa NVRAM (&W0, &W1, etc, para múltiplos perfis). Algumas configurações não podem ser armazenadas. Elas frequentemente não são mostradas no &V ou ATI4.&Y0 ou &YSeleciona configuração carregada ao ligar a máquinaCarrega perfil 0 (padrão)&Y1Seleciona configuração carregada ao ligar a máquinaCarrega perfil 1&Zn=xFaz uma reinicialização suave e carrega o perfil de número nObserve que todos os ítens após o &Z na linha de comando são ignorados
Comandos de Barra Invertida e Percentagem
Comandos de Barra Invertida e PercentagemComandoDescriçãoComentários\A0 ou \ATamanho máximo de caracteres no bloco MNPMáximo de 64 caracteres\A1Tamanho máximo de caracteres no bloco MNPMáximo de 128 caracteres\A2Tamanho máximo de caracteres no bloco MNPMáximo de 192 caracteres\A3Tamanho máximo de caracteres no bloco MNPMáximo de 256 caracteres%C0 ou %CCompressão de Dados Habilitada/DesabilitadaDesabilitada%C1Compressão de Dados Habilitada/DesabilitadaHabilitada para MNP5%C2Compressão de Dados Habilitada/DesabilitadaHabilitada para V.42bis (BTLZ)%C3Compressão de Dados Habilitada/DesabilitadaHabilitada para MNP5 & V.42bis (BTLZ)%D0 ou %DCompressão de dadosTamanho do dicionário de 512 BLTZ%D1Compressão de dadosTamanho do dicionário de 1024 BLTZ%D2Compressão de dadosTamanho do dicionário de 2048 BLTZ%D3Compressão de dadosTamanho do dicionário de 4096 BLTZ%E0 ou %E1Método de escapeESCAPE DESABILITADO%E1Método de escapeMétodo +++AT (padrão)%E2Método de escapeMétodo BreakAT%E3Método de escapeAMBOS os métodos habilitados%E4Método de escapeDesabilitado OK para +++%E5Método de escapeHabilitado OK para +++\J0 ou \JAjuste de Taxa Automática de DTEDesabilitada\J1Ajuste de Taxa Automática de DTETaxa DTE é ajustada para corresponder ao estado do carro.\N0 ou \NTipo de conexãoConexão normal (veja abaixo por definições)\N1Tipo de conexãoConexão de direção\N2Tipo de conexãoConexão auto-confiável MNP\N3Tipo de conexãoConexão de auto-confiável\N4Tipo de conexãoLigação confiável V.42bis com fase de detecção\N5Tipo de conexãoLigação auto-confiável V.42bis com fase de detecção\N6Tipo de conexãoLigação confiável V.42 com fase de detecção\N7Tipo de conexãoLigação auto-confiável V.42 com fase de detecção
Uma conexão direta é uma conexão simples e direta sem nenhum controle de erros ou compressão de dados. Neste caso, as velocidades computador-modem e modem-modem devem ser idênticas.Uma conexão normal usa controle de fluxo (seja por software ou hardware) para armazenar os dados sendo enviados e recebidos, de modo que o modem possa transmitir dados em uma taxa diferente da que o computador está atualmente enviando e recebendo. Por exemplo, um computador pode enviar atualmente dados à 57kbps, mas usando a compresão, o modem atualmente somente envia a 28,8kbps. Este é o modo usado pela maioria dos modens.Uma conexão confiável é um tipo de conexão normal; se, por algum motivo, a compressão de dados ou correção de erros não puder ser estabelecida ou mantida, a conexão será interrompida. (Em essência, um modem sempre verfica se todas as conexões são confiáveis, para interrompê-las caso não sejam)Do mesmo modo, uma conexão auto-confiável é virtualmente a mesma, exceto que o modem tentará renegociar a conexão para estabelecer uma conexão confiável. Novamente, este é o modo que a maioria dos modens usam.Registradores-S
Registradores SRegistradorIntervaloPadrãoFunçãoS00-255 toques1-2Responde ao número de toques. Não responde se 0.S10-255 toques0se S0 for maior que 0 este registrador conta os toques de chegada.S20-127 ASCII43 +Caracter de escape para o modo de comandoS2>127sem ESCS30-127 ASCII13 CRCaracter de retorno de carroS40-127 ASCII10 LFCaracter de alimentação de linhaS50-32, 127 ASCII8 BSCaracter de backspaceS62-255 segundos2Tempo de espera pelo tom de discagem (discagem cega, ver Xn)S71-255 segundos30-60Tempo de espera pelo carro remotoS80-255 segundos2Tempo de pausa para a vírgula usada na discagemS91-255 décimos de segundo6Tempo de detecção de carro necessário para reconhecimentoS101-255 décimos de segundo7-14Tempo entre a perda do carro e interrupção da ligaçãoS1150-255 millisegundos70-95Duração e espaçamento dos tons na discagem por tomS120-255 1/50 avos do segundo50Tempo de guarda para pausa ao redor de uma sequência de comando +++S36Opções de recuo quando a correção de erro da ligação falha:0 - Desconectar1 - Estabelecer Conexão Direta3 - Estabelecer Conexão Normal4 - Estabelecer uma conexão MNP se possível, senão desconectar5 - Estabelecer uma conexão MNP se possível, senão Conexão Direta7 - Estabelecer uma conexão MNP se possível, senão conexão Normal7Tratamento de Falha na NegociaçãoS371 = 300 bps5 = 1200 bps6 = 2400 bps7 = 1200/75 bps (modo v.23)8 = 4800 bps9 = 9600 bps10 = 12000 bps11 = 14400 bps12 = 7200 bps0Velocidade de Negociação (negociação inicial)
Muitos modens possuem dúzias, mesmo centenas de registradores S, mas somente os primeiros doze são aproximadamente padronizados. Eles são mudados com um comando como ATSn=N, e examinados com ATSn? (⪚ ATS10S1? deve dizer para o modem não desligar por sete segundos se ele não ouvir resposta do modem, e retornar o número de vezes que o telefone tocou por último.)