SIM800使用AT进行GPRS建立TCP远程连接
2017-11-17 09:00
411 查看
先介绍模块建立一路链接的过程,建立多路连接时,方法基本相同。目前SIM800系列模块共支持6路链接。从模块开机到建立TCP链接过程如下:
1、等待模块开机后,向模块串口发送“AT”指令,让模块自适应主机串口波特率,设置成功时,返回:OK
2、向模块串口发送“AT+CPIN?”指令,检查SIM状态,SIM正常时,
返回:+CPIN:READY
OK
3、向模块串口发送“AT+CSQ”指令,检查网络信号强度,命令发送成功时,
返回:+CSQ:29,0
OK
4、向模块串口发送“AT+CREG”指令,检查GSM网络注册状态,发送成功时,
返回:+CREG:0,1
OK
其中1代表已注册本网,若为2代表未注册。
5、向模块串口发送“AT+CGREG”指令,检查GPRS网络注册状态,发送成功时,
返回:+CGREG:0,1
OK
其中1代表已注册本网,若为2代表未注册。
(若已设置命令“AT+CREG=1”和“AT+CGREG=1”时,模块在注册GSM和PGRS网络成功或发生变化时,将主动上报其注册状态,如上报结果:+CREG:2或+CGREG:2。其中2表示GSM和GPRS网络未注册)
6、(可选命令)向模块串口发送“AT+CMGF=0”指令,设置短消息为PDU模式,发送成功时,返回:OK
7、(可选命令)向模块串口发送“AT+CNMI=2,1,0,0,0”指令,设置新短消息URC上报格式,发送成功时,返回:+CMTI:“SM”,1
(此返回结果为收到新短消息,1为此新短消息在存储器中的序号)
8、向模块串口发送“AT+CGATT=1”指令,使模块附着GPRS网络,发送成功时,返回:OK
(此时模块内部TCP协议栈的状态为:IP IINITIAL)
9、向模块串口发送“AT+CIPMODE=1”指令,设置GPRS的TCP/IP透传模式,发送成功时,返回:OK
(其中1为透传模式,0为分透传模式,及命令模式)
10、向模块串口发送“AT+CSTT="CMNET"”指令,设置APN,发送成功时,返回:OK
(此时模块内部TCP协议栈的状态为:IP START)
11、向模块串口发送“AT+CIICR”指令,激活移动场景,建立无线链路,发送成功时,返回:OK
(此时模块内部TCP协议栈的状态为:IP
CONFIG或IP GPRSACT)
12、向模块串口发送“AT+CIFSR”指令,获取模块本地IP地址,发送成功时,返回模块的本地IP地址,如:10,143,166,133
13、向模块串口发送“AT+CIPSTART=“TCP”,“118.114.247.142”,“40006””指令,设置要连接的远端服务器类型,IP地址或域名,端口号。发送成功时,
返回:CONNECT
OK
14、若返回CONNECT值以后,即连接远端服务器成功,并进入透传模式,可随意收发数据了。
一路链接的以上过程如图所示:
建立多路链接时:
1、需在10步命令前,向模块串口发送“AT+CIPMUX=1”指令,设置多链路模式,发送成功时,返回:OK
2、第13步命令,向模块串口发送“AT+CIPSTART=0,“TCP”,“118.114.247.142”,“40006””指令,指定在第0路建立TCP链接。发送成功时,返回:CONNECT OK
若第13步命令为,向模块串口发送“AT+CIPSTART=1,“UDP”,“118.114.247.142”,“40007””指令,指定在第1路建立UDP链接。发送成功时,返回:CONNECT OK
3、若要通过第0路链接发送数据,则向模块串口发送“AT+CIPSEND=0”命令。然后就可以随意收发数据了。
多路链接的以上过程如图所示:
1、等待模块开机后,向模块串口发送“AT”指令,让模块自适应主机串口波特率,设置成功时,返回:OK
2、向模块串口发送“AT+CPIN?”指令,检查SIM状态,SIM正常时,
返回:+CPIN:READY
OK
3、向模块串口发送“AT+CSQ”指令,检查网络信号强度,命令发送成功时,
返回:+CSQ:29,0
OK
4、向模块串口发送“AT+CREG”指令,检查GSM网络注册状态,发送成功时,
返回:+CREG:0,1
OK
其中1代表已注册本网,若为2代表未注册。
5、向模块串口发送“AT+CGREG”指令,检查GPRS网络注册状态,发送成功时,
返回:+CGREG:0,1
OK
其中1代表已注册本网,若为2代表未注册。
(若已设置命令“AT+CREG=1”和“AT+CGREG=1”时,模块在注册GSM和PGRS网络成功或发生变化时,将主动上报其注册状态,如上报结果:+CREG:2或+CGREG:2。其中2表示GSM和GPRS网络未注册)
6、(可选命令)向模块串口发送“AT+CMGF=0”指令,设置短消息为PDU模式,发送成功时,返回:OK
7、(可选命令)向模块串口发送“AT+CNMI=2,1,0,0,0”指令,设置新短消息URC上报格式,发送成功时,返回:+CMTI:“SM”,1
(此返回结果为收到新短消息,1为此新短消息在存储器中的序号)
8、向模块串口发送“AT+CGATT=1”指令,使模块附着GPRS网络,发送成功时,返回:OK
(此时模块内部TCP协议栈的状态为:IP IINITIAL)
9、向模块串口发送“AT+CIPMODE=1”指令,设置GPRS的TCP/IP透传模式,发送成功时,返回:OK
(其中1为透传模式,0为分透传模式,及命令模式)
10、向模块串口发送“AT+CSTT="CMNET"”指令,设置APN,发送成功时,返回:OK
(此时模块内部TCP协议栈的状态为:IP START)
11、向模块串口发送“AT+CIICR”指令,激活移动场景,建立无线链路,发送成功时,返回:OK
(此时模块内部TCP协议栈的状态为:IP
CONFIG或IP GPRSACT)
12、向模块串口发送“AT+CIFSR”指令,获取模块本地IP地址,发送成功时,返回模块的本地IP地址,如:10,143,166,133
13、向模块串口发送“AT+CIPSTART=“TCP”,“118.114.247.142”,“40006””指令,设置要连接的远端服务器类型,IP地址或域名,端口号。发送成功时,
返回:CONNECT
OK
14、若返回CONNECT值以后,即连接远端服务器成功,并进入透传模式,可随意收发数据了。
一路链接的以上过程如图所示:
建立多路链接时:
1、需在10步命令前,向模块串口发送“AT+CIPMUX=1”指令,设置多链路模式,发送成功时,返回:OK
2、第13步命令,向模块串口发送“AT+CIPSTART=0,“TCP”,“118.114.247.142”,“40006””指令,指定在第0路建立TCP链接。发送成功时,返回:CONNECT OK
若第13步命令为,向模块串口发送“AT+CIPSTART=1,“UDP”,“118.114.247.142”,“40007””指令,指定在第1路建立UDP链接。发送成功时,返回:CONNECT OK
3、若要通过第0路链接发送数据,则向模块串口发送“AT+CIPSEND=0”命令。然后就可以随意收发数据了。
多路链接的以上过程如图所示:
相关文章推荐
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错)
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连
- 使用GPRS的cmwap接入点实现网络通讯1-----建立连接
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40
- 关于“使用VS 2005和SQL Server 2005创建连接时不允许进行远程连接”的问题的解决
- 关于WinCE下MC55使用Unimodem进行GPRS拨号,拨上出现断开连接,检查波特率的问题的另一种可能情况
- 如何在Mobile平台建立GPRS连接进行SOCKET通信
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 -
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server不允许进行远程连接可能会导致此失败
- 在建立与服务器的连接时出错。在连接到SQL Server 2005时,在默认的设置不允许进行远程连接
- 在建立与服务器的连接时出错。在连接到SQL Server 2005时,在默认的设置不允许进行远程连接
- 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)