初级会员

- 积分
- 57
- 金钱
- 57
- 注册时间
- 2018-1-12
- 在线时间
- 12 小时
|
1金钱
1.sim800c 以TCP方式连接到服务器,然后每2秒上传几十到几百字节的数据到服务器,服务器能正常接收。
2.服务器每隔1分钟下发一条4字节以上(含)的数据到sim800,sim800可以正常接收到。
3.工作一段时间后,sim800上传数据OK,服务器确实收到了。但却收不到服务器下发的数据。以后就一直收不到。
4.做测试时(12小时),sim800可以一直上传数据保持不掉线,服务器也能接收到数据。但过不定的时间后,sim800收不到服务器数据。
5.假若没收到服务器数据,延时1分后,sim800主动断掉连接,然后重连OK。
6.GPRS开两个socket(0和1),快速发送模式。实际只连接了一个服务器。发送时,延时以等待回应。
部分流程:
......初始化等
SIM_Usart_Send("AT+CIPMUX=1\r\n", 13); //串口发送启动多路链接
SIM_Usart_Send("AT+CSTT=\"CMNET\"\r\n", 17); //启动任务
SIM_Usart_Send("AT+CIICR\r\n", 10); //激活移动场景
SIM_Usart_Send("AT+CIFSR\r\n", 10); //获取IP
SIM_Usart_Send("AT+CIPQSEND=1\r\n", 15); //快速发送模式
"AT+CIPSTART=1,\"TCP\",\"%d.%d.%d.%d\",\"%d\"\r\n" // 只连接了一个服务器
7.STM32F103RC,采用DMA接收sim800串口数据。在串口中断函数中判断“+RECEIVE"和"1,CLOSE",只置标志位。
8.之前采用状态机(不等待sim800状态响应)发送和接收处理的时候,也是同样的情况。
9.GPRS心跳维持连接,但我这边有2秒上传数据,下发也有。
10.每天我们需要发送5M左右的数据。不知道是不是数据量太大了.sim800的PE说一天五六兆是可以的。不知道大家有没有遇到过。卡这里一周了。
|
|