首页 理论教育 SIM900A模块AT指令简介

SIM900A模块AT指令简介

时间:2023-06-25 理论教育 版权反馈
【摘要】:用户可以通过AT指令进行呼叫、短信、电话本、数据业务、传真等方面的控制。SIM900A模块提供的AT命令包含符合GSM07.05、GSM07.07和ITU-T Recommendation V.25ter的指令,以及SIMCOM自己开发的指令。接下来我们介绍几个常用的AT指令。AT+CSQ:该指令用于查询信号质量,返回SIM900A模块的接收信号强度,如返回:+CSQ:24,0,表示信号强度是24。ATE1:该指令用于设置回显模式,即模块将收到的AT指令完整的返回给发送端,启用该功能,有利于调试模块。

SIM900A模块AT指令简介

AT即attention,AT指令集是从终端设备(terminal equipment,TE)或数据终端设备(data terminal equipment,DTE)向终端适配器(terminal adapter,TA)或数据电路终端设备(data circuit terminal equipment,DCE)发送的。通过TA,TE发送AT指令来控制移动台(mobile station,MS)的功能,与GSM网络业务进行交互。用户可以通过AT指令进行呼叫、短信、电话本、数据业务、传真等方面的控制。

SIM900A模块提供的AT命令包含符合GSM07.05、GSM07.07和ITU-T Recommendation V.25ter的指令,以及SIMCOM自己开发的指令。接下来我们介绍几个常用的AT指令。

1)查询类指令

(1)AT+CPIN?

该指令用于查询SIM卡的状态,主要是PIN码,如果该指令返回:+CPIN:READY,则表明SIM卡状态正常,返回其他值,则有可能是没有SIM卡。

(2)AT+CSQ:

该指令用于查询信号质量,返回SIM900A模块的接收信号强度,如返回:+CSQ:24,0,表示信号强度是24(最大有效值是31)。如果信号强度过低,则要检查天线是否接好了。

(3)AT+COPS?

该指令用于查询当前运营商,该指令只有在连上网络后,才返回运营商,否则返回空,如返回:+COPS:0,0,“CHINA MOBILE”,表示当前选择的运营商是中国移动

(4)AT+CGMI:

该指令用于查询模块制造商,如返回:SIMCOM_Ltd,说明SIM900A模块是SIMCOM公司生产的。

(5)AT+CGMM:

该指令用于查询模块型号,如返回:SIMCOM_SIM900A,说明模块型号是SIM900A。

(6)AT+CGSN:

该指令用于查询产品序列号(即IMEI号),每个模块的IMEI号都是不一样的,具有全球唯一性,如返回:869988012018905,说明模块的产品序列号是:869988012018905。

(7)AT+CNUM:

该指令用于查询本机号码,必须在SIM卡在位的时候才可查询,如返回:+CNUM:"15902020353",129,7,4,则表明本机号码为:15902020353。另外,不是所有的SIM卡都支持这个指令,有个别SIM卡无法通过此指令得到其号码。

(8)ATE1:

该指令用于设置回显模式(默认开启),即模块将收到的AT指令完整的返回给发送端,启用该功能,有利于调试模块。如果不需要开启回显模式,则发送ATE0指令即可关闭(我们的例程就需要这样),这样收到的指令将不再返回给发送端,这样方便程序控制。

2)GPRS指令

(1)AT+CGCLASS:

用于设置移动台类别。SIM900A模块仅支持类别“B”和“CC”,发送:AT+CGCLASS=“B”,设置移动台类别为B。即,模块支持包交换和电路交换模式,但不能同时支持。

(2)AT+CGDCONT:

用于设置PDP上下文。发送:AT+CGDCONT=1,“IP”,“CMNET”,设置PDP上下文标标志为1,采用互联网协议(IP),接入点为“CMNET”。

(3)AT+CGATT:(www.xing528.com)

用于设置附着和分离GPRS业务。发送:AT+CGATT=1,附着GPRS业务。

(4)AT+CIPCSGP:

用于设置CSD或GPRS链接模式。发送:AT+CIPCSGP=1,“CMNET”,设置为GPRS连接,接入点为“CMNET”。

(5)AT+CIPHEAD:

用于设置接收数据是否显示IP头。发送:AT+CIPHEAD=1,即设置显示IP头,在收到TCP/UDP数据的时候,会在数据之前添加如:+IPD:28,表示是TCP/UDP数据,数据长度为28字节。通过这个头,可以方便我们在程序上区分数据来源。

(6)AT+CLPORT:

用于设置本地端口号。发送:AT+CLPORT=“TCP”,“8888”,即设置TCP连接本地端口号为8888。

(7)AT+CIPSEND:

用于发送数据。在连接成功以后发送:AT+CIPSEND,模块返回:>,此时可以输入要发送的数据,最大可以一次发送1 352字节,数据输入完后,输入十六进制的:1A(0X1A),启动发送数据。在数据发送完成后,模块返回:SEND OK,表示发送成功。

3)短信类指令

(1)AT+CNMI:

用于设置新消息指示。发送:AT+CNMI=2,1,设置新消息提示,当收到新消息,且SIM卡未满的时候,SIM900A模块会通过串口输出数据,如:+CMTI:"SM",2,表示收到接收到新消息,存储在SIM卡的位置2。

(2)AT+CMGF:

用于设置短消息模式,SIM900A支持PDU模式和文本(TEXT)模式等2种模式,发送:AT+CMGF=1,即可设置为文本模式。

(3)AT+CSCS:

用于设置TE字符集,默认的为GSM 7位缺省字符集,在发送纯英文短信的时候,发送:AT+CSCS=“GSM”,设置为缺省字符集即可。在发送中英文短信的时候,需要发送:AT+CSCS=“UCS2”,设置为16位通用8字节倍数编码字符集。

(4)AT+CSMP:

用于设置短消息文本模式参数,在使用UCS2方式发送中文短信的时候,需要发送:AT+CSMP=17,167,2,25,设置文本模式参数。

(5)AT+CMGR:

用于读取短信,比如发送:AT+CMGR=1,则可以读取SIM卡存储在位置1的短信。

(6)AT+CMGS:

用于发送短信,在“GSM”字符集下,最大可以发送180个字节的英文字符,在"UCS2"字符集下,最大可以发送70个汉字(包括字符/数字)。

(7)AT+CPMS:

用于查询/设置优选消息存储器,通过发送:AT+CPMS?,可以查询当前SIM卡最大支持多少条短信存储,以及当前存储了多少条短信等信息。如返回:+CPMS:“SM”,1,50,“SM”,1,50,“SM”,1,50,表示当前SIM卡最大存储50条信息,目前已经有1条存储的信息。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