Linux 中的Modem At 命令示例(如何配置 Minicom)

举报
Tiamo_T 发表于 2022/08/05 14:46:51 2022/08/05
【摘要】 AT 命令是用于控制调制解调器的指令。 这些命令来自 Hayes 在 1980 年代 Hayes 智能调制解调器使用的命令。当今许多调制解调器,包括拨号、无线、GSM/GPRS 调制解调器,都使用这些 AT 命令集进行通信。

AT 命令是用于控制调制解调器的指令。

这些命令来自 Hayes 在 1980 年代 Hayes 智能调制解调器使用的命令。当今许多调制解调器,包括拨号、无线、GSM/GPRS 调制解调器,都使用这些 AT 命令集进行通信。

调制解调器 AT 命令有 2 种类型。

  • 基本命令
  • 扩展命令

基本命令是不以“+”开头的 AT 命令。扩展命令是以“+”开头的 AT 命令。所有 GSM/GPRS 都使用 SMS/DATA 服务的扩展命令。

可以使用 AT 命令完成的任务

以下是一些可以使用 AT 命令完成的任务列表。

  • 获取订阅者的基本信息
  • 获取有关信号强度和电池强度的信息
  • 建立数据/语音连接
  • 发送和接收传真
  • 发送和接收短信
  • 阅读/搜索电话簿条目

请注意,并非所有调制解调器都支持所有 AT 命令。

在本教程中,我将展示使用我的“诺基亚 2700”手机的示例,该手机具有内置的 GSM/GPRS 调制解调器。

安装 minicom

为了向调制解调器发送 AT 命令,我们需要一个接口。Minicom 是一种工具,它提供了与连接到串行端口的设备进行通信的接口。Minicom 是一个 linux,相当于 Microsoft 操作系统中的 HyperTerminal 实用程序。

使用 minicom,我们可以向调制解调器发送 AT 命令以获取有关其功能的信息。

# apt-get install minicom

配置 minicom 与调制解调器接口

在配置minicom之前,我们需要将modem连接到linux系统。就我而言,我已经通过数据线将我的“诺基亚 2700”连接到我的 Linux PC。连接设备后,您将使用dmesg看到类似于以下内容的输出。在我的情况下,调制解调器被检测为 /dev/ttyACM0。

[ 1071.120084] cdc_acm 1-1.3:1.1: ttyACM0: USB ACM device
[ 1071.120916] usbcore: registered new interface driver cdc_acm
[ 1071.120917] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters

要配置 minicom 以访问调制解调器,请执行以下操作:

# minicom -s
            +-----[configuration]------+
            | Filenames and paths      |
            | File transfer protocols  |
            | Serial port setup        |
            | Modem and dialing        |
            | Screen and keyboard      |
            | Save setup as dfl        |
            | Save setup as..          |
            | Exit                     |
            | Exit from Minicom        |
            +--------------------------+

选择“Serial port setup”并按“Enter”。它将显示类似于以下内容的屏幕。

  +-----------------------------------------------------------------------+
    | A -    Serial Device      : /dev/tty0                                 |
    | B - Lockfile Location     : /var/lock                                 |
    | C -   Callin Program      :                                           |
    | D -  Callout Program      :                                           |
    | E -    Bps/Par/Bits       : 115200 8N1                                |
    | F - Hardware Flow Control : No                                        |
    | G - Software Flow Control : No                                        |
    |                                                                       |
    |    Change which setting?                                              |
    +-----------------------------------------------------------------------+

按“A”将串行设备从 /dev/tty0 更改为 /dev/ttyACM0。

按“E”更改调制解调器通信的波特率。就我而言,它是“460800”。您还可以使用 wvdialconf 来识别调制解调器支持的波特率。

更改这些设置后,按“Enter”。

选择“将设置另存为 dfl”,然后选择“退出”。

现在我们已经成功配置了 minicom,您将看到如下所示的屏幕。

Welcome to minicom 2.6.1

OPTIONS: I18n                                                                
Compiled on Feb 11 2012, 18:12:55.                                           
Port /dev/ttyACM0                                                            

Press CTRL-A Z for help on special keys

要测试我们是否已成功配置 minicom 以与调制解调器通信,请在 minicom 中键入“AT”。您应该得到如下的“OK”响应。

Welcome to minicom 2.6.1

OPTIONS: I18n                                                                
Compiled on Feb 11 2012, 18:12:55.                                           
Port /dev/ttyACM0                                                            

Press CTRL-A Z for help on special keys

AT                                                                                               
OK

1. 接听来电 – ATA

要通过调制解调器接听来电,请在 minicom 中发出“ATA”命令。

RING
ATA
OK

当有来电时,您可以在 minicom 中看到“RING”消息。您可以按“ATA”接听来电。

2. 拨出和挂断语音电话 - ATD - ATH

您还可以使用 ATD 命令从调制解调器拨出语音呼叫。

ATD 99769XXXXX;
OK

现在电话将拨出号码 99769XXXX。

要挂断电话,请使用 ATH 命令。

3. 获取制造商/IMEI/IMSI 信息

扩展 AT 命令用于提供有关制造商、国际移动设备标识、国际移动用户标识等的信息……

AT+CGMI
Nokia

OK
AT+CGSN
xxxxxxxxxxxxxxx

OK
AT+CIMI
xxxxxxxxxxxxxxx

OK

4. 获取信号质量和电池充电状态

您还可以使用 AT 扩展命令获取信号质量和电池充电状态。

AT+CSQ
+CSQ: 29,99

OK
AT+CBC
+CBC: 1,96

OK

输出格式+CSQ:29,99代表<Received signal strength indicator>,<Bit Error Rate>

输出格式+CBC:1,96代表<当前充电状态>,<已充电%>

5.使用AT指令发送短信

您还可以通过 AT 命令发送短信。

AT+CMGF=1
OK
AT+CMGS="99xxxxxxxx"
> This is a test message
> 
OK

命令 AT+CMGF=1 将“消息格式”设置为“文本模式”。AT+CMGS指令,将短信发送到指定号码。< ctrl +z > 用于终止消息输入。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。