天天看点

AT指令集及其通信测试方式

1 前言

AT即Attention,AT指令集是从终端设备(Terminal Equipment,TE)向终端适配器(Terminal Adapter, TA)发送的。通过TA,TE发送AT指令来控制移动台的功能,与GSM等网络业务进行交互。用户可以通过AT指令进行呼叫、短信、电话本、数据业务、传真等方面的控制。

2 通信协议

2.1 术语

GSM模块

GSM模块是一个类似于手机的通讯模块,集成了手机的若干功能于一块小电路板上,它可以发送短消息,通话等,GSM模块通过使用AT指令才能控制它,模块可以与电脑RS232串口相连,也可以用单片机来进行控制。

2.2 通信接口

支持RS232串行接口。

2.3 AT指令

一般来讲,AT命令包括四种类型,如表所示。

AT指令集及其通信测试方式

2.3.1 AT指令语法

1)以“AT”或“at”为前缀,以结尾,方括号中的值为缺省值。

2)选配参数和必配参数必须按照规定的顺序排列,各参数间必须用逗号隔开。

举例:AT+CPWD=<fac>,<oldpwd>,<newpwd>。

3)如果某参数是字符串(比如:<number>),该字符串必须放在双引号中。

举例:“12345”、“cmnet”,双引号中的各项符号可看作是字符串。

4)命令的可选子参数或 TA 返回结果的可选部分位于方括号中。

5)不使用双引号时,字符串中各字符间的空格可忽略不计。

6)实际使用中<>和[]不必输入。

7)所有AT命令本身不区分大小写,但其参数对大小写敏感。

2.3.2 AT指令集

一、一般命令

AT+CGMI 给出模块厂商的标识。 SONY ERICSSON
AT+CGMM 获得模块标识。这个命令用来得到支持的频带(GSM900,DCS1800或PCS1900)。当模块有多频带时,回应可能是不同频带的结合。 AAB-1021011-CN
AT+CGMR 获得改订的软件版本。 R6C005 CXC125582CHINA1
AT+CGSN 获得GSM模块的IMEI(国际移动设备标识)序列号。351254004238596
AT+CSCS

选择TE特征设定。这个命令报告TE用的是哪个状态设定上的ME。ME于是可以转换每一个输入的或显示的字母。这个是用来发送、读取或者撰写短信。 

AT+CSCS?

+CSCS: "GSM"

AT+WPCS

设定电话簿状态。这个特殊的命令报告通过TE电话簿所用的状态的ME。ME于是可以转换每一个输入的或者显示的字符串字母。这个用来读或者写电话簿的入口。 

NONE

AT+CIMI

获得IMSI。这命令用来读取或者识别SIM卡的IMSI(国际移动签署者标识)。在读取IMSI之前应该先输入PIN(如果需要PIN的话)。

460001711603161

AT+CCID 获得SIM卡的标识。这个命令使模块读取SIM卡上的EF-CCID文件。 
AT+GCAP 获得能力表。(支持的功能)+GCAP: +FCLASS, +CGSM, +DS
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+CCLK?

+CCLK: "04/08/12,17:00:42+32"

AT+CALA

警报管理。这个命令用来设定在ME中的警报日期/时间。(闹铃)

AT+CALA=?

+CALA: (1-2),(),(),(13),()

AT+CRMP 铃声旋律播放。这个命令在模块的蜂鸣器上播放一段旋律。有两种旋律可用:到来语音、数据或传真呼叫旋律和到来短信声音。
AT+CRSL 设定或获得到来的电话铃声的声音级别。NONE

二、呼叫控制命令

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 信号质量。+CSQ: 17,99
AT+COPS

服务商选择。

AT+COPS?

+COPS: 0,0,"China Mobile"

AT+CREG

网络注册。获得手机的注册状态。 

AT+CREG?

+CREG: 0,1

AT+WOPN 读取操作员名字。NONE
AT+CPOL 优先操作员列表。NONE

四、安全命令

AT+CPIN 输入PIN。
AT+CPIN2 输入PIN2。
AT+CPINC PIN的剩余的尝试号码。
AT+CLCK 设备锁。
AT+CPWD 改变密码。

五、电话簿命令

AT+CPBS

选择电话簿记忆存储。 

AT+CPBS?

+CPBS: "SM"

AT+CPBR 读取电话簿表目。
AT+CPBF 查找电话簿表目。
AT+CPBW 写电话簿表目。
AT+CPBP 电话簿电话查询。
AT+CPBN 电话簿移动动作。这个特殊命令使电话簿中的条目前移或后移(按字母顺序)
AT+CNUM 签署者号码。
AT+WAIP 防止在下一次重起时初始化所有的电话簿。
AT+WDCP 删除呼叫电话号码。NONE
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+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+CBST 信差类型选择。
AT+FCLASS 选择模式。这个命令把模块设置成数据或传真操作的特殊模式。
AT+CR 服务报告控制。这个命令允许更为详细的服务报告。
AT+CRC 划分的结果代码。这个命令在呼叫到来时允许更为详细的铃声指示。
AT+ILRR 本地DTE-DCE速率报告。
AT+CRLP 无线电通信线路协议参数。
AT+DOPT 其他无线电通信线路参数。
AT%C 数据压缩选择。
AT+DS 是否允许V42二度数据压缩。
AT+DR 是否报告V42二度数据压缩。
AT\N 数据纠错选择。

