当前位置:   article > 正文

SIM7600CE模块MQTT协议的AT指令流程_sim7600ce at指令

sim7600ce at指令

     最近在做一个采用SIM7600模块,做一个MQTT协议传输数据到服务器,这里我先简单介绍一下关于AT指令的流程,后面有时间我会详细介绍自己移植的底层MQTT协议在单片机上面的实现(用于某些模块没有内置关于MQTT的AT指令),这里我给大家推荐一个链接是中国移动的onenet平台的MQTT相关源码,他们给出了单片机的应用代码,需要的话可以自己去参考。还有就是别去相信网上和淘宝的什么开发板说什么实现了MQTT协议上传服务器,他就是抄的中国移动onene的代码,黑心商家啊(拿别人的开源成果来卖钱)。

   下面介绍下关于SIM7600CE模块实现AT指令上传服务器的流程。关于HTTP、TCP/TP、以及UDP我就不介绍了,卖家的资料里都有详细的说明。

  1. AT+CRESET //复位
  2. OK
  3. //开机输出信息
  4. RDY
  5. +CPIN: READY
  6. SMS DONE
  7. PB DONE

注意在进行复位后,大约需要15s时间的等待时间。等到完全输出开机信息后,向模块发送AT指令才会有效果。

  1. //查询是否检测到卡
  2. AT+CPIN?
  3. +CPIN: READY
  4. OK
  5. //查询信号质量
  6. AT+CSQ
  7. +CSQ: 26,99
  8. OK
  9. //检测联网
  10. AT+CREG?
  11. +CREG: 0,1
  12. OK
  13. //检测4G网
  14. AT+CGREG?
  15. +CGREG: 0,1
  16. OK
  1. //设置 APN
  2. AT+CGDCONT=1,"IP","CMNET"
  3. OK
  4. //确保第一个PDP上下文获取IP地址
  5. AT+CGPADDR
  6. +CGPADDR: 1,10.114.29.137
  7. +CGPADDR: 2,0.0.0.0,0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0
  8. +CGPADDR: 3,0.0.0.0,0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0
  9. OK
  1. //启动MQTT服务,激活PDP上下文
  2. AT+CMQTTSTART
  3. OK
  4. +CMQTTSTART: 0
  5. //获取客户
  6. AT+CMQTTACCQ=0,"client test0"
  7. OK

注意启动MQTT服务时,不能反复启动后,再启动。否则会报错。

  1. //"tcp://116.247.119.165:5141”必须以“tcp://”开头。如果<server_addr>不包括端口,默认端口为1883。
  2. //第3个参数是从客户机接收到的两条消息之间的时间间隔。当长时间没有消息发送到服务器时,客户端将发送一个保持活动的数据包。范围是从60s至64800s(18小时)。
  3. //第4个参数清除会话标志。值的范围是从0到1,默认值是0。
  4. 0-服务器断开连接后必须存储客户端的订阅。这包括继续存储QoS1和QoS2个订阅主题的消息,以便在客户端重新连接时可以传递这些主题。服务器还必须在连接丢失时保持正在传输的飞行中消息的状态。必须保留此信息,直到客户端重新连接。
  5. 1-服务器必须放弃以前维护的有关客户端的任何信息,并将连接视为“干净”。当客户端断开连接。
  6. //第5,6个参数分别为服务器的名字和密码
  7. //MQTT连接服务器
  8. AT+CMQTTCONNECT=0,"tcp://120.76.100.197:18831",60,1,"TEST","TEST"
  9. OK
  10. +CMQTTCONNECT: 0,0

这里也需要注意的是,连接到服务器后再次连接,会报错。

  1. //订阅一个主题
  2. AT+CMQTTSUB=0,3,1
  3. >ISC //输入的主题
  4. OK
  5. +CMQTTSUB: 0,0
  6. //发布一个主题
  7. AT+CMQTTTOPIC=0,3
  8. >ISC //发布的主题
  9. OK
  10. //发布消息
  11. AT+CMQTTPAYLOAD=0,12
  12. >youlangtest1 //发布的消息
  13. OK
  14. //发送服务器
  15. AT+CMQTTPUB=0,1,60
  16. OK
  17. +CMQTTPUB: 0,0
  18. //以下是订阅后的回执信息
  19. +CMQTTRXSTART: 0,3,12
  20. +CMQTTRXTOPIC: 0,3
  21. ISC
  22. +CMQTTRXPAYLOAD: 0,12
  23. youlangtest1
  24. +CMQTTRXEND: 0
  25. //取消订阅主题
  26. AT+CMQTTUNSUB=0,4,0
  27. >ISC1
  28. OK
  29. +CMQTTUNSUB: 0,0

这里我使用了通信猫中的MQTT的调试软件的服务器通信猫调试助手。我测试的时候,不知道为什么有点小BUG,在调试软件那边只能显示接收一次推送,但是实际上每次都是推送成功了的。所以在测试中,我采用了先订阅主题,再发布自己的主题,来实现自发自收的效果进而测试。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
  

闽ICP备14008679号