其它 · 2020-08-18

常用基本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:”或者“+CMSERROR:”代替简单的“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:,[,,]   OK

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

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

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