MC55 TCP(R3透传)使用方法

MC55 TCP 使用方法功能简介:1可用作TCP 的客户端和服务器端2可用作UDP,FTP,HTTP,SMTP,POP3客户端3 支持IP 地址和域名访问4 一次只能打开一个连接,不支持同时多个连接

MC55 TCP 使用方法

功能简介:

1可用作TCP 的客户端和服务器端

2可用作UDP,FTP,HTTP,SMTP,POP3客户端

3 支持IP 地址和域名访问

4 一次只能打开一个连接,不支持同时多个连接(除非外加协议栈),比如不支持同时打开多个TCP 连接。

5 传输数据包最大为1500字节

TCP 使用方法:

上电

AT CREG?

CREG:0,1或5才注册成功,才可以向下执行

OK

创建connecting profile

at^sics=0,conType,GPRS0

at^sics=0,passwd,gprs

at^sics=0,user,cm

at^sics=0,apn,cmnet

创建tcp service profile

at^siss=1,srvType,socket

at^siss=1,conId,0

at^siss=1,address,"socktcp://124.126.160.98:34560"

或at^siss=1,address,"socktcp://me99.vicp.net:34560"

// at^siss=1,address,"socktcp://unipels.oicp.net :34560"

打开TCP 连接

AT^SISO=1

写入数据

AT^SISW=1,20 //要发送20个字节

12345678901234567890 //收到20个数据后,MC55将自动发送出去 读入数据

AT^SISR=1,1500 //读入1500个接收缓冲区

关闭tcp

AT^SISC=1

,

注意:我已经测试过,收发数据都没有问题,由于我的GPRS 数据卡不是包月的,所以大数据量传输没有测试。

例子:

创建connecting profile:

at^sics=0,conType,GPRS0

OK

at^sics=0,passwd,gprs

OK

at^sics=0,user,cm

OK

at^sics=0,apn,cmnet

OK

创建tcp service profile:

at^siss=1,srvType,socket

OK

at^siss=1,conId,0

OK

at^siss=1,address,"socktcp://122.232.15.115:34560"

OK //这里应该使用用户的IP 地址或域名 打开TCP 连接

AT^SISO=1

OK

^SISW: 1, 1 (tcp连接成功)

at^sisw=1,20 (要向服务器发送20个字节的数据)

^SISW: 1, 20, 20 (模块提示准备要接收20个字节的数据)

xxxxxxxxxxxxxxxxxxxx (数据内容)

OK

^SISW:1,1 (发送成功)

^SISR: 1, 1 (接收到数据)

AT^SISR=1,1500 (读取缓冲区前1500字节数据)

^SISR: 1, 29

www.bjcjt.com (数据内容)

14:21:02 OK

OK

这里要说一下,许多用户说,测试时MC55连接服务器不成功,问这个是什么原因。我想提醒大家注意:

1, 首先要确定IP 及端口是正确的,要保证你的这个IP 及端口上运行的服

务器软件可以正常连接(一定要外网IP 可以正常连接以后,再用MC55测试)

2, 绝大多数是服务器自身的问题,另外一个是卡的问题,要保证这个SIM

卡可以访问INTERNET ,也就是说卡要支持CMNET 网关,有些地区神州

,

行的卡只能使用CMWAP 网关(只能访问移动内网,而不能访问INTERNET )。最好使用全球通或动感地带的卡。

at^siss=1,address,"socktcp://me99.vicp.net:34560" //设置目的服务器 OK

at^siso=1

OK

^SISW: 1, 1

^SISR: 1, 1

at^sisw=1,5

^SISW: 1, 5, 5

OK

^SISW: 1, 1

at^sisw=1,5,1

^SISW: 1, 5, 5

OK

at^siso=1

CME ERROR: 3

at^sisc=1

OK

at^siso=1

OK

at^sisw=1,5,0,1

^SISW: 1, 1500, 0

12312

OK

^SISW: 1, 1

^SISR: 1, 1

^SISW: 1, 1

at^sisw=1,10,0,1

^SISW: 1, 1500, 0 //建立连接 //URC:连接成功,能发数据 //URC:收到服务器数据 //要发送5个字节数据,采用二进制方式发送 //URC:准备好接收数据 //输入5个数据(不显示) //URC:发送成功 //URC:可以发送数据 //再要发送5个数据,带结束标志(发送完成后断开连接)//URC:准备接收5个数据 //输入数据(不显示) //发送成功(此时查看服务器端,连接已经断开) //再次试图连接服务器 //URC:返回ERROR //必须先关闭刚才的连接 //再次连接服务器 //连接成功 //要发送5个字节,采用交互方式,没有断开标志 //URC:准备接收数据 //数据内容,共5个字节,结束符 //URC:发送成功 //URC:可以发送数据 //URC:收到服务器发来的数据 //URC:可以发送数据 //再次要发送数据,采用交互方式,没有断开标志 //URC:准备接收数据

