使用09生创新-3.开发板mands_第1页
使用09生创新-3.开发板mands_第2页
使用09生创新-3.开发板mands_第3页
使用09生创新-3.开发板mands_第4页
使用09生创新-3.开发板mands_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Application Note for SIM100 TCP/IP ATds文档名称:Application Note for SIM100TCP1.01版本:日期:2004 年3 月29日Application Note for SIM100TCP文档:状态:前言感谢您使用提供的SIM100 GSM/GPRS 模块。本产品具有标准AT命令接口,可以提供GSM 语音、短消息和GPRS 上网等业务。使用前请务必仔细阅读此用户手册,您将领略其完善强大的功能和简洁的操作方法。本设备主要用于语音或者数据通信,本公司不承担由于客户不正常操作造成的或者人身责任。请客户按照手册中的技术规格和参考设计开发相

2、应的产品。同时注意使用移动产品特别是GSM 产品应该关注的一般安全事项。在未之前,本公司根据技术发展的需要对本手册内容进行更改。本手册属于,任何人我公司同意将承担法律责任。1Application Note for SIM100 TCP/IP ATds版本2版本号拟制人/修改人拟制/修改日期更改理由主要更改内容1.002004-2-1创建1.012004-3-29修改Application Note for SIM100 TCP/IP ATds1. 如何使用TCP向远端SERVER传输数据先要建立一个TCP连接。模块作为CNT向的SERVER发起一个TCP连接,要成功建立连接需要SERVER端

3、为连接到ERNET的一台PC,而且该PC的IP地址是公网的IP地址(可以用拨号的方式获得,如在PC局域网则无法建立连接),然后该PC运行的SERVER,这时就可以在模块端用AT命令与SERVER建立TCP连接(AT+CIPSTART=“TCP”,“SERVER的IP地址”,“SERVER的端”),连接成功后会返回CONNECTOK。然后就可以用AT+CIPSEND发送数据到SERVER,若SERVER有数据,模块自动通过串口接收。要关闭TCP连接可用AT+CIPCLOSE命令。2. 如何使用UDP向远端SERVER传输数据先要一个UDP端口(AT+CIPSTART=“UDP”,“SERVER的

4、IP地址”,“SERVER的端”),成功后返回CONNECT OK。然后用AT+CIPSEND发送UDP包到SERVER,若SERVER有数据,模块自动接收,从串口送出。3. 如何发送数据要发送数据必须先要建立TCP连接或一个UDP连接。有3种方式发送数据。可变长度的数据发送可以用AT+CIPSEND命令,返回“”后输入发送的数据,ctrl+z(0 x1a)启动发送。固定长度的数据发送用AT+CIPSEND=LENGTH命令,返回“ ”后输入发送的数据,当输入的数据长度等于LENGTH的时候自动发送,不需结束符。还有一种自动发送方式,先用AT+CIPATS=,命令设定自动发送的时间,然后用AT

5、+CIPSEND返回”输入要发送的数据,等定时到了之后自动发送输入的数据。发送完成之后返回SEND OK。此时处于命令态,若有数据发送再重复以上的步骤就可以了。注意:每次发送的数据长度应小于1024bytes.4. 如何接收数据接收数据为自动接收,若有远端数据则自动接收。可以用AT+CIPHEAD=1在接收的数据前面自动加上标识。3Application Note for SIM100 TCP/IP ATds5. 如何使用SIM100TCP的SERVER功能模块可以配置为TCP SERVER,接收来自远端的TCP数据。具体的操作如下:AT+CIPCSGP=1,”cmnet”(GPRS方式)AT

