You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于ESP32与SIM808模块,请求向Azure IoT Hub传数据的AT指令列表

SIM808 连接 Azure IoT Hub 并发送数据的 AT 指令列表

一、GPRS 网络初始化与连接(先解决基础网络问题)

  • AT+CPIN? 检查 SIM 卡状态,返回 +CPIN: READY 表示 SIM 卡正常可用
  • AT+CREG? 检查网络注册状态,返回 +CREG: 0,1(本地注册)或 +CREG: 0,5(漫游注册)即为成功
  • AT+CGATT=1 附着 GPRS 网络,返回 OK 代表附着成功
  • AT+SAPBR=3,1,"CONTYPE","GPRS" 设置承载类型为 GPRS
  • AT+SAPBR=3,1,"APN","你的运营商APN" 填写对应运营商的 APN,例如移动用 CMNET、联通用 UNINET
  • AT+SAPBR=1,1 激活 GPRS 承载,返回 OK 表示网络连接成功
  • AT+SAPBR=2,1 查看分配的 IP 地址,确认网络连接状态

二、MQTT 连接 Azure IoT Hub 并发布数据

Azure IoT Hub 支持 MQTT 协议,SIM808 可通过内置 MQTT AT 指令实现通信,需提前准备以下参数:

  • 客户端 ID:你的设备在 IoT Hub 中注册的设备 ID
  • 用户名:{IoT Hub名称}.azure-devices.net/{设备ID}/?api-version=2021-04-12
  • 密码:生成的 SAS Token,格式为 SharedAccessSignature sr={IoT Hub名称}.azure-devices.net%2Fdevices%2F{设备ID}&sig={签名内容}&se={过期时间戳}

对应的 AT 指令序列:

  • AT+CMQTTSTART 启动 SIM808 的 MQTT 客户端
  • AT+CMQTTACCQ=0,"{设备ID}" 创建 MQTT 会话,会话 ID 设为 0(可自定义)
  • AT+CMQTTCONN=0,"{IoT Hub名称}.azure-devices.net",8883,1 连接 Azure IoT Hub(8883 是 MQTTS 加密端口,生产环境推荐;若无需加密可尝试 1883 端口)
  • AT+CMQTTTOPIC=0,{主题长度},"devices/{设备ID}/messages/events/" 设置消息发布主题,{主题长度} 需根据实际主题字符串长度填写(示例主题长度为 38)
  • AT+CMQTTPAYLOAD=0,{数据长度} 指定要发送的 payload 长度,比如发送 JSON 数据 {"temp":25.3,"acc_x":0.02,"acc_y":0.05,"acc_z":9.78},长度为 42
  • AT+CMQTTPUB=0,1,60 发布消息(参数依次为:会话 ID、QoS 等级、保留位)
  • (可选)AT+CMQTTSUB=0,"devices/{设备ID}/messages/devicebound/#",1 订阅云到设备的消息主题
  • (按需执行)AT+CMQTTDISC=0 断开 MQTT 连接;AT+CMQTTSTOP 停止 MQTT 客户端

三、1秒周期发送的注意事项

  • SIM808 执行 AT 指令需要一定时间,1秒周期内要确保指令执行时序合理,避免指令堆积阻塞
  • 加入网络状态检测逻辑:定期执行 AT+SAPBR=2,1 检查 GPRS 连接,若异常则重新执行 GPRS 初始化指令
  • 注意 Azure IoT Hub 的消息配额限制,避免因发送频率过高触发限流

内容的提问来源于stack exchange,提问作者Shubham Samal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 17:42:05