AT+CGATT是附网命令,通常情况下,大家会使用AT+CGATT=1来附网,然后通过AT+CGATT?查询附网状态,但在实际应用中,大家会发现,往往会查询好多次,才能得到+CGATT:1的结果,我手动试了一下,对查组发完AT+CGATT=1命令后,快速重复发送AT+CGATT?命令,大约20秒,才看到+CGATT:1,第二次,我放慢了发送AT+CGATT?命令的间隔,大约4秒,就看到了+CGATT:1的结果,显然,不断去查询也许会造成更糟的结果。现在我们来分析一下吧!
下面的图片来自Quectel的BC28-F模组的AT命令集,大家重点关注一下两个红框里的内容。我的结论是:AT+CGATT=1的最大响应时间是70秒,就是说,从附网命令发送成功到真正附网成功的最长时间是70秒,在这70秒内模组处于正在附网的状态,如果在成功之前发送AT+CGATT=1会返回错误,发送AT+CGATT? 会延迟附网成功时长。
综上所述,建议在AT+CGATT=1成功执行后,每两秒查询一次附网状态,直到70秒超时。
下面是我画的AT+CGATT命令使用流程图,供大家参考。
欢迎大家与我联系,一起讨论,共同进步!
微信号:a28051000