6、+CLPORT=“TCP”,“PORT” (设定侦听的TCP的端)AT+CIPSERVER(启动SERVER功能,成功后返回SERVER OK,这时候已经启动了SERVER功能,开始侦听PORT)AT+CIFSR (获得SERVER的IP地址)或者:AT+CIPCSGP=0,”17201”,”172”,”172”, 2 (CSD方式,置为CSD连接,拨17201,用户名和密码皆为172,连接速率为9600)AT+CLPORT=“TCP”,“PORT”(设定侦听的TCP端)AT+CIPSERVER(启动SERVER功能,成功后返回CONNECT 9600 和 SERVER OK,这时候已经启动了

7、SERVER功能,开始侦听PORT)AT+CIFSR (获得SERVER的IP地址)可以用SMS通知远端模块本SERVER的IP地址和端,以便远端可以与之连接,收发数据。这时远端的模块就可以与本SERVER建立连接,收发数据了。CNT连接到SERVER,SERVER端会显示 REMOTE CNT的IP地址和端。这时候SERVER就可以接收来自REMOTE CNT的TCP数据包(不含TCP头)了。注意:目前TCP SERVER不能同时支持多个TCP连接。4Application Note for SIM100 TCP/IP ATds6.如何使用UDP,接收来自远端的数据可以使用SIM100TCP

8、的UDP功能,接收来自远端的UDP数据。具体过程如下:AT+CIPCSGP=1,”cmnet”(GPRS方式)AT+CLPORT=“UDP”,“端”(设置UDP端)AT+CSTT (启动TCP任务,成功后返回OK)AT+CIICR(激活场景,成功后返回OK)AT+CIFSR (获得本地IP地址)AT+CIPSTART=“UDP”,“REMOTE IP ADDR”,“REMOTE PORT”(UDP连接,其中“REMOTE IP ADDR”和“REMOTE PORT”可以随便设置一个,成功后返回CONNECT OK)或者AT+CIPCSGP=0,”17201”,”172”,”172”, 2 (C

9、SD方式,置为CSD连接,拨17201,用户名和皆为172,连接速率为9600)AT+CLPORT=“UDP”,“PORT”(设定UDP端)AT+CSTT (启动TCP任务)AT+CIICR (激活场景,成功后返回CONNECT 9600和OK)AT+CIFSR (获得本地IP地址)AT+CIPSTART=“UDP”,“REMOTE IP ADDR”,“REMOTE PORT”(UDP连接,其中“REMOTE IP ADDR”和“REMOTE PORT”可以随便设置一个,成功后返回CONNECT OK)此时就模块就可以接收到远端的UDP包。可以用AT+CIPSRIP=1在收到的UDP包的前面加

10、上标识和发送方的IP地址和端。5Application Note for SIM100 TCP/IP ATds7. 如何使用DNS功能利用SIM100TCP的DNS可直接连接到一个,或者可以用DNS步骤如下:获得IP地址。具体直接连接到一个1:先配置DNS AT+CDNSCFG=”211.136.18.171” (以为例)2:选择还是IP地址AT+CDNSORIP=1(选择3:建立连接)AT+CIPSTART=”TCP”,”, ”80”4:发送数据(连接到SERVER)AT+CIPSEND返回“”后开始发送数据,ctrl+z启动发送。获得IP地址 1:先激活一个移动场景 AT+CSTTAT+C

11、IICR AT+CIFSR2:配置DNSAT+CDNSCFG=”211.136.18.171” (以为例)3:,获得IP地址AT+CDNSGIP=“”返回该的IP地址8. 如何检测是否,断线后提示可以用AT+CIPSUS查询TCP所处的状态,具体状态请参考AT命令集,若处于连接状态则返回CONNECT OK。断线后会主动返回CLOSE信息,同时TCP状态为IP CLOSE。9. 如何区分接收的数据是AT命令的响应还是来自远端?设定AT+CIPHEAD=1,这样来自SERVER的数据前面就会自动加上一个标志,其格式为:+IPD(data length),+IPD为标识,data length为来

