常用基本AT指令

常用基本AT指令   命令 作.

常用基本AT指令

 

命令
作用

AT
测试连接是否正确

ATE0
关闭回显。程序初始化AT部分首先关闭回显。

ATE1
打开回显。使用超级终端测试命令时打开。

AT+CGMI
得到厂商信息

AT+CGMR
得到手机版本号

AT+CGSN
得到手机序列号(IMEI)

AT+CIMI
得到手机IMSI号码

AT+CSCS
获取、设置手机当前字符集。可设置为GSM或UCS2

AT+CBC
获取手机电量

AT+CCLK
获取设置手机时钟

AT+CNUM
机身号码。分为线路一和线路二

AT+CSQ
当前信号

AT+COPS
网络营运商

AT+CSCA
短信中心号码

以上这些指令都用于与手机连接的时候初始化用。取得手机IMEI及IMSI可以给使程序支持更多的手机连接

并且保持数据独立。

短信部分

 

命令
作用

AT+CPMS
选择短信储存地点。可选择ME(SIM卡)和MT(机身)

AT+CMGL
列出指定状态的短信息的PDU代码

AT+CMGR
列出指定序号的短信息PDU代码

AT+CMGS
发送短信

AT+CMGD
删除指定的短信

AT+CMGF
短信格式。分为Text模式和PDU模式

AT+CNMI
设置新短消息通知电脑端

AT+CSCA
短信中心

以上命令是短消息部分最经常使用的命令。

一、一般命令
 AT+CGMI给出模块厂商的标识。
 AT+CGMM获得模块标识。这个命令用来得到支持的频带(GSM900,DCS1800或PCS1900)。当模块有多频带时,回应可能是不同频带的结合。
 AT+CGMR获得改订的软件版本。
 AT+CGSN获得GSM模块的IMEI(国际移动设备标识)序列号。
 AT+CSCS选择TE特征设定。这个命令报告TE用的是哪个状态设定上的ME。ME于是可以转换每一个输入的或显示的字母。这个是用来发送、读取或者撰写短信。
 AT+WPCS设定电话簿状态。这个特殊的命令报告通过TE电话簿所用的状态的ME。ME于是可以转换每一个输入的或者显示的字符串字母。这个用来读或者写电话簿的入口。
 AT+CIMI获得IMSI。这命令用来读取或者识别SIM卡的IMSI(国际移动签署者标识)。在读取IMSI之前应该先输入PIN(如果需要PIN的话)。
 AT+CCID获得SIM卡的标识。这个命令使模块读取SIM卡上的EF-CCID文件。
 AT+GCAP获得能力表。(支持的功能)
 A/ 重复上次命令。只有A/命令不能重复。这命令重复前一个执行的命令。
 AT+CPOF关机。这个特殊的命令停止GSM软件堆栈和硬件层。命令AT+CFUN=0的功能与+CPOF相同。
 AT+CFUN设定电话机能。这个命令选择移动站点的机能水平。
 AT+CPAS返回移动设备的活动状态。
 AT+CMEE报告移动设备的错误。这个命令决定允许或不允许用结果码“+CMEERROR:<xxx>”或者“+CMSERROR:<xxx>”代替简单的“ERROR”。
 AT+CKPD小键盘控制。仿真ME小键盘执行命令。
 AT+CCLK时钟管理。这个命令用来设置或者获得ME真实时钟的当前日期和时间。
 AT+CALA警报管理。这个命令用来设定在ME中的警报日期/时间。(闹铃)
 AT+CRMP铃声旋律播放。这个命令在模块的蜂鸣器上播放一段旋律。有两种旋律可用:到来语音、数据或传真呼叫旋律和到来短信声音。
 AT+CRSL设定或获得到来的电话铃声的声音级别。
