12.3. 使用 AT 命令配置调制解调器

现在大多数调制解调器都是基于 Hayes 调制解调器及其命令集的智能调制解调器。但是,如上所述,Linux 串行控制台被设计为与哑调制解调器一起运行。

因此,智能调制解调器被“哑化”以使其类似于哑调制解调器。 一些昂贵的调制解调器将具有 DIP 开关或板跳线,以将其置于哑模式。

拥有一本描述该调制解调器的手册至关重要AT命令。 尽管大多数调制解调器在更流行的AT命令上达成一致,但在更技术性的命令上有所不同。

12.3.1. 配置端口速度

Hayes AT 样式调制解调器可以在计算机和调制解调器之间保持静态速度,无论拨号调制解调器使用什么速度。

对于大多数调制解调器,这是根据开机后发送的第一个字符的速度自动设置的。

重启调制解调器并使用命令 minicom -o console 连接到它。 按几次 Enter 键。 调制解调器现在应以 Minicom 使用的相同比特率运行,我们在 12.1 节中将其设置为串行控制台的速度。

您可以通过要求调制解调器生成一些输出来检查端口速度。

图 12-2. 测试调制解调器的端口速度

bash# minicom -o console
Welcome to minicom
Press CTRL-A Z for help on special keys

Enter Enter Enter

ATI Enter
56k V.90 Series 3 External V2.20

Ctrl-A Q
Leave without reset? Yes

某些调制解调器具有一个 AT 命令来重新建立端口速度,请在您的调制解调器手册中查找 AT&B1 命令。 某些调制解调器具有一个命令来显式设置端口速度,请在您的调制解调器手册中查找 ATB 命令。

12.3.2. 配置应答模式

调制解调器将在第二次振铃时使用命令 ATS0=2 应答来电。

不要在第一次振铃时接听电话,因为这可能会使调制解调器在某些电话管辖区内的认证失效。

12.3.3. 配置 CTS/RTS 握手

CTS/RTS 握手可防止字符丢失。

命令是AT命令是 AT&K3

12.3.4. 配置数据载波检测

数据载波检测应跟随呼叫调制解调器的存在或不存在。

AT 命令是 AT&C1

12.3.5. 配置数据终端就绪

数据终端就绪应控制调制解调器。 如果 DTR 为高电平,则调制解调器已准备好接收呼叫。 如果 DTR 为低电平,则调制解调器不应再接收任何呼叫,并且应挂断任何现有呼叫。

AT 命令是 AT&D2

12.3.6. 配置无CONNECT消息

Hayes AT 样式调制解调器通常在收到呼叫时输出消息。 例如

CONNECT 9600

调制解调器具有禁用这些消息的 “静音模式”

AT 命令是 ATQ1。 将不会有OK打印以响应此命令。

12.3.7. 配置不回显命令

回显命令可能会使控制台感到困惑,因此请关闭命令回显。

命令是AT命令是 ATE0

12.3.8. 可选地,配置静音连接

大多数调制解调器都有扬声器。 默认情况下,当调制解调器连接并协商通用协议和速度时,扬声器会连接。 这对于拨号调制解调器非常有用,因为它防止人类意外地重复呼叫。 扬声器在应答调制解调器上可能会很烦人。

如果需要更安静的计算机房,请使用 ATM0 命令关闭扬声器。

12.3.9. 可选地,配置 DTR 延迟

当支持 RS-232 链路的半导体复位时,数据终端就绪 (Data Terminal Ready) 会下降。 然后这会挂断调制解调器。 这可能会很烦人。 如果 getty 支持类似于 mgetty 的参数toggle-dtr-waittime那么可以延长调制解调器忽略 DTR 的时间。 getty 保持 DTR 低电平以强制挂断的时间延长到超出调制解调器的设置。 结果是,复位半导体不会挂断调制解调器,但是 getty 仍然可以在登录会话结束时挂断调制解调器。

查看调制解调器的文档。 我们的示例调制解调器使用 S 寄存器 25 来包含注意 DTR 更改的阈值。 该值的单位为百分之一秒。 通过使用 ATS25=150 (1.5 秒)设置调制解调器,并使用toggle-dtr-waittime 2000(2 秒)设置 mgetty,我们忽略 DTR 中的小波动。

12.3.10. 配置无注意序列

一旦调制解调器配置正确并且运行良好,请禁用+++提供对调制解调器命令模式的访问的序列。

AT 命令是 ATS2=255

如果意外给出了此命令,请参阅 12.3.12 节以将调制解调器重置为其出厂默认参数并重新开始。

12.3.11. 配置示例

图 12-3. 使用 AT 命令配置调制解调器

bash# minicom -o console
Welcome to minicom
Press CTRL-A Z for help on special keys

AT &F Enter
OK

AT Z Enter
OK

AT &C1 &D2 &K3 S0=2 M0 Enter
OK

AT E0 Q1 S2=255 &W Enter

Alt-A Q
Leave without reset? Yes

12.3.12. 重置调制解调器

如果您需要向调制解调器发出更多 AT 命令,请重启调制解调器。 这应该将调制解调器置于命令模式。

现在发出以下命令以恢复调制解调器的出厂配置。

图 12-4. 重置 Hayes AT 样式调制解调器

bash# minicom -o console
Welcome to minicom
Press CTRL-A Z for help on special keys

AT &F &Y0 &W &W1 Enter
OK
AT Z Enter
OK

Alt-A Q
Leave without reset? Yes

如果这失败了,那么您将需要清除调制解调器的配置内存。 此过程因制造商而异,并且可能需要拆卸调制解调器。