12、自SERVER端数据的长度。这样就可以区分是来自SERVER的数据还是AT命令的相应。6Application Note for SIM100 TCP/IP ATds10.如何使用SIM100TCP建立点对点的TCP连接,传输数据用 GPRS 方式的具体步骤为:第一台:AT+CLPORT=“TCP”,“3030”AT+CIPSERVER (启动 SERVER 功能,开始侦听 3030 端口) AT+CIFSR(获取本地 IP 地址) AT+CLPORT=“TCP”,“3000”(设置本地 TCP 端口)第二台:AT+CLPORT=“TCP”,“2020”AT+CIPSERVER (启动 SER

13、VER 功能,开始侦听 2020 端口) AT+CIFSR(获取本地 IP 地址) AT+CLPORT=“TCP”,“2000”(设置本地 TCP 端口)第一台:AT+CIPSTART=“TCP”,“REMOTE IP ADDR”,“2020”(REMOTE IP ADDR 可由对方发 SMS得到)已经建立连接第二台:AT+CIPSTART=“TCP”,“REMOTE IP ADDR”,“3030”已经建立连接之后任何一方就可以向另外一方发数据(用 AT+CIPSEND 发送)也可以用 CSD 方式建立,具体操作如下:第一台:AT+CIPCSGP=0,”17201”,”172”,”172”,

14、2 (CSD 方式,置为 CSD 连接,拨 17201,用户名和皆为 172,连接速率为 9600)AT+CLPORT=“TCP”,“3030”AT+CIPSERVER (启动 SERVER 功能,开始侦听 3030 端口) AT+CIFSR(获取本地 IP 地址) AT+CLPORT=“TCP”,“3000”第二台:AT+CIPCSGP=0,”17201”,”172”,”172”, 2 (CSD 方式,置为 CSD 连接,拨 17201,用户名和皆为 172,连接速率为 9600)AT+CLPORT=“TCP”,“2020”AT+CIPSERVER (启动 SERVER 功能,开始侦听 20

15、20 端口) AT+CIFSR(获取本地 IP 地址) AT+CLPORT=“TCP”,“2000”7Application Note for SIM100 TCP/IP ATds第一台:AT+CIPSTART=“TCP”,“REMOTE IP ADDR”,“2020”(REMOTE IP ADDR 可由对方发 SMS得到)已经建立连接第二台:AT+CIPSTART=“TCP”,“REMOTE IP ADDR”,“3030”已经建立连接之后任何一方就可以向另外一方发数据(用 AT+CIPSEND 发送)8Application Note for SIM100 TCP/IP ATds11.如何使

16、用SIM100TCP实现多个模块之间的互相通信目前SIM100TCP不支持多个TCP同时连接,但是可以用UDP方式来实现。可以用模块启动UDP功能,这样模快就可以接收来自远端的UDP包,可以通过收到的UDP包获取发送方的IP地址和端,然后本模块就可以作出应答,回应一个UDP包,实现相互的通讯。下面是一个简单的例子:假设A,B,C三个模块要相互通信,可以用以下的方式实现(以GPRS方式为例)1:A,B,C分别初始化如下:AT+CIPCSGP=1,”cmnet”(GPRS方式)AT+CLPORT=“UDP”,“端”(设置UDP端)AT+CSTT (启动TCP任务,成功后返回OK)AT+CIICR(

17、激活场景,成功后返回OK)AT+CIFSR (获得本地IP地址)AT+CIPSTART=“UDP”,“REMOTE IP ADDR”,“REMOTE PORT”(UDP连接,其中“REMOTE IP ADDR”和“REMOTE PORT”可以随便设置一个,成功后返回CONNECT OK)2:若A要向B发送数据,只要这样就可以了:AT+CIPCLOSE (注销当前UDP连接)AT+CIPSTART=“UDP”,“B的IP地址”,“B的端新的UDP连接)”(成功后会返回CONNECT OK和OK)AT+CIPSEND(发送数据)若C有数据发给A,则A自动接收到,同时可以获得C的IP地址和端,这样A就可以发UDP包给C了,具体过程跟上面类似。9Application Note for SIM100 TCP/IP ATds12.TCP连接出错后应该如何处理若在建立TCP连接的过程中出现错误或

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论