二、呼叫控制命令
 ATD拨号命令。这个命令用来设置通话、数据或传真呼叫。
 ATH挂机命令。
 ATA接电话。
 AT+CEER扩展错误报告。这个命令给出当上一次通话设置失败后中断通话的原因。
 AT+VTD给用户提供应用GSM网络发送DTMF(双音多频)双音频。这个命令用来定义双音频的长度(默认值是300毫秒)。
 AT+VTS给用户提供应用GSM网络发送DTMF双音频。这个命令允许传送双音频。
 ATDL重拨上次电话号码。
 AT%Dn数据终端就绪(DTR)时自动拨号。
 ATS0自动应答。
 AT+CICB来电信差。
 AT+CSNS单一编号方案。
 AT+VGR
 AT+VGT增益控制。这个命令应用于调节喇叭的接收增益和麦克风的传输增益。
 AT+CMUT麦克风静音控制。
 AT+SPEAKER喇叭/麦克风选择。这个特殊命令用来选择喇叭和麦克风。
 AT+ECHO回音取消。
 AT+SIDET侧音修正。
 AT+VIP初始化声音参数。
 AT+DUI用附加的用户信息拨号。
 AT+HUI用附加的用户信息挂机。
 AT+RUI接收附加用户信息。
三、网络服务命令
 AT+CSQ信号质量。
 AT+COPS服务商选择。
 AT+CREG网络注册。获得手机的注册状态。
 AT+WOPN读取操作员名字。
 AT+CPOL优先操作员列表。
四、安全命令
 AT+CPIN输入PIN。
 AT+CPIN2输入PIN2。
 AT+CPINCPIN的剩余的尝试号码。
 AT+CLCK设备锁。
 AT+CPWD改变密码。
五、电话簿命令
 AT+CPBS选择电话簿记忆存储。
 AT+CPBR读取电话簿表目。
 AT+CPBF查找电话簿表目。
 AT+CPBW写电话簿表目。
 AT+CPBP电话簿电话查询。
 AT+CPBN电话簿移动动作。这个特殊命令使电话簿中的条目前移或后移(按字母顺序)
 AT+CNUM签署者号码。
 AT+WAIP防止在下一次重起时初始化所有的电话簿。
 AT+WDCP删除呼叫电话号码。
 AT+CSVM设置语音邮件号码。
六、短消息命令
 AT+CSMS选择消息服务。支持的服务有GSM-MO、SMS-MT、SMS-CB。
 AT+CNMA新信息确认应答。
 AT+CPMS优先信息存储。这个命令定义用来读写信息的存储区域。
 AT+CMGF优先信息格式。执行格式有TEXT方式和PDU方式。
 AT+CSAS保存设置。保存+CSAS和+CSMP的参数。
 AT+CRES恢复设置。
 AT+CSDH显示文本方式的参数。
 AT+CNMI新信息指示。这个命令选择如何从网络上接收短信息。
 AT+CMGR读短信。信息从+CPMS命令设定的存储器读取。
 AT+CMGL列出存储的信息。
 AT+CMGS发送信息。
 AT+CMGW写短信息并存储。
 AT+CMSS从存储器中发送信息。
 AT+CSMP设置文本模式的参数。
 AT+CMGD删除短信息。删除一个或多个短信息。
 AT+CSCA短信服务中心地址。
 AT+CSCB选择单元广播信息类型。
 AT+WCBM单元广播信息标识。
 AT+WMSC信息状态(是否读过、是否发送等等)修正。
 AT+WMGO信息覆盖写入。
 AT+WUSS不改变SMS状态。在执行+CMGR或+CMGL后仍保持UNREAD。
七、追加服务命令
 AT+CCFC呼叫继续。
 AT+CLCK呼叫禁止。
 AT+CPWD改变追加服务密码。
 AT+CCWA呼叫等待。
 AT+CLIR呼叫线确认限制。
 AT+CLIP呼叫线确认陈述。
 AT+COLP联络线确认陈述。
 AT+CAOC费用报告。
 AT+CACM累计呼叫计量。
 AT+CAMM累计呼叫计量最大值。
 AT+CPUC单价和货币表。
 AT+CHLD呼叫相关的追加服务。
 AT+CLCC列出当前的呼叫。
 AT+CSSN追加服务通知。
 AT+CUSD无组织的追加服务数据。
 AT+CCUG关闭的用户组。

 

 

AT命令交互之-COPS选择营运商

