u-blox LEON-G100 Tcp协议实现AT命令流程

更新时间:2024-06-27 13:10:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

测试u-blox LEON-G100芯片TCP服务连接功能流程

1. 设置错误信息格式。

AT+CMEE=2↙ 1为错误编码,2为详细。

2.设置PIN码。如果设置不使用PIN码,芯片会自动注册GSM和GPRS网络,注册所需时间至少25秒(以信号情况);如果设置使用PIN码,也至少需要25秒时间进行注册,同时需要发送以下AT命令:

AT+CPIN?↙ 检查PIN码功能状态,可以省略。 +CPIN: SIM PIN

OK AT+CPIN=\↙ 对应的PIN码,可以在m-center中设置。AT+CPIN?↙ +CPIN: READY

OK 3.检查GSM和GPRS注册状态。

AT+COPS?↙ +COPS: 0,0,\

OK AT+CGATT?↙ +CGATT: 1

OK AT+CGREG=1↙ 发送提示+CGREG:1,0。

AT+CREG=1↙ 送提示+CREG:1,0。

4.设置APN,获取动态IP。

AT+UPSD=0,1,\↙ OK

AT+UPSD=0,7,\↙ OK

AT+UPSDA=0,1↙ OK

AT+UPSDA=0,3↙ OK

AT+UPSND=0,0↙ +UPSND: 0,0,\

说明还未验证,需进行PIN码验证。 发送需验证的PIN码,引号内为芯片所检查PIN码功能状态,可以省略。 已进行过PIN码验证。 查看GSM网络注册情况。 返回GSM网络的注册状态。 检查GPRS连接状态。 返回结果。

设置GPRS状态提示,当失去连接后会设置GSM状态提示,当失去连接时会发设置你的APN运营商。 获取动态IP地址。 将GPRS设置存入非易失内存。 激活GPRS连接,需要等待至少10秒。 检查所获取的IP地址。

OK 返回所获取到的IP地址。 5.Socket连接。

AT+USOCR=6↙ 创建Tcp的Socket连接。 +USOCR: 0

OK 返回创建结果。

AT+UDNSRN=0,\服务器域名\↙ 向DNS服务器发出域名解析请求,返回结果需要至少3秒。

+UDNSRN: \服务器IP地址\

OK 返回域名解析结果。

AT+USOCO=0,\服务器IP地址\服务器端口号↙ 发送连接请求。

OK 表示连接成功,需设置等待时间,时间依网络情况而定。 ERROR

+UUSOCL: 0 表示连接失败,并自动关闭ID为0的Socket。

6.Socket监听。!!如果已经与服务器建立连接,监听步骤可以省略。 AT+USOCR=6↙ 创建Tcp的Socket连接。 +USOCR: 0

OK 返回创建结果。

AT+USOLI=SocketID,监听端口号↙ 设置Socket所要监听的端口号。 OK

+UUSOLI:

1,\服务器IP地址\,服务器端口号,0,

\模块自身IP地址\,监听端口号 当有远程服务器发送连接请求时,会发送该信息。

+UUSORD: 1,18 表明在Socket1中,有待读取的数据,数据长度为18字节。

7.通过Socket读取数据。!!若缓冲区有数据未读,再来新消息,不会出现提示!

+UUSORD: 0,2 提示在Socket0中有待读取的数据,长度为2字节。

AT+USORD=0,2↙ 读取数据。 +USORD: 0,2, \

OK 引号内为所读取到得数据。 +UUSORD: 0,30

AT+USORD=0,10↙ 先读取30个字节中的前10个。

+USORD: 0,10,\OK

+UUSORD: 0,20

AT+USORD=0,20↙ 读取剩余20个字节的数据。 +USORD: 0,20, \OK

AT+USORD=0,10↙ 确认是否还有未读数据。 +USORD: 0,0

OK 缓冲区没有未读数据了。

8.通过Socket向服务器发送数据。!!建议用方法2。!!若缓冲区有数据未读,再来新消息,不会出现提示! 1)方法1。

AT+USOWR=0,3↙ 请求在Socket0中写入两字节数据。 @ 提示可以发送数据。 12↙ 发送的两字节数据。 +USOWR: 0,3

OK 仅表示数据信息已经被发送到底层协议栈,并不表示已经被服务器成功接收。

+CME ERROR: unknown 发送失败,命令格式不对。 2)方法2。

AT+USOWR=0,2,\↙ 请求在Socket0中写入两字节数据。 +USOWR: 0,2

OK 仅表示数据信息已经被发送到底层协议栈,并不表示已经被服务器成功接收。

如果返回结果为ERROR表明,Socket缓冲区已满、网络拥塞或失去网络连接。如果失去网络连接,会收到如下返回信息。

+CREG: 2 失去连接。仅当之前已经发送过AT+CREG=1才能收到连接状态反馈信息。可以重复上面连接过程建立连接。

注意:

1.如果服务器端因某种原因断开连接,当缓冲区所有数据都被读出后才回收到: +UUSOCL: 0

2.如果正在使用命令AT+USOWR发送数据,数据发送将失败,并返回: +USOWR:0,0

3.AT_Commands_Examples文档有错误地方,请同时参考AT Commands Manual。

本文来源:https://www.bwwdw.com/article/6o83.html

Top