,

1234567890 //数据内容,共10个字节,结束符

OK //URC:发送成功

^SISW: 1, 1 //URC:可以发送数据

at^sisr=1,0 //想要查询目前共收到多少数据

^SISR: 1, 290 //URC:共收到290个字节

OK

at^sisw=1,5,0,1 //再次发送数据,采用交互方式,没有断开标志 ^SISW: 1, 1500, 0 //URC:准备接收数据

adfsasa12312312312312312313 //输入数据,共27个字节,结束符

OK //URC:发送成功

^SISR: 1, 1 //URC:接收到数据

^SISW: 1, 1 //URC:可以发送数据

at^sisr=1,0 //查询当前共收到多少数据

^SISR: 1, 464 //URC:共收到464个字节

OK

^SISR: 1, 1 //URC:收到数据

at^sisr=1,0 //查询当前共收到多少数据

^SISR: 1, 493 //URC:共收到493个字节

OK

at^sisw=1,1,0,1 //再次发送数据,采用交互方式,没有断开标志

^SISW: 1, 1500, 0 //URC:准备好接收数据

12345 //输入数据,5个字节,结束符

OK

^SISR: 1, 1 //URC:收到数据

^SISW: 1, 1 //URC:可以发送数据

at^sisw=1,1,1,1 //再次发送数据,交互方式,有断开标志

^SISW: 1, 1500, 0 //URC:准备接收数据

asdfasdfasf //输入数据,共11个字节,结束符

OK //发送成功,服务器端看到连接已经断开

at^sisr=1,1500 //要读出所有接收到的数据

^SISR: 1, 725 //URC:共收到725个字节的数据,以下是数据内容

,

www.bjcjt.com 17:39:11 OK www.bjcjt.com 17:39:16 OK www.bjcjt.com 17:39:21 OK www.bjcjt.com 17:39:26 OK www.bjcjt.com 17:39:31 OK www.bjcjt.com 17:39:36 OK www.bjcjt.com 17:39:41 OK www.bjcjt.com 17:39:46 OK www.bjcjt.com 17:39:51 OK www.bjcjt.com 17:39:56 OK www.bjcjt.com 17:40:01 OK www.bjcjt.com 17:40:06 OK www.bjcjt.com 17:40:11 OK www.bjcjt.com 17:40:16 OK www.bjcjt.com 17:40:21 OK www.bjcjt.com 17:40:26 OK www.bjcjt.com 17:40:31 OK www.bjcjt.com 17:40:36 OK www.bjcjt.com 17:40:41 OK www.bjcjt.com 17:40:46 OK www.bjcjt.com 17:40:51 OK www.bjcjt.com 17:40:56 OK

,

www.bjcjt.com

17:41:01 OK

www.bjcjt.com

17:41:06 OK

www.bjcjt.com

17:41:11 OK

OK

^SISR: 1, 2 //URC:数据传输已经结束

at^sisi? //查询SISI 服务状态

^SISI: 1,6,725,58,58,0 //URC:1平台,6断开,共收到725个,共发58个,应答58个,未应答0个

OK

at^sici? //查询连接状态

^SICI: 0,2,0,"10.132.0.5" //连接配置0,GPRS 成功2,服务数目0个,当前IP

OK

at^sisi?

^SISI: 1,6,725,58,58,0

OK

at^sisc=1

OK

MC55模块TCP 指令介绍及测试

步骤1:设置连接物理层平台SICS ,是GPRS 还是CSD

步骤2:设置应用协议平台SISS ,是SOCKET ,FTP ,HTTP ,POP ,SMTP ,Transparent 步骤3:建立连接SISO ,查询SISO?

步骤4:发送或接收数据SISW 或SISR ,SIST 建立透明,SISI 查询状态,SISE 查询错误 步骤5:关闭连接SISC

ati

SIEMENS

MC55

REVISION 04.00

OK

at^sics=0,contype,gprs0 //选择连接方式GPRS 还是CSD

,

OK

at^sics?

^SICS: 0,"conType","GPRS0" //连接平台0,连接方式是GPRS

^SICS: 0,"alphabet","0" //连接平台0,设置字符集,0为AT +CSCS 指定

^SICS: 0,"inactTO","20" //连接平台0,设置内部超时时间 ^SICS: 0,"user","" //连接平台0,设置用户名

^SICS: 0,"passwd","*****" //连接平台0,设置密码 ^SICS: 0,"apn","" //连接平台0,设置APN

^SICS: 1,"conType","" //连接平台1,空

^SICS: 2,"conType","" //连接平台2,空

^SICS: 3,"conType","" //连接平台3,空

^SICS: 4,"conType","" //连接平台4,空

^SICS: 5,"conType","" //平连接台5,空

OK

