数据发送问题
## 发送数据失败(AT+TCPSEND)或数据接收失败
### 问题1.假连接,基站将连接断开,终端未收到;
确认,解决方法:发送断开连接命令AT+TCPCLOSE=<n>,重新发送连接命令连接服务器,再发送数据;
### 问题2.连接已断开;
确认方法:通过AT+IPSTATUS=<n><查询当前连接状态,如果显示+IPSTATUS: 0,DISCONNECT,表示连接已断开;
解决方法:重新连接发送连接命令连接服务器,再发送数据;
### 问题3.发送数据长度超过规定范围(发送最大长度4K);
确认方法:检查发送数据长度是否超过4K(AM20E模组最长支持4K AT+TCPSEND=0,4097 +TCPSEND: DATA LENGTH ERROR);
解决方法:发送数据长度应该在规定范围内,可以分多次发送;
注:指令支持发送最大长度为4K,但是每次一般发送1440字节,同样一般情况下,每次接收1440个字节。
### 问题4.发送频次过快,未等到模块回应发送完成标志(返回OK),继续发送,导致模块卡死(重启模块);
解决方法:降低发送频次,待返回OK,后再进行下一步操作,可以适当增加每次数据发送量;
确认方法:检查模块发送数据后,是否未等到模块回应发送完成标志(返回OK),继续发送,导致模块卡死;
解决方法:降低发送频次,待返回OK,后再进行下一步操作,可以适当增加每次数据发送量;
### 问题5:模块信号CSQ异常,参见“模块信号问题”;
确认,解决方法:参见“模块信号问题”;
### 问题6:发送指令格式错误;
确认方法:检查发送指令格式是否正确(格式:AT+TCPSEND=0,20);
### 问题7:模块处于PSM或eDRX状态;
现象:服务器或平台测发送数据,模块无法接收;
确认方法:通过AT指令查询模块状态(PSM:AT+CPSMS?;eDRX:AT+CEDRXS?),如果查询结果第一个参数返回“1”,表明模块处于休眠状态,不能正常接收数据;
解决方法:如果不用低功耗模式(PSM/eDRX),可以通过命令关闭(PSM:AT+CPSMS=0;eDRX:AT+CEDRXS=0);