GSM模块:使用AT命令了解我的运营商

13

请问是否有任何AT命令可以检测当前运营商名称?

我已经使用了AT+COPS?命令,它为我返回了运营商的数字代码:0、2、40410。

然后我使用了AT+WOPN=0,40410命令,它返回了该运营商的字母数字值。

但是这只给出了Airtel 运营商的名称,对于其他运营商,它会返回错误信息。

请帮帮我。

3个回答

13

正如指出的那样,您应该使用AT+COPS=<mode>,[<format>,<oper>[,<AcT>]]命令,但是<mode>值需要为3才能不覆盖您现有的<mode>值:

<mode>: integer type
3   set only <format> (for read command +COPS?), do not attempt
    registration/deregistration (<oper> and <AcT> fields are ignored);
    this value is not applicable in read command response.

并且<format>需要为0或1

<format>: integer type
0   long format alphanumeric <oper>
1   short format alphanumeric <oper>
2   numeric <oper>

所以你的命令是

AT+COPS=3,0
AT+COPS?

3
您需要先设置格式。
  • AT+COPS=1,2

    "2"表示数字格式,例如返回40410。

  • AT+COPS=1,0

    "0"表示长字符串格式,应返回运营商名称字符串。

第一个参数是<mode> - 选择您需要的值。要获取此AT命令的完整文档,请参见3GPP TS 27.007文件 http://www.3gpp.org/ftp/Specs/html-info/27007.htm

当您设置完模式和格式后,发送AT+COPS?,您应该会以所需格式获得运营商名称。


1
你试过了吗- AT+QSPN
对我的移远调制解调器有效。

我正在使用GSM调制解调器工作,尝试了这个命令,但是它报错了。这个命令有语法吗?它适用于GSM调制解调器以了解运营商吗? - user1664899
Quectel是制造商的名称。它也是一个GSM调制解调器。它工作了吗? - Shiridish
对于"AT+QSPN",我们在Quectel调制解调器中遇到了语法错误。应该是"AT+QSPN?"。 - user2311525
作为对其他评论的回应,您必须仔细阅读您特定调制解调器的手册,因为这是来自Quectel的专有AT命令,可能尚未实现。对于BG96,命令正如@Cdeez所指示的那样:AT+QSPN。 - jose.angel.jimenez

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接