GPRS AT 指令中文

来源:互联网 发布:windows dos2unix安装 编辑:程序博客网 时间:2024/05/21 22:01

GPRS AT 指令中文(1

 

FUNCTIONS AT COMMANDS  DETAILS 

厂家认证  AT+CGMI  获得厂家的标识 

模式认证  AT+CGMM  查询支持频段 

修订认证  AT+CGMR  查询软件版本 

生产序号  AT+CGSN  查询IMEI NO. 

TE设置  AT+CSCS  选择支持网络 

查询IMSI  AT+CIMI  查询国际移动电话支持认证 

卡的认证  AT+CCID  查询SIM卡的序列号 

功能列表  AT+GCAP  查询可供使用的功能列表 

重复操作  A/  重复最后一次操作 

关闭电源  AT+CPOF  暂停模块软件运行 

设置状态  AT+CFUN  设置模块软件的状态 

活动状态  AT+CPAS  查询模块当前活动状态 

报告错误  AT+CMEE  报告模块设备错误 

键盘控制  AT+CKPD  用字符模拟键盘操作 

拨号命令  ATD  拨打电话号码 

挂机命令  ATH  挂机 

回应呼叫  ATA  当模块被呼叫时回应呼叫 

详细错误  AT+CEER  查询错误的详细原因 

DTMF信号 AT+VTD+VTS  +VTD设置长度,+VTS发送信号 

重复呼叫  ATDL  重复拨叫最后一次号码 

自动拨号  AT%Dn  设备自动拨叫号码 

自动接应  ATS0  模块自动接听呼叫 

呼入载体  AT+CICB  查询呼入的模式,DATA or FAX or SPEECH 

增益控制  AT+VGR+VGT  +VGR调整听筒增益,+VGT调整话筒增益 

静音控制  AT+CMUT  设置话筒静音 

声道选择  AT+SPEAKER  选择不同声道(2对听筒和话筒) 

回声取消  AT+ECHO  根据场所选择不同回声程度 

单音修改  AT+SIDET  选择不同回声程度 

初始声音参数  AT+VIP  恢复到厂家对声音参数的默认设置 

信号质量  AT+CSQ  查询信号质量 

 

 

GPRS 指令中文(2

 

网络选择  AT+COPS  设置选择网络方式(自动/手动) 

网络注册  AT+CREG  当前网络注册情况 

网络名称  AT+WOPN  查询当前使用网络提供者 

网络列表  AT+CPOL  查询可供使用的网络 

输入PIN  AT+CPIN  输入PIN 

输入PIN2  AT+CPIN2  输入第二个PIN 

保存尝试  AT+CPINC  显示可能的各个PIN 

简单上锁  AT+CLCK  用户可以锁住状态 

改变密码  AT+CPWD  改变各个PIN 

选择电话簿  AT+CPBS  选择不同的记忆体上存储的电话簿 

读取电话簿  AT+CPBR  读取电话簿目录 

查找电话簿  AT+CPBF  查找所需电话目录 

写入电话簿  AT+CPBW  增加电话簿条目 

电话号码查找  AT+CPBP  查找所需电话号码 

动态查找  AT+CPBN  查找电话号码的一种方式 

用户号码  AT+CNUM  选择不同的本机号码(因网络服务支持不同) 

避免电话簿初始化  AT+WAIP  选择是否防止电话簿初始化 

选择短消息服务  AT+CSMS  选择是否打开短消息服务以及广播服务 

短消息存储  AT+CPMS  选择短消息优先存储区域 

短消息格式  AT+CMGF  选择短消息支持格式(TEXT or PDU 

保存设置  AT+CSAS  保存+CSCA and +CSMP参数设置 

恢复设置  AT+CRES  恢复+CSCA and +CSMP参数设置 

显示TEXT参数  AT+CSDH  显示当前TEXT模式下结果代码 

 

 

 

GPRS AT指令(3

 

新消息提示  AT+CNMI  选择当有新的短消息来时系统提示方式 

读短消息  AT+CMGR  读取短消息 

列短消息  AT+CMGL  将存储的短消息列表 

发送短消息  AT+CMGS  发送短消息 

写短消息  AT+CMGW  写短消息并保存在存储器中 

从内存中发短消息  AT+CMSS  发送在存储器中保存的短消息 

设置TEXT参数  AT+CSMP  设置在TEXT模式下条件参数 

删除短消息  AT+CMGD  删除保存的短消息 

服务中心地址  AT+CSCA  提供短消息服务中心的号码 

选择广播类型  AT+CSCB  选择系统广播短消息的类型 

广播标识符  AT+WCBM  读取SIM卡中系统广播标识符 

短消息位置修改  AT+WMSC  修改短消息位置 

短消息覆盖  AT+WMGO  写一条短消息放在第一个空位 

呼叫转移  AT+CCFC  设置呼叫转移 

呼入载体  AT+CLCK  锁定呼入载体以及限制呼入或呼出 

修改SS密码  AT+CPWD  修改提供服务密码 

 

 

 

GPRS AT指令中文(4

 

呼叫等待  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  选择发送数据or 传真 

服务报告控制  AT+CR  是否报告提供服务 

结果代码  AT+CRC  报告不同的结果代码(传输方式、语音或数据) 

设备速率报告  AT+ILRR  是否报告当前传输速率 

协议参数  AT+CRLP  设置无线连接协议参数 

其他参数  AT+DOPT  设置其他的无线连接协议参数 

传输速度  AT+FTM  设置传真发送的速度 

接收速度  AT+FRM  设置传真接收的速度 

HDLC传输速度 AT+FTH  设置传真发送的速度(使用HDLC协议) 

 

 

 

GPRS AT指令中文(5

 

HDLC接收速度 AT+FRH  设置传真接收的速度(使用HDLC协议) 

停止传输并等待  AT+FTS  停止传真的发送并等待 

静音接收  AT+FRS  保持一段静音等待 

固定终端速率  AT+IPR  设置数据终端设备速率 

其他位符  AT+ICF  设置停止位、奇偶校验位 

流量控制  AT+IFC  设置本地数据流量 

设置DCD信号  AT&C  控制数据载体探测信号 

设置DTR信号  AT&D  控制数据终端设备准备信号 

设置DSR信号  AT&S  控制数据设备准备信号 

返回在线模式  ATO  返回到数据在线模式 

结果代码抑制  ATQ  是否模块回复结果代码 

DCE回应格式 ATV  决定数据通信设备回应格式 

默认设置  ATZ  恢复到默认设置 

保存设置  AT&W  保存所有对模块的软件修改 

自动测试  AT&T  自动测试软件 

回应  ATE  是否可见输入字符 

回复厂家设置  AT&F  软件恢复到厂家设置 

显示设置  AT&V  显示当前的一些参数的设置 

认证信息  ATI  显示多种模块认证信息 

区域环境描述  AT+CCED  用户获取区域参数 

自动接收电平显示  AT+CCED  扩展到显示接收信号强度 

一般显示  AT+WIND  

ME MSC 之间数据计算模式  AT+ALEA  

数据计算模式  AT+CRYPT  

键盘管理  AT+EXPKEY  

PLMN上的信息 AT+CPLMN  

模拟数字转换测量  AT+ADC  

模块事件报告  AT+CMER  

选择语言  AT+WLPR  选择可支持的语言 

增加语言  AT+WLPW  增加可支持的语言 

GPIO  AT+WIOR  

GPIO  AT+WIOW  

放弃命令  AT+WAC  用于放弃SMSSS and PLMN 

设置单音  AT+WTONE  设置音频信号(WMOi3 

设置DTMF  AT+WDTMF  设置DTMF音(WMOi3 

 

 

AT指令操作GPRS Modem实现网络传输 

GPRS Moderm实现TCP连接的AT指令主要操作步骤:

  AT/r

  AT+ccid/r //检测是否装有SIM

  AT+cgmr/r //检测软件版本,5.0 以上的才有GPRS 功能支持

  AT+csq/r //检测信号质量,确定是否可以登陆上网络;若返回10--310之间的信号数字则继续,

           如果信号是9999,则应该考虑不停的的让模块去搜寻网络。

  

 

  AT+CGCLASS="B"/r  //设置模块工作类型

  AT+CGDCONT=1,"IP","CMNET"/r

  AT+CGATT=1  //激活PDP,获得IP

 

  AT+CIPCSGP=1,"CMNET"/r

  AT+CIPSTART="TCP",211.147.18.79,1433/r

  AT+CIPSEND/r

  >   //返回“>”后输入要传输的数据,再发送CTRL+Z,即将所要发送的数据发送到指定IP的服务器上

  AT+CIPCLOSE/r  //只有在TCP/UDP处于CONNECT OK的状态下才返回OK,否则返回ERROR

  AT+CIPSHUT/r   //关闭移动场景

 

 

 

通过串口发送AT的过程

 

1)设置串口参数

 (2)打开串口

3)发送AT指令,然后等待模块响应

 (4)接收相应,然后处理

 (5)通讯完成,关闭串口

 

 

(原创)AT 发送中文短信 流程

 

AT

OK

AT+IPR=115200

OK

AT+FLO=0

OK

AT+CSCA?

+CSCA: "+8613800100500",145   //短信服务中心号码(北京)

OK

AT+CMGF=0                     //PDU模式发送

OK

AT+CSCS="UCS2"                //Unicode编码

OK

AT+CMGS=019                   //代表发送字节长度短消息中心号码和目

                              //的号码包含其中中文用unicode编码

>0011000D91683119509808f0000801044f60597d  //手机号码13910589800

 

+CMGS: 93

0011000D91685109114796F0000801044F60597D

0011000D91685123818000F1000801044F60597D

0011000D91683110259505F0000801044F60597D

13015259500


5。编程技巧

18701557905

发送完AT指令后,一般需要等待模块做出响应。串口通讯是一种流式通讯,通讯另一方可能正常相应,也有可能不能正常响应,这是就需要对这种情况进行处理。

 

1)可以设置读超时,如果对方不能正常响应,则系统会认为与对方通讯失败

 

2)如果对方成功响应,那么还需要对对方相应的信息进行判断,确定串口数据流中的那些是相应自己AT指令的数据。一般地,期望的响应都有一定的特征信息,可以通过判断相应的数据是否包含特征信息来判断。

 

例如,一般当发送一个AT指令后,通常会有一个OK作为相应的结尾,那么就可以通过相应数据是否包含OK判断针对自己的响应是否结束。

 

例如,如果GSM/GPRS模块认为指令有问题,或者执行指令出错,会返回ERROR,那么程序就不能一直等待自己期望的特征数据出现,如遇到ERROR,就应该返回报错。

 

3)即使对方能够成功响应,有时候对方对指令的处理需要一定的时间,这时候并不能通过一个read函数将所有的相应数据都读回。因此就需要将每次读回的数据缓存起来,然后不断的读取数据,直到期望的特征数据出现为止。

 

4)在不断的读取数据时,应该在每次读取之间sleep一小会,以保证下次尽量能够读到数据。

 

基于GSM模块实现中文短信息发送

苗雨  孟显勇

(吉林大学珠海学院,广东  珠海 519041)

 

    摘 要 短信的发送需要GSM模块和处理器协作完成,GSM模块与ARM处理器通过串口连接,处理器向串口发送接收AT命令与GSM模块形成通信回路。中文短信的发送采用PDU模式,根据PDU模式标准形成PDU发送包,实现短信发送。本文根据无线电话项目的短信发送模块的实现开发流程编写。

    关键词 GSMSMSAT命令;PDU

 

1  引言

   2007年全国手机短信发送量达到5921亿条,日均发送量超过16亿条。短信的应用也扩展到各个领域,本文介绍了多媒体电话短消息发送模块的实现原理和具体的实现方法。由短消息发送流程可以了解短信息发送过程的每一个环节,对短信息安全,屏蔽垃圾短信有一定的作用。

2 GSM模块及GSM模块的短信功能

   GSM(Global System for Mobile communication)系统是目前基于时分多址技术的移动通讯体制中比较成熟、完善、应用最广泛的一种系统。目前已建成的覆盖全国的GSM数字蜂窝移动通信网,是我国公众移动通信网的主要方式,主要提供话音、短信息、数据等多种业务。基于GSM短消息功能可以做成传输各种检测、监控数据信号和控制命令的数据通信系统,能广泛用于远程监控、定位导航、个人通信终端等。由于公众GSM网络在全球范围内实现了联网和漫游,建立上述系统不需再组建专用通信网络,所以具有实时传输数据功能的短消息应用将得到迅速普及。

   SMS是由Etsi所制定的一个规范(GSM 03.40 GSM 03.38)。它可以发送最多160个字符,当使用7-bits编码的时候,8-bit编码(最多140个字符)通常无法直接通过手机显示,通常被用来作为数据消息。16-bit信息(最多70个字符)被用来显示Unicode(UCS2)文本信息,可以被大多数的手机所显示。一个以class 0 开头的16-bit的文本信息将在某些手机上作为Flash SMS显示。

3  实现中文短信发送

   GSM模块支持两种方式来发送和接收SMS短信息,文本模式和PDU(Protocol Description Unit)模式,文本模式只能发送普通的Ascill字符,要发送图片,铃声,其它编码的字符(如中文)就必须采用PDU模式。

   PDU模式中,可以采用三种编码方式来编码要发送的内容,分别是7bit编码,8bit编码,16bit编码,7bit编码用于发送普通的Ascill字符,8bit编码通常用于发送数据信息,如图片和铃声,而16bit编码用于发送Unicode字符。三种编码可以发送的最大字符分别是16014070

发送中文短信要采用PDU模式的Unicode编码方式,具体步骤描述如下:

   (1)GB2321编码到Unicode编码的转换。

    操作系统提供函数(有些系统不提供,如deltaos)

    手动查表。

   (2)Unicode编码到16bit编码的转换。

    得到的Unicode编码后,还需要转换成PDU16bit编码才可以正确的发送。

    这个转换过程中Unicode编码最开始的0xffff标志要去掉,在0xffff之后的内容才是真正的Unicode字符。

    ●Unicode是双字节,根据系统如果是小端字节序(littleendian),也就是说,存储的时候,先存低位再存高位,例如:Unicode编码是0x4E2D,储存的时候是2D4E,在转换到16bit编码的时候要转换顺序,如果是大端字节序(bigendian)如本系统,就不需要转换了。

    正确计算16bit编码的消息体长度,PDU规范中,包括消息体本身。

    正确设置TYPETPMRTPPIDTPVP,在下文PDU格式中,依次设置为:1100000801(以上都为16进制数)

   (3)形成标准的发送包。

3.1 短信发送过程分析

    处理器通过向串口发送接收AT命令与GSM模块形成通信回路,通过AT命令实现对GSM模块的基本操作,用于发送短信的AT命令如表1所示。

    发送短信可用文本模式和协议数据单元模式(PDUprotocol data unit)。大多手机不支持文本模式,只支持PDU模式。PDU模式是把短信正文经十六进制编码后被传送,其编码总体上分为三个部分:服务中心号、接收方手机号、短信内容,如你好短信PDU编码是这样的(其中xyz是手机号具体数字) 0011000B8131258698yxFz000801044F60597D,其意义如表2所示。

 

 

1 发送短信使用的AT命令

AT命令 功能 例子

AT+CMGF 设置短信的格式,0=PDU模式(默认)1=文本模式 AT+CMGF=0

AT+CSCA 获取服务中心的号码 AT+CSCA?

AT+CMGS 发送AT+CMGS= YYY ;其中 YYY TPDU的十进制长度AT+CMGS=19

接收到“>” 响应后发送短信内容  

 

2 发送数据分析

接收号部分 短信内容部分

00 11 00 0B 8131208698yxFz 000801 044F605970

00SCA00写入,应用默认的服务中心地址,该服务中心地址用AT+CSCA指令写入

11PDU类型

00TPMR表示MR 消息参考

0B:接收号字符数

81:表示是国内代码

31258698yxFz:接收号 编码时长度为奇数末尾追加“F”每两个字节进行位置交换,即13526889xyz

00TPPID协议标示

08TPDCS数据编码方式

01TPVP有效期

04UDL用户数据长度,用十六制表示

4F60597D:短信内容的UNICODE编码

 

 

 

    如果发送成功,串口返回以下结果:    

   +CMGS X  这里的X是个数字  

   OK

3.2 发送短信程序流程及主要函数

 

 

   1)接口函数_SendMessage()

   

 

   2)发送短信主体函数Send_SMS()

 

 

   3)数据处理函数MakeSSP()

    函数MakeSSP是短信发送部分重要函数,把struct_SMS _appUnit结构中的数据转换成struct _SMS_SUBMIT_PDU结构,形成发送包。