at^sics=0,apn,cmnet //设置APN

OK

以上contype 及apn 为GPRS0应用的强制设置参数。

at^siss=0,srvtype,socket

OK

at^siss?

^SISS: 0,"srvType","Socket" //第0个服务平台,服务类型为socket ^SISS: 0,"conId","0" //第0个服务平台,使用的连接平台为0 ^SISS: 0,"alphabet","0" //第0个服务平台,

^SISS: 0,"address","" //第0个服务平台,目前设备的地址为空 ^SISS: 0,"tcpMR","10" //第0个服务平台,

^SISS: 0,"tcpOT","6000" //第0个服务平台,

^SISS: 1,"srvType","" //第1个服务平台,

^SISS: 2,"srvType","" //第2个服务平台,

^SISS: 3,"srvType","" //第3个服务平台,

^SISS: 4,"srvType","" //第4个服务平台,

^SISS: 5,"srvType","" //第5个服务平台,

^SISS: 6,"srvType","" //第6个服务平台,

^SISS: 7,"srvType","" //第7个服务平台,

^SISS: 8,"srvType","" //第8个服务平台,

^SISS: 9,"srvType","" //第9个服务平台,

OK

at^siss=0,conid,0 //指定internet 连接平台,sics 所设置的

,

OK

at^siss=0,address,socktcp://me99.vicp.net:34560 //设定IP 地址及端口

OK

at^siss?

^SISS: 0,"srvType","Socket"

^SISS: 0,"conId","0"

^SISS: 0,"alphabet","0"

^SISS: 0,"address","socktcp://me99.vicp.net:34560"

^SISS: 0,"tcpMR","10"

^SISS: 0,"tcpOT","6000"

^SISS: 1,"srvType",""

^SISS: 2,"srvType",""

^SISS: 3,"srvType",""

^SISS: 4,"srvType",""

^SISS: 5,"srvType",""

^SISS: 6,"srvType",""

^SISS: 7,"srvType",""

^SISS: 8,"srvType",""

^SISS: 9,"srvType",""

OK

at^sici=0

^SICI: 0,0,0,"0.0.0.0"

OK

at^siso=1

OK

^SISW: 1, 1

at^sici=0

^SICI: 0,2,1,"10.15.104.127"

OK

^SISR: 1, 1

at^sisc=1

OK

//获取连接平台0的底层当前状态 //平台0,下线,一共0个服务,“IP 为0” //建立服务 //查询连接平台0的当前状态 //平台0,已经连接,1个服务,“自己的IP 地址” //收到数据 //结束服务

,

AT^SISI查询当前的服务状态

at^sics=5,contype,gprs0

OK

at^sics=5,apn,cmnet

OK

at^siss=9,srvtype,socket

OK

at^siss=9,conid,5

OK

at^siss=9,address,socktcp://me99.vicp.net:34560 OK

at^sisi=9

^SISI: 9,2,0,0,0,0

OK

at^sici=5

^SICI: 5,0,0,"0.0.0.0"

OK

at^siso=9

OK

^SISW: 9, 1

at^sici=5

^SICI: 5,2,1,"10.14.63.53"

OK

at^sisi=9

^SISI: 9,4,29,0,0,0

OK

at^sisc=9

OK

以下是最新的MC52IR3的透明传输的使用方法 at^siss?

^SISS: 0,"srvType",""

^SISS: 1,"srvType","Socket"

^SISS: 1,"conId","0"

^SISS: 1,"alphabet","0"

^SISS: 1,"address","socktcp://me99.vicp.net:34560" ^SISS: 1,"tcpMR","10"

^SISS: 1,"tcpOT","6000"

^SISS: 2,"srvType","Transparent"

^SISS: 2,"conId","0"

^SISS: 2,"alphabet","0"

^SISS: 2,"address","me87.vicp.net:34560" ^SISS: 2,"tcpMR","10"

^SISS: 2,"tcpOT","6000"

,

^SISS: 3,"srvType","" ^SISS: 4,"srvType","" ^SISS: 5,"srvType","" ^SISS: 6,"srvType","" ^SISS: 7,"srvType","" ^SISS: 8,"srvType","" ^SISS: 9,"srvType",""

OK

at^siso=2

OK

^SISW: 2, 1 at^sist=2 CONNECT www.bjcjt.com 10:32:07 OK www.bjcjt.com 10:32:12 OK

OK

AT^SISI? ^SISI: 1,2,0,0,0,0 ^SISI: 2,4,87,3,3,0

OK

AT^SIST=2 CONNECT www.bjcjt.com 10:37:07 OK

OK

at^sisc=2

OK //启动连接 //连接建立成功 //进入透明状态 //发 退出到指令状态,此时连接未断开 //查询当前的连接状态 //再回到未断开连接的透明状态 //发 退出到指令状态 //断开连接

标签: