常见问题
Q 在用 AT 命令同手机通信时,需要注意哪些问题?
A 任何一个 AT 命令发给手机,都可能返回成功或失败。例如,用 AT+CMGS 命令发送短消息时,如果此时正好手机处于振铃或通话状态,就会返回一
个"+CMS ERROR"。所以,应当在发送命令后,检测手机的响应,失败后重发。而且,因为只有一个通信端口,发送和接收不可能同时进行。如果串口通信用
超时控制的同步(阻塞)模式,一般做法是专门将发送/接收处理封装在一个工作子线程内。
关于 AT COMMAND 的命令集
下面的内容仅供参考。
一、 一般命令
1、 AT+CGMI 给出模块厂商的标识。
2、 AT+CGMM 获得模块标识。这个命令用来得到支持的频带(GSM 900,DCS 1800 或 PCS 1900)。当模块有多频带时,回应可能是不同频带的结合。
3、 AT+CGMR 获得改订的软件版本。
4、 AT+CGSN 获得 GSM 模块的 IMEI(国际移动设备标识)序列号。
5、 AT+CSCS 选择 TE 特征设定。这个命令报告 TE 用的是哪个状态设定上的 ME。ME 于是可以转换每一个输入的或显示的字母。这个是用来发送、读取或
者撰写短信。
6、 AT+WPCS 设定电话簿状态。这个特殊的命令报告通过 TE 电话簿所用的状态的 ME。ME 于是可以转换每一个输入的或者显示的字符串字母。这个用来读
或者写电话簿的入口。
7、 AT+CIMI 获得 IMSI。这命令用来读取或者识别 SIM 卡的 IMSI(国际移动签署者标识)。在读取 IMSI 之前应该先输入 PIN(如果需要 PIN 的话)。
8、 AT+CCID 获得 SIM 卡的标识。这个命令使模块读取 SIM 卡上的 EF-CCID 文件。
9、 AT+GCAP 获得能力表。(支持的功能)
10、 A/ 重复上次命令。只有 A/命令不能重复。这命令重复前一个执行的命令。
11、 AT+CPOF 关机。这个特殊的命令停止 GSM 软件堆栈和硬件层。命令 AT+CFUN=0 的功能与+CPOF 相同。
12、 AT+CFUN 设定电话机能。这个命令选择移动站点的机能水平。
13、 AT+CPAS 返回移动设备的活动状态。
14、 AT+CMEE 报告移动设备的错误。这个命令决定允许或不允许用结果码“+CME ERROR:<xxx>”或者“+CMS ERROR:<xxx>”代替简单的“ERROR”。
15、 AT+CKPD 小键盘控制。仿真 ME 小键盘执行命令。
16、 AT+CCLK 时钟管理。这个命令用来设置或者获得 ME 真实时钟的当前日期和时间。
17、 AT+CALA 警报管理。这个命令用来设定在 ME 中的警报日期/时间。(闹铃)
18、 AT+CRMP 铃声旋律播放。这个命令在模块的蜂鸣器上播放一段旋律。有两种旋律可用:到来语音、数据或传真呼叫旋律和到来短信声音。
19、 AT+CRSL 设定或获得到来的电话铃声的声音级别。
二、 呼叫控制命令
1、 ATD 拨号命令。这个命令用来设置通话、数据或传真呼叫。
2、 ATH 挂机命令。
3、 ATA 接电话。
4、 AT+CEER 扩展错误报告。这个命令给出当上一次通话设置失败后中断通话的原因。
5、 AT+VTD 给用户提供应用 GSM 网络发送 DTMF(双音多频)双音频。这个命令用来定义双音频的长度(默认值是 300 毫秒)。
6、 AT+VTS 给用户提供应用 GSM 网络发送 DTMF 双音频。这个命令允许传送双音频。
7、 ATDL 重拨上次电话号码。
8、 AT%Dn 数据终端就绪(DTR)时自动拨号。
9、 ATS0 自动应答。