九、传真命令

AT+FTM 传送速率。
AT+FRM 接收速率
AT+FTH 用HDLC协议设置传真传送速率。
AT+FRH 用HDLC协议设置传真接收速率。
AT+FTS 停止特定时期的传送并等待。
AT+FRS 接收沉默。

十、第二类传真命令

AT+FDT 传送数据。
AT+FDR 接收数据。
AT+FET 传送页标点。
AT+FPTS 页转换状态参数。
AT+FK 终止会议。
AT+FBOR 页转换字节顺序。
AT+FBUF 缓冲大小报告。
AT+FCQ 控制拷贝质量检验。
AT+FCR 控制接收传真的能力。
AT+FDIS 当前会议参数。
AT+FDCC 设置DCE功能参数。
AT+FLID 定义本地ID串。
AT+FPHCTO 页转换超时参数。

十一、V24-V25命令

AT+IPR 确定DTE速率。
AT+ICF 确定DTE-DCE特征结构。
AT+IFC 控制DTE-DCE本地流量。
AT&C 设置DCD(数据携带检测)信号。
AT&D 设置DTR(数据终端就绪)信号。
AT&S 设置DST(数据设置就绪)信号。
ATO 回到联机模式。
ATQ 决定手机是否发送结果代码。
ATV 决定DCE响应格式。
ATZ 恢复为缺省设置。
AT&W 保存设置。
AT&T 自动测试。
ATE 决定是否回显字符。
AT&F 回到出厂时的设定。
AT&V 显示模块设置情况。
ATI 要求确认信息。这命令使GSM模块传送一行或多行特定的信息文字。
AT+WMUX 数据/命令多路复用。

十二、特殊AT命令

AT+CCED 电池环境描述。
自动RxLev指示。
AT+WIND 一般指示。
AT+ALEA 在ME和MSC之间的数据密码模式。
AT+CRYPT 数据密码模式。
AT+EXPKEY 键管理。
AT+CPLMN 在PLMN上的信息。
AT+ADC 模拟数字转换度量。
AT+CMER 移动设备事件报告。这个命令决定是否允许在键按下时是否主动发送结果代码。
AT+WLPR 读取语言偏好。
AT+WLPW 写语言偏好。
AT+WIOR 读取GPIO值。
AT+WIOW 写GPIO值。
AT+WIOM 输入/输出管理。
AT+WAC 忽略命令。这个特殊命令允许忽略SMS、SS和可用的PLMN。
AT+WTONE 播放旋律。
AT+WDTMF 播放DTMF旋律。
AT+WDWL 下载模式。
AT+WVR 配置信差的声音速率。
AT+WDR 配置数据速率。
AT+WHWV 显示硬件的版本。
AT+WDOP 显示产品的出厂日期。
AT+WSVG 声音增益选择。
AT+WSTR 返回指定状态的状态。
AT+WSCAN 扫描。
AT+WRIM 设置或返回铃声指示模式。
AT+W32K 是否允许32kHz掉电方式。
AT+WCDM 改变缺省旋律。
AT+WSSW 显示内部软件版本。
AT+WCCS 编辑或显示订制性质设置表。
AT+WLCK 允许在特定的操作符上个性化ME。
AT+CPHS 设置CPHS命令。
AT+WBCM 电池充电管理。
AT+WFM 特性管理。是否允许模块的某些特性,如带宽模式、SIM卡电压等。
AT+WCFM 商业特性管理。是否允许Wavecom特殊特性。
AT+WMIR 允许从当前存储的参数值创建定制的存储镜像。
AT+WCDP 改变旋律的缺省播放器。
AT+WMBN 设置SIM卡中的不同邮箱号码。

十三、SIM卡工具箱命令

AT+STSF 配置工具箱实用程序。
AT+STIN 工具箱指示。
AT+STGI 获得从SIM卡发来的预期命令的信息。
AT+STCR 主动提供的结果:工具箱控制反应。
AT+STGR 给出响应。允许程序或用户从主菜单上选择项目,或响应某些命令。

3 测试项目编制

3.1 协议项编制

利用格西调试精灵软件的直接激励功能,根据AT指令的格式进行协议编辑。

AT指令集及其通信测试方式

AT指令模版

3.2 测试用例编制

测试用例(Test Case)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。通信协议测试属于黑盒测试,可以采用黑盒测试常用的等价类划分法、边界值分析法、错误推测法、因果图法等基本方法来设计测试用例。

测试方案设计完成后,格西调试精灵软件能够利用编制完成的公共协议库,采用搭积木的方式,通过复制和粘贴命令即可非常快捷的创建测试用例。测试用例的组织方式通常是根据测试方案的设计层次采用树形结构分类组织。

4 应用实例

4.1 AT指令发送英文短消息