模块默认一般都可以自动搜网注册,比如移动的就注册到移动,联通的就注册到联通。但是在不同的国家多网覆盖的使用情况下,有时候就算使用了自动搜网注册网络,也会出现注册不上网络的现象,这时候就需要使用手动搜网然后选择一个运营商进行强制注册。

 

1.AT+COPS命令说明

image.png

  1. 上面格式里面,stat这个值比较重要,他会直接告诉我们哪些运营商可用。
  2. <stat>
  3. 0 未知
  4. 1 可用
  5. 2 当前
  6. 3 禁用
  7. <oper>
  8. 运营商名称,根据 format 给出
  9. <mode>
  10. 0 自动注册 (忽略<format> <oper> 参数)
  11. 1 手动注册
  12. 2 强制注销
  13. 3 只设置格式
  14. 4 先手动再自动
  15. <format>
  16. 0 长字符格式<oper>
  17. 1 短字符格式<oper>
  18. 2 数字格式<oper>
  19. <AcT> 接入技术
  20. 0 GSM
  21. 1 GSM COMPACT
  22. 2 UTRAN
  23. 1. 配置命令选择并注册 GSM 网络营运商。<mode>设置 ME 是自动选择营运商<oper>,还是使用该命
  24. 令强制选择营运商<oper>
  25.  当<mode>=0 时,ME 将自动尝试选择可使用的运营商。
  26.  当<mode>=1 时,ME 将强制注册选择的<oper>运营商,若该运营商无效则当前 ME 不会搜索
  27. 其他可用运营商,直到<mode>=0 时 ME 才会重新注册网络。如果 ME 重启后仍然在<mode>=1
  28. 下且没有 RPLMN 的话,ME 会保持在不注册网络的状态直到使用命令改变成自动注册模式。
  29.  当<mode>=4 时,若手动选择运营商不可用,ME 会自动选择当前网络中可用运营商继续尝试注
  30. 册。
  31. 2. 该命令设置成功后会自动保存。

2.AT+COPS=?搜网

1.模块未插入SIM卡

我们想使用AT+COPS=?进行搜网,这时会有两种情况,一种是模块没插入卡,返回如下:

 

image.png

如上面所示,没插卡的时候返回的运营stat都是1,都是可以用运营商。

2.模块插入指定运营商的SIM卡

现在插入电信卡,在进行搜网操作

image.png

可以看到虽然返回了三个运营商,但是只有电信的stat是1,其他两个stat都是3,forbidden。

3.AT+COPS=设置网络

1.手动设网,已知要设置的网络

  1. 1.强制注销网络 AT+COPS=2,2
  2. 2.设置要使用的网络 AT+COPS=1,2,“46001”,2
  3. 3.设置查询格式 AT+COPS=3,2 数字型
  4. 4.查询当前运营商 AT+COPS?

image.png

2.手动设网,未知要设置的网络

  1. 1.设置格式 AT+COPS=3,0 长字符型
  2. 2.查询可用运营商 AT+COPS=?
  3. 3.强制注销网络 AT+COPS=2,2
  4. 4.设置要使用的网络 AT+COPS=1,2,“46001”,2
  5. 5.设置查询格式 AT+COPS=3,2 数字型
  6. 6.查询当前运营商 AT+COPS?

image.png

 

联通2G基本退网了

 

 

查询命令:AT+CGREG?
返回:+CGREG:<n>,<stat>[,<lac>,<ci>]   OK

参数  取值 说明
n  [0] 禁用网络注册非请求结果码+CGREG:
[1] 启用网络注册非请求结果码
[2] 启用网络注册和位置信息非请求结果码+CGREG:<stat>[,<lac>,<ci>]

<stat> [0] 未注册;ME 当前没有搜索注册业务的新运营商
[1] 已注册,本地网
[2] 未注册,但ME 正在搜索注册业务的新运营商
[3] 注册被拒绝
[4] 未知
[5] 已注册,漫游

<lac> 字符型;2 位十六进制位置区代码(比如:00C3相当于十进制中的195)
<ci> 字符型;2 位十六进制小区编号