4 总结

以上详述了短信发送模块实现的步骤,本文内容通过测试。可以实现短信的发送,响应时间等参数符合要求。但如果要连续发送短信,或短信发送量要求比较高的情况还需要设计数据库实现数据的管理。对于短信发送的信息安全问题,将是下一个阶段的研究重点。

 

手机发短信常用AT指令

 

 

实用的AT指令

  单片机和GSM引擎之间采用AT指令实现互相之间的通信,因此有必要了解一下AT指令的格式和几条常用的指令。更详细的资料可以参考GSM07.05GSM07.07规范。

  单片机发出的AT指令用来建立通信链路,AT指令集的命令格式帧都以AT开头,下面是几个常用的AT指令。

1.设置短消息中心

AT+CSCA=“+8613800270500”回车(具体的号码由当地的运营商决定。)

2.接收短消息

+CMTI“SM”X (X表示接收短消息的SIM卡存储号码)

AT+CMGR=X回车 (X存储区读短消息)

AT+CMGD=X回车 (X存储区删除短消息)

3.发送短消息

AT+CMGF=1回车(采用文本格式发送,如用PDU格式,则AT+CMGF=0)

AT+CMGS=“+8613xxxxxxxxx”回车

>输入短消息。Crtl+Z结束并发送。

4.重要的指令

ATZ;E 回车 Echo OFF

ATZ;E1回车 Echo ON

AT+CREG?回车 回答x(X=2脱网,X=1注册,X=0状态不明)

AT+COPS?回车 表示SIM卡是否被网络接受

AT+COPS=?回车 显示所有可用的网络。

5.建立语音呼叫

AT+CREG?回车(是否网络注册)

ATD13xxxxxxxxx;回车(语音呼叫和数据呼叫建立的区别在于号码后所接的分号上)

6.改变并保存参数

AT+IPR=2400 回车(改变RS232口的速率至2400bps)

AT&W 回车 (保存已改参数)

7.输入PIN

AT+CPIN=“xxxx”


通信链路建立以后,单片机就可以发出信息单元帧了,信息的帧格式如下:

其中标志帧开始的帧头为十六进制的10H02H,标志信息结束的是10H03H,最后二位是数据部分按16位求和以后取模的结果,用做校验位。对于数据位,为了避免出现错误的结束标志,规定每出现一个10H码字以后,后面插入一个空字符00H。接收端如果收到信息以后,就要相应地去掉空字符。如果接收端收到的数据部分和BCS部分按照16位相加以后的结果不等于0,就表示传输出现错误,所收到的信息就要丢掉。

 

原创粉丝点击