备注:采用的是SIMCOM的SIM900模块
1. GPRS连接失败问题
测试9台C2000两次,两次之间是机器拿开电池,间隔40分钟左右,每次都出现一台(但不是同一台):
⑴9台中发现一台,连接失败,然后重新连接,测试3次都失败
⑵下电(下电时间较短,约为1s,正常为5s),重新上电,检测不到SIM卡,再重新上下电,依旧检测不到SIM卡---挂起唤醒,重新上电,可以连接成功。
2. 问题分析与解决
查看了GPRS应用程序的流程:
⑴GPRS程序打开的时候,先是对GPRS模块上电.
⑵发送AT+CGREG?查询,根据返回值来判断是否注册成功,
⑶注册成功后,调用RasDial函数在RAS客户端和RAS服务器建立RAS连接,返回值为0表示拨号成功。如果连续2次拨号失败,就调用GPRS复位函数对GPRS模块复位。
后来向SIMCOM技术支持反馈此问题,他们建议不要对GPRS模块进行复位,根据他们的建议,我们不再调用GPRS复位函数,然后就不会出现此问题。
但还有个现象解释不通,就是出现GPRS连接失败的情况下,我挂起然后再唤醒,就正常了,而挂起只是把控制GPRS上电的GPD13和控制GPRS复位的GPD14引脚由之前的输出改为输入而已,唤醒之后恢复为原来的输出状态。