--- /dev/null
+# Neoway N706A AT命令手册 V1.0
+
+
+### N706A
+
+
+### AT 命令手册
+
+LTE Cat.1 模组
+
+版本 1.0
+
+日期2025-04-28
+
+
+
+### N706A AT 命令手册
+
+版权声明
+
+
+深圳市有方科技股份有限公司版权所有 ii
+
+
+版权声明
+
+版权所有 © 深圳市有方科技股份有限公司 2025。深圳市有方科技股份有限公司保留所有权利。
+
+未经深圳市有方科技股份有限公司书面同意, 任何单位和个人不得擅自摘抄、 复制本文档内容的部分或全部,
+
+并不得以任何形式传播。
+
+
+是深圳市有方科技股份有限公司所有商标。
+
+本文档中出现的其他商标,由商标所有者所有。
+
+
+说明
+
+
+### 本文档对应产品为 N706A 模组。
+
+本文档的使用对象为系统工程师,开发工程师及测试工程师。
+
+本设计指南为客户产品设计提供支持,客户须按照本文中的规范和参数进行产品设计和调试。如因客户操作
+
+不当造成的人身伤害和财产损失,有方概不承担责任。
+
+
+由于产品版本升级或其它原因,本文档内容会在不预先通知的情况下进行必要的更新。
+
+除非另有约定,本文档中的所有陈述、信息和建议不构成任何明示或暗示的担保。
+
+
+深圳市有方科技股份有限公司为客户提供全方位的技术支持,任何垂询请直接联系您的客户经理或发送邮件
+
+至以下邮箱:
+
+Sales@neoway.com
+
+Support@neoway.com
+
+公司网址:http://www.neoway.com
+
+
+
+### N706A AT 命令手册
+
+目录
+
+
+深圳市有方科技股份有限公司版权所有 iii
+
+
+目录
+
+关于本文档 ....................................................................................................... x
+
+范围 ................................................................................................................................................... x
+
+读者对象 ............................................................................................................................................ x
+
+修订记录 ............................................................................................................................................ x
+
+符号约定 ............................................................................................................................................ x
+
+相关文档 ............................................................................................................................................ x
+
+
+### 1 开机 LOG 使用说明 ................................................................................... 11
+
+
+## 2 AT 命令格式说明 ......................................................................................... 12
+
+
+### 2.1 定义 .......................................................................................................................................... 12
+
+
+### 2.2 语法说明 ................................................................................................................................... 12
+
+
+### 2.3 命令类型 ................................................................................................................................... 13
+
+
+### 2.4 命令响应时间 ............................................................................................................................ 13
+
+3 注意事项 .................................................................................................... 17
+
+
+### 3.1 文件操作 ................................................................................................................................... 17
+
+
+### 4 通用 AT 指令 .............................................................................................. 18
+
+
+### 4.1 ATI–获取模组厂商信息 ............................................................................................................. 18
+
+
+### 4.2 AT+GMR–查询版本信息 .......................................................................................................... 18
+
+
+### 4.3 AT+CSQ–获取信号强度 ........................................................................................................... 19
+
+
+### 4.4 AT+CREG–查询网络注册状态 ................................................................................................. 20
+
+
+### 4.5 AT+CEREG–获取 EPS 网络注册状态 ...................................................................................... 21
+
+
+### 4.6 AT+COPS–网络选择 ................................................................................................................ 23
+
+
+### 4.7 AT+CIMI–查询国际移动用户识别码 ......................................................................................... 24
+
+
+### 4.8 AT+CGSN–获取通信模组 IMEI 号 ............................................................................................ 25
+
+
+### 4.9 AT+GSN–获取通信模组 IMEI 号 .............................................................................................. 26
+
+
+### 4.10 AT+CCID–获取 SIM 卡标识.................................................................................................... 26
+
+
+### 4.11 AT+CGMM–查询模组型号...................................................................................................... 27
+
+
+### 4.12 AT+GMM–查询模组型号 ........................................................................................................ 27
+
+
+### 4.13 AT+IPR–设置模组波特率 ....................................................................................................... 28
+
+
+### 4.14 AT+CFUN–设置模组功能 ....................................................................................................... 29
+
+
+### 4.15 AT+CMUX–串口多路复用指令 ............................................................................................... 30
+
+
+### 4.16 AT+CCLK–时钟管理 .............................................................................................................. 32
+
+
+### 4.17 AT+CPIN–输入 PIN 码 ........................................................................................................... 33
+
+
+### 4.18 AT+CLCK–PIN 使能与查询功能指令 ...................................................................................... 34
+
+
+### 4.19 AT+CPWD–修改密码指令 ...................................................................................................... 35
+
+
+### 4.20 AT+CGDCONT–设置 PDP 格式 ............................................................................................. 36
+
+
+
+### N706A AT 命令手册
+
+目录
+
+
+深圳市有方科技股份有限公司版权所有 iv
+
+
+
+### 4.21 AT+XGAUTH–用户认证 ......................................................................................................... 38
+
+
+### 4.22 AT+CGATT–设置 GPRS 附着和分离...................................................................................... 39
+
+
+### 4.23 ATE1/ATE0–打开&关闭回显................................................................................................... 40
+
+
+### 4.24 ATD*99#–GPRS .................................................................................................................... 41
+
+
+### 4.25 AT+CESQ–扩展信号强度 ....................................................................................................... 41
+
+
+### 4.26 AT+NWDNS–域名解析 .......................................................................................................... 43
+
+
+### 4.27 AT+NWENPWRSAVE–休眠(Sleep)设置 ........................................................................... 44
+
+
+### 4.28 AT+NWPWROFF–模组关机指令 ........................................................................................... 45
+
+
+### 4.29 AT+NWRFTEST–模组强发强收指令(仅可用于测试) ......................................................... 45
+
+
+### 4.30 AT+NSTGETRSSI–获取强收模式下模组的接收功率(仅可用于测试) ................................. 48
+
+5 短消息服务指令 ......................................................................................... 49
+
+
+### 5.1 AT+CSMS–选择短信服务......................................................................................................... 49
+
+
+### 5.2 AT+CPMS–首选短信存储器 ..................................................................................................... 50
+
+
+### 5.3 AT+CMGF–设置短消息模式 ..................................................................................................... 51
+
+
+### 5.4 AT+CSCS–设置 TE 字符集 ...................................................................................................... 52
+
+
+### 5.5 AT+CNMI–设置短信指示格式................................................................................................... 53
+
+
+### 5.6 AT+CMGR–读短消息 ............................................................................................................... 55
+
+
+### 5.7 AT+CMGL–短信列表 ................................................................................................................ 57
+
+
+### 5.8 AT+CMGS–发送短消息 ............................................................................................................ 59
+
+
+### 5.9 AT+CMGW–写短消息 .............................................................................................................. 60
+
+
+### 5.10 AT+CMSS–发送已保存的短消息 ............................................................................................ 61
+
+
+### 5.11 AT+CMGD–删除短消息 ......................................................................................................... 62
+
+
+### 5.12 AT+CSCA–短信中心号码 ....................................................................................................... 63
+
+
+### 5.13 AT+CSMP–设置文本模式参数 ............................................................................................... 64
+
+
+### 5.14 AT+CSDH–显示文本模式参数................................................................................................ 65
+
+
+## 6 TCP/UDP 客户端指令 ................................................................................. 67
+
+
+### 6.1 AT+NETAPN–设置网络 APN.................................................................................................... 67
+
+
+### 6.2 AT+XIIC–建立 PDP 链接 .......................................................................................................... 68
+
+
+### 6.3 AT+TCPSETMODE–设置 TCP 客户端模式.............................................................................. 69
+
+
+### 6.4 AT+TCPSETUP–建立 TCP 连接 .............................................................................................. 70
+
+
+### 6.5 AT+TCPSEND–发送 TCP 数据 ................................................................................................ 71
+
+
+### 6.6 AT+RECVMODE–设置数据接收模式 ....................................................................................... 73
+
+
+### 6.7 +TCPRECV–接收到 TCP 数据 ................................................................................................ 74
+
+
+### 6.8 AT+TCPREAD–读取 TCP 数据 ................................................................................................ 75
+
+
+### 6.9 AT+TCPCLOSE–关闭 TCP 连接 .............................................................................................. 76
+
+
+### 6.10 AT+UDPSETUP–建立 UDP 连接 ........................................................................................... 77
+
+
+### 6.11 AT+UDPSEND–发送 UDP 数据 ............................................................................................. 78
+
+
+### 6.12 +UDPRECV–接收到 UDP 数据 .............................................................................................. 80
+
+
+### 6.13 AT+UDPREAD–读取 UDP 数据 ............................................................................................. 80
+
+
+### 6.14 AT+UDPCLOSE–关闭 UDP 连接 ........................................................................................... 81
+
+
+### 6.15 AT+IPSTATUS–查询 TCP/UDP 透传链路状态 ....................................................................... 82
+
+
+### 6.16 AT+TCPACK–查询 TCP 链路发送数据状态 ........................................................................... 83
+
+
+
+### N706A AT 命令手册
+
+目录
+
+
+深圳市有方科技股份有限公司版权所有 v
+
+
+
+### 6.17 AT+DNSSERVER–设置 DNS 服务器 ..................................................................................... 84
+
+
+### 6.18 AT+PDPKEEPALIVE–设置 PDP 心跳 .................................................................................... 85
+
+
+### 6.19 AT+PDPSTATUS–查询 PDP 状态 .......................................................................................... 86
+
+
+### 6.20 AT+TCPKEEPALIVE–TCP 心跳包设置 .................................................................................. 86
+
+
+## 7 TCP 服务器指令 ......................................................................................... 89
+
+
+### 7.1 AT+TCPLISTENMODE-设置 TCP 侦听模式 .............................................................................. 89
+
+
+### 7.2 AT+TCPLISTEN–设置服务器侦听功能 .................................................................................... 90
+
+
+### 7.3 AT+CLOSELISTEN–关闭侦听链接 .......................................................................................... 91
+
+
+### 7.4 AT+CLOSECLIENT–关闭主站链接 .......................................................................................... 92
+
+
+### 7.5 +TCPRECV(S)–接收到主站的数据 .......................................................................................... 93
+
+
+### 7.6 AT+TCPREADS–读取到主站的数据 ........................................................................................ 94
+
+
+### 7.7 AT+TCPSENDS–发送给主站的数据 ........................................................................................ 95
+
+
+### 7.8 AT+CLIENTSTATUS–查询主站链路的状态 .............................................................................. 96
+
+
+### 7.9 AT+TCPACKS–查询 TCP 服务器发送数据状态 ....................................................................... 97
+
+
+## 8 TCP/UDP 透传指令 .................................................................................... 99
+
+
+### 8.1 AT+TCPTRANS–建立 TCP 透传连接 ....................................................................................... 99
+
+
+### 8.2 AT+UDPTRANS–建立 UDP 透传连接 .................................................................................... 100
+
+
+### 8.3 AT+TCPACK–查询 TCP 透传链路发送数据状态 .................................................................... 102
+
+
+### 8.4 +IPSTATUS–查询 TCP/UDP 链路状态................................................................................... 103
+
+
+### 8.5 AT+TRANSCLOSE–关闭透传方式链接 ................................................................................. 104
+
+
+## 9 SSL TCP 数据业务 ................................................................................... 105
+
+
+### 9.1 AT+SSLTCPCFG–SSL TCP 配置参数 ................................................................................... 105
+
+
+### 9.2 AT+SSLTCPSETUP–建立 SSLTCP 连接 ............................................................................... 106
+
+
+### 9.3 AT+SSLTCPCLOSE–SSL TCP 关闭连接指令........................................................................ 108
+
+
+### 9.4 AT+SSLTCPSEND–SSL TCP 数据发送 ................................................................................. 109
+
+
+### 9.5 +SSLTCPRECV–接收到 SSL TCP 数据 ................................................................................ 110
+
+
+### 9.6 AT+CERTADD–添加 SSL 证书 .............................................................................................. 110
+
+
+### 9.7 AT+CERTCHECK–SSL 证书确认 ......................................................................................... 111
+
+
+### 9.8 AT+CERTDEL–删除 SSL 证书 .............................................................................................. 112
+
+
+### 9.9 AT+SSLTCPCFGA–SSL TCP 配置参数 ................................................................................. 113
+
+
+### 9.10 AT+SSLTCPREAD–SSL TCP 数据读取 ............................................................................... 114
+
+
+### 9.11 AT+SSLCIPHERSET–SSLTCP 去除弱算法 ......................................................................... 115
+
+
+## 10 TCP 透明传输服务器指令 ....................................................................... 117
+
+
+### 10.1 AT+TCPSRVTRANS–透传方式 TCP 侦听 ........................................................................... 117
+
+
+### 10.2 AT+CLIENTSTATUS–查询透传主站链路的状态 ................................................................... 118
+
+
+## 11 FTP 指令 ................................................................................................. 120
+
+
+### 11.1 AT+FTPLOGIN–登陆FTP 服务器 ........................................................................................ 120
+
+
+### 11.2 AT+FTPLOGOUT–从FTP 服务器注销 ................................................................................ 121
+
+
+### 11.3 AT+FTPGET–从FTP 服务器下载数据 ................................................................................. 122
+
+
+### 11.4 AT+FTPPUT–向FTP 服务器上传数据 ................................................................................. 124
+
+
+### 11.5 AT+FTPSIZE–获取FTP 文件大小 ........................................................................................ 125
+
+
+
+### N706A AT 命令手册
+
+目录
+
+
+深圳市有方科技股份有限公司版权所有 vi
+
+
+
+### 11.6 AT+FTPSTATUS–查询 FTP 链路状态 .................................................................................. 126
+
+
+### 11.7 AT+FTPSCFG–FTPS 配置参数 ........................................................................................... 127
+
+
+### 11.8 AT+FILEFTPGET–文件系统内下载文件 .............................................................................. 128
+
+
+### 11.9 AT+FILEFTPPUT–向 FTP 服务器上传文件 .......................................................................... 130
+
+
+## 12 HTTP/HTTPS 指令 ................................................................................. 132
+
+
+### 12.1 AT+HTTPPARA–HTTP 参数设置 ......................................................................................... 132
+
+
+### 12.2 AT+HTTPSETUP–HTTP 链路建立....................................................................................... 133
+
+
+### 12.3 AT+HTTPACTION–HTTP 发送请求 ..................................................................................... 134
+
+
+### 12.4 AT+HTTPCLOSE–HTTP 链路主动关闭 ............................................................................... 137
+
+
+### 12.5 +HTTPRECV–HTTP 数据接收 ............................................................................................. 138
+
+
+### 12.6 AT+HTTPGET–HTTP 下载文件 ........................................................................................... 139
+
+
+### 12.7 +HTTPGETRPT–主动上报下载结果 .................................................................................... 140
+
+
+### 12.8 AT+HTTPGETSTAT?–查询下载结果 .................................................................................... 142
+
+
+### 12.9 +HTTPCLOSED–HTTP 链路被动关闭 ................................................................................. 144
+
+
+### 12.10 AT+HTTPSCFG–HTTPS 配置参数 .................................................................................... 145
+
+
+### 12.11 AT+HTTPSPARA–HTTPS 参数设置 .................................................................................. 146
+
+
+### 12.12 AT+HTTPSSETUP–HTTPS 链路建立 ................................................................................ 147
+
+
+### 12.13 AT+HTTPSACTION–HTTPS 发送请求 .............................................................................. 148
+
+
+### 12.14 AT+HTTPSCLOSE–HTTPS 链路主动关闭 ........................................................................ 150
+
+
+### 12.15 +HTTPSRECV–HTTPS 数据接收 ...................................................................................... 151
+
+
+### 12.16 AT+HTTPSGET–HTTPS 下载文件 .................................................................................... 152
+
+
+### 12.17 +HTTPSGETRPT–主动上报下载结果 ................................................................................ 153
+
+
+### 12.18 AT+HTTPSGETSTAT?–查询下载结果 ............................................................................... 155
+
+
+### 12.19 AT+FILEHTTPACTION–文件系统内 HTTP 请求 ................................................................ 156
+
+
+### 12.20 AT+FILEHTTPSACTION–文件系统内 HTTPS 请求 ........................................................... 158
+
+
+### 12.21 +FILEHTTPSTAT–文件系统内 HTTP(S)结果状态上报 ....................................................... 159
+
+
+### 12.22 +HTTPSCLOSED–HTTPS 链路被动关闭 .......................................................................... 160
+
+
+## 13 Wi-Fi 功能 .............................................................................................. 162
+
+
+### 13.1 AT+WIFIAPSCAN–Wi-Fi 热点扫描....................................................................................... 162
+
+
+### 13.2 AT+WIFIGSMLOC–Wi-Fi 定位 ............................................................................................. 163
+
+
+### 14 阿里 MQTT 指令 .................................................................................... 165
+
+
+### 14.1 AT+CLOUDAUTHMODE–设备鉴权模式 .............................................................................. 165
+
+
+### 14.2 AT+CLOUDCFG–阿里 MQTT 证书配置 ............................................................................... 166
+
+
+### 14.3 AT+CLOUDSETSRVURL–设置 MQTT 鉴权站点 ................................................................. 167
+
+
+### 14.4 AT+CLOUDHDAUTH–设备鉴权信息(华东 2 站点) .......................................................... 168
+
+
+### 14.5 AT+CLOUDCONN–配置 MQTT 连接参数命令 ..................................................................... 169
+
+
+### 14.6 AT+CLOUDSUB–订阅消息命令 ........................................................................................... 170
+
+
+### 14.7 +CLOUDPUBLISH–PUBLISH 数据接收 .............................................................................. 171
+
+
+### 14.8 AT+CLOUDPUB–发布消息命令 ........................................................................................... 171
+
+
+### 14.9 AT+CLOUDPUBMSG–发布长消息命令 ............................................................................... 172
+
+
+### 14.10 AT+CLOUDUNSUB–取消订阅命令 .................................................................................... 173
+
+
+### 14.11 AT+CLOUDDISCONN–断开 MQTT 连接并做资源释放 ...................................................... 174
+
+
+
+### N706A AT 命令手册
+
+目录
+
+
+深圳市有方科技股份有限公司版权所有 vii
+
+
+
+### 14.12 AT+CLOUDSTATE–MQTT 连接状态查询 .......................................................................... 175
+
+
+### 15 标准 MQTT 指令 .................................................................................... 176
+
+
+### 15.1 AT+MQTTMUX–允许 MQTT 支持多路 .................................................................................... 176
+
+
+### 15.2 AT+MQTTTLS–TLS 参数配置 .............................................................................................. 177
+
+
+### 15.3 AT+MQTTCONNPARAM–用户参数设置 .............................................................................. 179
+
+
+### 15.4 AT+MQTTWILLPARAM–遗嘱设置 ....................................................................................... 180
+
+
+### 15.5 AT+MQTTWILLMSG–长遗嘱消息设置 ................................................................................. 181
+
+
+### 15.6 AT+MQTTCONN–连接命令 ................................................................................................. 182
+
+
+### 15.7 AT+MQTTSUB–订阅命令..................................................................................................... 183
+
+
+### 15.8 AT+MQTTUNSUB–取消订阅 ............................................................................................... 184
+
+
+### 15.9 AT+MQTTPUB–发布主题..................................................................................................... 185
+
+
+### 15.10 AT+MQTTPUBS–发布长消息命令 ..................................................................................... 186
+
+
+### 15.11 AT+MQTTDISCONN–关闭 MQTT 连接.............................................................................. 187
+
+
+### 15.12 +MQTTSUB–接收主题内容 ............................................................................................... 188
+
+
+### 15.13 AT+MQTTSTATE–MQTT 连接状态查询 ............................................................................. 188
+
+
+## 16 GPS 功能 ................................................................................................ 191
+
+
+### 16.1 AT$MYGPSPWR–GPS 开关指令 ........................................................................................ 191
+
+
+### 16.2 AT$MYGPSSTATE–查询 GPS 开关状态 .............................................................................. 192
+
+
+### 16.3 AT$MYGPSPOS–获取 NMEA 数据...................................................................................... 192
+
+
+### 16.4 AT$MYGNSSSEL–选择定位系统 ......................................................................................... 197
+
+
+### 16.5 AT$MYGNSSMSG–获取 GPS 辅助定位信息 ....................................................................... 199
+
+
+### 16.6 AT$MYGPSCFG–GPS 设置 ................................................................................................ 200
+
+
+### 16.7 AT+GPSDEL–删除辅助数据 ................................................................................................ 201
+
+
+### 16.8 AT+SETSERVER–设置 AGNSS 服务器............................................................................... 202
+
+17 网络时间同步 ......................................................................................... 203
+
+
+### 17.1 AT+UPDATETIME–同步网络时间 ........................................................................................ 203
+
+
+### 17.2 AT+SETTZ–设置时钟偏移时间 ............................................................................................ 205
+
+
+### 17.3 AT+CTZU–时区更新,同步基站时间 ................................................................................... 206
+
+
+### 17.4 AT+CTZR–时区报告 ............................................................................................................ 207
+
+18 网络共享 ................................................................................................ 209
+
+
+### 18.1 AT+NETSHAREMODE–网络共享模式选择.......................................................................... 209
+
+
+### 18.2 AT+NETSHAREACT–打开网络共享 .................................................................................... 210
+
+19 文件系统操作 ......................................................................................... 212
+
+
+### 19.1 AT+FSWF–写文件 ............................................................................................................... 212
+
+
+### 19.2 AT+FSRF–读文件 ................................................................................................................ 213
+
+
+### 19.3 AT+FSRFEX–读文件拓展指令 ............................................................................................. 214
+
+
+### 19.4 AT+FSDF–删除文件 ............................................................................................................. 216
+
+
+### 19.5 AT+FSLIST–获取用户盘文件列表 ........................................................................................ 217
+
+
+### 19.6 AT+FSFS–获取文件大小 ...................................................................................................... 218
+
+
+### 19.7 AT+FSLS–获取用户盘剩余空间大小 .................................................................................... 219
+
+
+### 19.8 AT+FSFAT–格式化用户盘 .................................................................................................... 219
+
+
+
+### N706A AT 命令手册
+
+目录
+
+
+深圳市有方科技股份有限公司版权所有 viii
+
+
+
+### 19.9 AT+FSRN–重命名文件 ......................................................................................................... 220
+
+
+## 20 SIM 卡操作相关指令 ............................................................................... 222
+
+
+### 20.1 AT+SIMCROSS–双卡单待切换功能 ..................................................................................... 222
+
+
+### 20.2 AT+SIMHOTSWAP–设置热插拔功能 ................................................................................... 223
+
+
+### 20.3 AT+NWSIMCFG–SIM 卡上下电 ........................................................................................... 224
+
+
+### 20.4 AT+SIMCOUNTCTL–写 SIM 卡统计控制 ............................................................................. 224
+
+
+### 20.5 AT+ SIMCOUNTREAD–读取写卡次数 ................................................................................. 225
+
+21 基站定位 ................................................................................................ 227
+
+
+### 21.1 AT+CIPGSMLOC–获取基站定位信息 .................................................................................. 227
+
+22 其他指令 ................................................................................................ 229
+
+
+### 22.1 AT+NRSP–查询 LTE 邻小区的 RSRP,RSRQ,SINR参数 ...................................................... 229
+
+
+### 22.2 AT+NETMSG–查询注册网络的详细信息 .............................................................................. 230
+
+
+### 22.3 AT+NETDMSG–查询当前注册网络信息 ............................................................................... 231
+
+
+### 22.4 AT+NEOFOTA–FOTA 功能指令 ........................................................................................... 233
+
+
+### 22.5 AT+NEOFOTAURC–FOTA 状态上报控制指令 ..................................................................... 235
+
+
+### 22.6 AT+READADC–读 ADC 值 .................................................................................................. 236
+
+
+### 22.7 AT+NBANDLOCK–锁定多频段 ............................................................................................ 237
+
+
+### 22.8 AT+NFREQLOCK–锁定指定频点 ......................................................................................... 239
+
+
+### 22.9 AT+MYCELLINFO–无卡获取通信模组附近小区信息 ........................................................... 240
+
+
+### 22.10 AT$MYCGED–查询模组当前信道、接收功率和发射功率 .................................................. 242
+
+
+### 22.11 AT$MYNETINFO–设置网络选择 ........................................................................................ 242
+
+
+### 22.12 AT$MYSYSINFO–当前网络运行制式的查询、锁定 ........................................................... 243
+
+
+### 22.13 AT$MYSYSINFOURC–网络制式主动上报开关 .................................................................. 245
+
+
+### 22.14 AT$MYURCSYSINFO–网络制式主动上报开关 .................................................................. 246
+
+
+### 22.15 $MYURCSYSINFO–网络运行制式主动上报 ...................................................................... 246
+
+
+### 22.16 $MYSYSINFOURC-网络运行制式主动上报 ........................................................................ 247
+
+
+### 22.17 AT$MYLACID–查询当前 TAC 和 CELL .............................................................................. 248
+
+
+### 22.18 AT+IPINFO–查询链路连接信息 .......................................................................................... 249
+
+
+### 22.19 AT+CGACT–网络激活 ....................................................................................................... 250
+
+
+### 22.20 AT+SIGNAL–设置模组信号灯的状态 ................................................................................. 251
+
+
+### 22.21 AT+NWURCCFG–唤醒源上报配置指令 ............................................................................. 252
+
+
+### 22.22 AT+NWDELAYCFG–延时上报控制指令 ............................................................................. 253
+
+
+### 22.23 AT+FTPGETFCFG–FTP 升级上报配置指令 ...................................................................... 254
+
+
+### 22.24 AT+FTPGETF–FTP 升级指令 ............................................................................................ 255
+
+
+### 22.25 +NWURCFOTA–FOTA 升级状态上报 ................................................................................ 257
+
+
+### 22.26 AT+NWFOTA–模组 FOTA 功能指令 ................................................................................... 258
+
+
+### 22.27 AT+NWFOTASCFG–控制模组进行远程升级FOTASSL 参数配置 ..................................... 259
+
+
+### 22.28 AT+NWFTPFOTA–FTP/FTPS FOTA 升级指令 .................................................................. 260
+
+
+### 22.29 AT+RSPACK–启用数据通信状态灯指示功能 ..................................................................... 261
+
+
+### 22.30 AT+PING–PING 测试 ......................................................................................................... 262
+
+A Error Codes .............................................................................................. 263
+
+
+
+### N706A AT 命令手册
+
+目录
+
+
+深圳市有方科技股份有限公司版权所有 ix
+
+
+
+### B 短信发送流程 ........................................................................................... 265
+
+
+### B.1 发送 PDU 格式的短信内容介绍 .............................................................................................. 265
+
+
+### B.2 发送文本模式的短信流程(通过串口发送) ........................................................................... 268
+
+
+### B.3 发送 PDU 模式短信的流程(通过串口发送) ......................................................................... 269
+
+C Support Band List .................................................................................... 270
+
+C.1 LTE Bands .............................................................................................................................. 270
+
+
+
+### N706A AT 命令手册
+
+关于本文档
+
+
+深圳市有方科技股份有限公司版权所有 x
+
+
+关于本文档
+
+范围
+
+
+### 本文档对应产品为N706A 模组。
+
+读者对象
+
+本文档的使用对象为系统工程师,开发工程师及测试工程师。
+
+修订记录
+
+版本 日期 变更 作者
+
+
+### 1.0 2025-04 初始版本 Liu Fang
+
+符号约定
+
+符号 含义
+
+
+危险或警告,用户必须遵从的规则,否则会造成模组或客户设备不可逆的故障损坏,
+
+甚至可能造成人员身体伤害。
+
+
+注意,警示用户使用模组时应该特别注意的地方,如不遵从,模组或客户设备可能
+
+出现故障。
+
+
+说明或提示,提供模组使用的意见或建议。
+
+相关文档
+
+《Neoway_N706A_Datasheet》
+
+《Neoway_N706B_硬件设计指南》
+
+《Neoway_N706B_EVK 用户指南》
+
+
+
+### N706A AT 命令手册
+
+
+### 第 1 章开机 LOG 使用说明
+
+
+深圳市有方科技股份有限公司版权所有 11
+
+
+
+### 1 开机 LOG 使用说明
+
+
+### 开机回码“+PBREADY”。
+
+
+### 如果是波特率自适应状态开机,请上电后延时10 秒向模组输入“AT”,如果模组 AT 初始化完成
+
+
+### 会回复“OK”,电话本准备好会输出回码“+PBREADY”。
+
+
+
+### 网络灯:未搜到网时为长灭,当搜到网时未激活 PPP 连接,网络灯为长亮,激活 PPP 成功后为亮
+
+
+### 0.2 秒,灭1.8 秒的交替闪烁状态。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 2 章 AT 命令格式说明
+
+
+深圳市有方科技股份有限公司版权所有 12
+
+
+
+## 2 AT 命令格式说明
+
+
+### 2.1 定义
+
+
+### ⚫ <CR>: 确认符
+
+
+### ⚫ <LF>: 换行符
+
+⚫ <..>: 参数名称,尖括号不体现在命令行中
+
+⚫ [..]: 可选参数,方括号不体现在命令行中
+
+⚫ : 空格符
+
+
+### 2.2 语法说明
+
+前置字符说明:
+
+采用”AT”或”at”标识当作命令的前置字符,模组仅识别该类字符当作AT 命令。
+
+命令字段:
+
+标准命令,符合3GPP 27007、27005 以及ITU-T Recommendation V.250等相关标准约束。
+
+扩展命令,Neoway 自定义
+
+连接符说明:
+
+采用”+”与”$”作为前置字符与命令字段的连接符号,具体详情各命令说明
+
+结束符:
+
+默认采用<CR>作为命令行的确认字符,即0x0D
+
+命令响应语法:
+
+<CR><LF>response<CR><LF>作为部分命令的响应,其中 response 可以是一条内容,也可以
+
+是多条内容,具体示命令而定。
+
+命令结果语法:
+
+
+### 默认采用<CR><LF>OK<CR><LF>表示命令执行正常,<CR><LF>ERROR<CR><LF>表示命令执
+
+
+
+### N706A AT 命令手册
+
+
+### 第 2 章 AT 命令格式说明
+
+
+深圳市有方科技股份有限公司版权所有 13
+
+
+
+### 行失败。根据AT+CMEE 命令的设置不同,命令结果返回的错误码类型不同,具体参考附录A。
+
+
+### 2.3 命令类型
+
+命令类型 命令语法 响应语法 功能
+
+
+### 设置命令 AT+CMD=<VALUE><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+此命令写入规定的
+
+内容传递到内部进
+
+行设置参数
+
+
+### 执行命令 AT+CMD[=<VALUE>]<CR>
+
+[<CR><LF>response<CR><LF>]
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+此命令读取受模组
+
+中内部进程影响的
+
+非变量参数并执行
+
+相应功能
+
+
+### 测试命令 AT+CMD=?<CR>
+
+[<CR><LF>response<CR><LF>]
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+此命令返回由相应
+
+的写入命令或内部
+
+进程设置的参数和
+
+值范围的列表
+
+
+### 查询命令 AT+CMD?<CR>
+
+[<CR><LF>response<CR><LF>]
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+此命令返回参数的
+
+当前设置值或返回
+
+执行命令后模组的
+
+对应状态
+
+
+### 主动上报 <CR><LF>+CMD:
+
+
+### <VALUE><CR><LF> N/A
+
+此命令主动指示模
+
+组的内部状态变
+
+化、数据接收等
+
+
+### 说明 AT 正文不体现语法标识,所有命令符合本章节约束规则
+
+
+
+### 2.4 命令响应时间
+
+有方模组的每条命令在下发之后,模组内部需要一定得时间进行处理及响应,其响应时长取决于具
+
+
+### 体的AT 命令。
+
+模组内部参数设置或读写的命令在下发后,模组会立即作出响应,默认最大响应时间为300ms。其
+
+
+### 他涉及SIM/USIM 卡、网络交互、外设控制的命令,模组可能需要花费数秒到数十秒的时间才会作出响
+
+
+### 应,具体视SIM/USIM 卡配置(例如,电话簿中存储的联系人数量,存储的短信数量)、模组所处的网
+
+络环境(网络质量、拥堵情况等)或者外设类型而异。
+
+下表列出相关指令的时间,其它未在下表中列出的命令,最大响应时间均为300ms。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 2 章 AT 命令格式说明
+
+
+深圳市有方科技股份有限公司版权所有 14
+
+
+命令类型 命令 超时时间(单位:s)
+
+
+### 通用AT 指令
+
+
+### AT+COPS 180
+
+
+### AT+CLCK 15
+
+
+### AT+CPIN 5
+
+
+### AT+CPWD 5
+
+
+### ATD*99# 30
+
+短消息服务指令
+
+
+### AT+CMGR 30
+
+
+### AT+CMGL 30
+
+
+### AT+CMGS 60
+
+
+### AT+CMSS 60
+
+
+### AT+CMGD 10
+
+
+### AT+CMGW 5
+
+
+### AT+CSCA 5
+
+
+### AT+CPMS 5
+
+
+### TCP/UDP 客户端指令
+
+
+### AT+XIIC 15
+
+
+### AT+TCPSETUP 15
+
+
+### AT+TCPSEND 30
+
+
+### AT+UDPSEND 30
+
+
+### TCP 服务器指令 AT+TCPSENDS 30
+
+
+### TCP/UDP 透传指令 AT+TCPTRANS
+
+```
+OK 或ERROR 在300ms 内返回,实际的
+```
+
+连接状态在15s 内返回。
+
+
+### FTP 指令
+
+
+### AT+FTPLOGIN 30
+
+
+### AT+FTPLOGOUT 30
+
+
+### AT+FTPGET 30
+
+
+### AT+FTPPUT 30
+
+
+### AT+FTPSIZE 30
+
+
+### AT+FILEFTPGET 30
+
+
+### AT+FILEFTPPUT 30
+
+
+### HTTP/HTTPS 指令
+
+
+### AT+HTTPSETUP 15
+
+
+### AT+HTTPACTION 30
+
+
+### AT+HTTPSSETUP 15
+
+
+### AT+HTTPSACTION 30
+
+
+
+### N706A AT 命令手册
+
+
+### 第 2 章 AT 命令格式说明
+
+
+深圳市有方科技股份有限公司版权所有 15
+
+
+SSL
+
+
+### AT+SSLTCPSETUP 15
+
+
+### AT+SSLTCPSEND 30
+
+
+### AT+CERTADD 30
+
+
+### 呼叫控制指令 ATD 60
+
+Wi-Fi 功能
+
+
+### AT+WIFIAPSCAN 5
+
+
+### AT+WIFIGSMLOC 15
+
+GPS
+
+
+### AT$MYGPSPWR 15
+
+
+### AT$MYGNSSSEL 3
+
+
+### AT$MYGNSSMSG 3
+
+
+### AT$MYGPSCFG 3
+
+
+### AT+GPSDEL 3
+
+
+### AT$MYGPSPOS 3
+
+
+### 阿里MQTT 指令
+
+
+### AT+CLOUDCONN 30
+
+
+### AT+CLOUDPUBMSG 30
+
+
+### AT+CLOUDSUB 30
+
+
+### AT+CLOUDPUB 30
+
+
+### AT+CLOUDUNSUB 30
+
+
+#### `AT+CLOUDDISCONN 30s+100ms`
+
+
+### 标准MQTT 指令
+
+
+### AT+MQTTWILLMSG 30
+
+
+### AT+MQTTSUB 10
+
+
+### AT+MQTTUNSUB 10
+
+
+### AT+MQTTPUB 10
+
+
+### AT+MQTTPUBS 30
+
+
+### AT+MQTTDISCONN 10
+
+
+### AT+MQTTCONN 30
+
+
+### 基站定位 AT+CIPGSMLOC 15
+
+
+### 网络时间同步 AT+UPDATETIME 默认30, 指令有参数可以设置超时时间
+
+
+### 文件系统操作 AT+FSWF 60
+
+其它指令
+
+
+### AT+MYCELLINFO 300
+
+
+### AT+PING 5
+
+
+#### `AT+CGACT 单个拨号60s,多个往上增加`
+
+
+### FOTA AT+FTPGETF 15
+
+
+
+### N706A AT 命令手册
+
+
+### 第 2 章 AT 命令格式说明
+
+
+深圳市有方科技股份有限公司版权所有 16
+
+
+
+### AT+NWFOTA 15
+
+
+### AT+ NWFTPFOTA 15
+
+
+
+### N706A AT 命令手册
+
+第 3 章注意事项
+
+
+深圳市有方科技股份有限公司版权所有 17
+
+
+3 注意事项
+
+
+### 3.1 文件操作
+
+
+⚫ 所有涉及文件系统的操作时,文件名不能为空,且不允许包含字符'?' '*' '@' '\0'
+
+⚫ 不支持目录创建,例如AT+FSFS=/dir/test123.txt 此类操作
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 18
+
+
+
+### 4 通用 AT 指令
+
+
+### 4.1 ATI–获取模组厂商信息
+
+获取模组厂商信息,包括厂家、型号和版本。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 ATI<CR>
+
+<CR><LF><manufacturer>
+
+<CR><LF><module_version>
+
+<CR><LF><soft_version>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<manufacturer> 模组厂商信息、产品名称、版本号
+
+<module_version> 模组型号
+
+<soft_version> 模组软件版本
+
+示例
+
+
+#### `ATI`
+
+
+
+### NEOWAY
+
+
+### N706
+
+
+### V001
+
+```
+OK
+```
+
+
+厂家信息
+
+模组型号
+
+版本号
+
+
+### 4.2 AT+GMR–查询版本信息
+
+查询软件版本信息。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 19
+
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+GMR<CR> <CR><LF>+GMR: <reversion>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<reversion> 模组软件版本信息
+
+示例
+
+
+### AT+GMR
+
+
+
+### +GMR: N706-R004-STD-BZ-003
+
+```
+OK
+```
+
+查询软件版本
+
+
+### 4.3 AT+CSQ–获取信号强度
+
+查询接收信号强度<rssi>。
+
+命令格式
+
+类型 命令。 响应格式
+
+执行 AT+CSQ<CR> <CR><LF>+CSQ: <signal>,<ber>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<signal> 以下为signal(CSQ)与rssi 对应关系:
+
+signal rssi
+
+0 <4 或99 <-107 dBm or unknown
+
+1 <10 <-93dBm
+
+2 <16 <-81 dBm
+
+3 <22 <-69dBm
+
+4 <28 <-57dBm
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 20
+
+
+5 >=28 >=-57 dBm
+
+
+<ber> 0...7 参考GSM 05.08 8.2.4 章节表格中RXQUAL 的取值
+
+99 误码率无法测量
+
+
+示例
+
+
+### AT+CSQ
+
+
+
+### +CSQ: 19,2
+
+```
+OK
+```
+
+查询信号强度
+
+
+### 4.4 AT+CREG–查询网络注册状态
+
+查询模组的当前网络注册状态。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CREG=[<n>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CREG?<CR> <CR><LF>+CREG:<n>,<stat>[,<lac>,<ci>[,<Act>]]
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+CREG=?<CR> <CR><LF>+CREG: range of supported<n>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<n> 0:禁止网络注册主动提供结果代码(默认设置)
+
+1:允许网络注册主动提供结果代码
+
+
+### 2:允许网络注册主动提供所在地讯息(CELL ID、LOCAL ID)。
+
+<stat> 0:未注册,终端当前并未在搜寻新的运营商
+
+1:已注册本地网络
+
+2:未注册,终端正在搜寻基站
+
+3:注册被拒绝
+
+4:未知代码
+
+5:已注册,处于漫游状态
+
+6:ltesms only home
+
+7:ltesms only roaming
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 21
+
+
+
+### 8:EMER SVCE ONLY
+
+
+### 9:CSFB NOT PREFER HOME
+
+
+### 10:CSFB NOT PREFER ROAMING
+
+<lac> 字符串型,2 字节十六进制位置区代码
+
+<ci> 字符串型,2 字节十六进制小区编号
+
+<Act> 0:GSM
+
+1:GSM compact
+
+
+### 2:UTRAN
+
+3:GSM w/EGPRS
+
+4:UTRAN w/HSDPA
+
+5:UTRAN w/HSUPA
+
+6:UTRAN w/HSDPA AND w/HSUPA
+
+
+### 7:E-UTRAN
+
+8:UTRAN w/HSPA+
+
+示例
+
+
+### AT+CREG=1
+
+
+```
+OK
+```
+
+允许模组主动提供网络注册代码
+
+
+### AT+CREG?
+
+
+
+### +CREG: 0,1
+
+```
+OK
+```
+
+查询模组当前网络注册状态信息
+
+
+### AT+CREG=?
+
+
+
+### +CREG: (0-2)
+
+```
+OK
+```
+
+查询模组网络注册状态值范围
+
+
+### AT+CEREG=5
+
+
+
+### ERROR
+
+入参错误,返回 error
+
+
+### 4.5 AT+CEREG–获取 EPS 网络注册状态
+
+
+### 查询EPS 网络注册状态。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CEREG=[<n>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 22
+
+
+
+### 查询 AT+CEREG?<CR>
+
+
+### <CR><LF>+CEREG:
+
+<n>,<stat>[,[<tac>],[<ci>],[<AcT>][,,[,[<Active-Time>],[<Peri
+
+odic-TAU>]]]]
+
+
+### <CR><LF>OK<CR><LF>
+
+or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+测试 AT+CEREG=?<CR> <CR><LF>+CEREG: (list of supported<n>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<n> 0:禁止网络注册主动提供结果代码(默认设置)
+
+1:允许网络注册主动提供结果代码
+
+
+### 2:允许网络注册主动提供所在地信息(CELL ID、LOCAL ID)
+
+4:允许网络注册主动提供Active-Time 和Periodic-TAU
+
+<stat> 0:未注册,终端当前并未在搜寻新的运营商
+
+1:已注册本地网络
+
+2:未注册,终端正在搜寻基站
+
+3:注册被拒绝
+
+4:未知代码
+
+5:已注册,处于漫游状态
+
+<tac> 字符串型,2 字节十六进制位置区代码
+
+<ci> 字符串型,2 字节十六进制小区编号
+
+<Act> 0:GSM
+
+1:GSM compact
+
+
+### 2:UTRAN
+
+3:GSM w/EGPRS
+
+4:UTRAN w/HSDPA
+
+5:UTRAN w/HSUPA
+
+6:UTRAN w/HSDPA and HSUPA
+
+
+### 7:E-UTRAN
+
+示例
+
+
+### AT+CEREG?
+
+
+
+### +CEREG: 0,1
+
+```
+OK
+```
+
+查询终端的注册结果
+
+已注册本地网络
+
+
+### AT+CEREG=1
+
+
+```
+OK
+```
+
+允许网络注册主动提供结果代码
+
+
+### AT+CEREG=?
+
+
+查询参数设置范围
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 23
+
+
+
+### +CEREG: (0-2,4)
+
+```
+OK
+```
+
+
+### 4.6 AT+COPS–网络选择
+
+查询网络。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+COPS=[<mode>[,<format>[,
+
+<oper>>[,<AcT>]]]]<CR> <CR><LF>OK<CR><LF>
+
+查询 AT+COPS?<CR> <CR><LF>+COPS: <mode>[,<format>,<oper>[,<AcT>]]
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+COPS=?<CR>
+
+<CR><LF>+COPS: [list of supported (<stat>,long
+
+alphanumeric <oper>,short alphanumeric
+
+<oper>,numeric <oper>[,<AcT>])s][,,(list of
+
+supported<mode>s),(list of supported <format>s)]
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<mode> 用来设置自动选择网络还是手动选择网络。
+
+0:自动选择网络(忽略参数<oper>)
+
+1:手动选择网络
+
+2:从网络侧撤销注册
+
+3:只设置<format>
+
+4: 先手动选择网络后自动选择网络 (若手动选择网络不成功, 就进入自动选择网络)
+
+<format> 0:长字母<oper>(默认设置)
+
+1:短格式字母<oper>
+
+2:数字<oper>
+
+<oper> 在<format>中被赋值,可以是16 个符的长字母格式、8 个符的短字母格式及5 个符
+
+
+### 的数字格式(MCC/MNC)
+
+<AcT> 显示无线接入技术,取值如下:
+
+
+### 0:GSM
+
+1:GSM compact
+
+3:GSM w/EGPRS
+
+
+### 7:E-UTRAN
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 24
+
+
+示例
+
+
+### AT+COPS=0,0
+
+
+```
+OK
+```
+
+自动选择网络,长字母模式
+
+
+### AT+COPS=0,2
+
+
+```
+OK
+```
+
+设置成数字模式
+
+
+### AT+COPS?
+
+
+
+### +COPS: 0,0,"CHINAMOBILE",7
+
+```
+OK
+```
+
+中国移动
+
+
+### AT+COPS?
+
+
+
+### +COPS: 0,2,"46000",7
+
+```
+OK
+```
+
+如果是设置成数字模式,那么得到的是数字 46000
+
+
+### AT+COPS?
+
+
+
+### +COPS: 0,0,"CHINA UNICOM",7
+
+```
+OK
+```
+
+中国联通
+
+
+### AT+COPS?
+
+
+
+### +COPS: 0,2,"46001",7
+
+```
+OK
+```
+
+如果是设置成数字模式,那么得到的是数字 46001
+
+
+### AT+COPS?
+
+
+
+### +COPS: 0,0,"CHINA TELECOM",7
+
+```
+OK
+```
+
+中国电信
+
+
+### AT+COPS?
+
+
+
+### +COPS: 0,2,46011,7
+
+```
+OK
+```
+
+如果是设置成数字模式,那么得到的是数字 46011
+
+
+### AT+COPS=2
+
+
+```
+OK
+```
+
+注销网络
+
+
+### 4.7 AT+CIMI–查询国际移动用户识别码
+
+获取国际移动用户识别码IMSI(international mobile subscriber identification)。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+CIMI<CR>
+
+
+### <CR><LF>+CIMI: <IMSI>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 25
+
+
+参数
+
+
+### <IMSI> 国际移动用户识别码。
+
+
+### 该识别码为15 位数字,以3 位MCC 和2 位MNC 开头,用来对SIM 卡进行鉴权。
+
+示例
+
+
+### AT+CIMI
+
+
+
+### +CIMI: 460020188385503
+
+```
+OK
+```
+
+查询国际移动用户识别码
+
+
+### IMSI:460022201575463
+
+
+### AT+CIMI
+
+
+
+### ERROR
+
+
+### 不插 SIM 卡,返回 ERROR
+
+
+### 4.8 AT+CGSN–获取通信模组 IMEI 号
+
+获取模组的产品序列号,也就是IMEI 号(International Mobile Equipment Identity)。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+CGSN<CR> <CR><LF>+CGSN: <IMEI>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+
+### <IMEI> 模组的产品序列号。
+
+示例
+
+
+### AT+CGSN
+
+
+
+### +CGSN: 355897043139120
+
+```
+OK
+```
+
+读取指令
+
+
+
+### 3GPP2 网络下,返回码为8 位的ESN。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 26
+
+
+
+### 4.9 AT+GSN–获取通信模组IMEI 号
+
+获取模组的产品序列号,也就是IMEI 号(International Mobile Equipment Identity)。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+GSN<CR> <CR><LF>+GSN: <IMEI>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+
+### <IMEI> 模组的产品序列号,为15 位数字。
+
+示例
+
+
+### AT+GSN
+
+
+
+### +GSN: 355897043139120
+
+```
+OK
+```
+
+
+### 查询 IMEI号
+
+
+### 4.10 AT+CCID–获取 SIM 卡标识
+
+
+### 获取SIM 卡的ICCID。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+CCID<CR>
+
+
+### <CR><LF>+CCID: <ICCID>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<ICCID> Integrate circuit card identity 集成电路卡识别码,即所插入卡的识别码
+
+
+### ICCID 为20 位。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 27
+
+
+示例
+
+
+### AT+CCID
+
+
+
+### +CCID: 89860002190810001367
+
+```
+OK
+```
+
+读取指令
+
+
+### AT+CCID
+
+
+
+### ERROR
+
+
+### 不插 SIM 卡时,返回 ERROR
+
+
+### 4.11 AT+CGMM–查询模组型号
+
+查询模组型号。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CGMM<CR> <CR><LF>+CGMM: <model>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<model> 模组型号
+
+示例
+
+
+### AT+CGMM
+
+
+
+### +CGMM: N706
+
+```
+OK
+```
+
+查询模组型号
+
+
+### 4.12 AT+GMM–查询模组型号
+
+查询模组型号。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+GMM<CR> <CR><LF>+GMM: <model>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 28
+
+
+参数
+
+<model> 模组型号。
+
+示例
+
+
+### AT+GMM
+
+
+
+### +GMM: N706
+
+```
+OK
+```
+
+查询模组型号
+
+
+### 4.13 AT+IPR–设置模组波特率
+
+设置模组波特率,默认掉电保存。
+
+若波特率查询返回为0,表示模组波特率自适应。默认为波特率自适应。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+IPR=<baud rate><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+IPR?<CR> <CR><LF>+IPR: <baud rate>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+IPR=?<CR> <CR><LF>+IPR: (list of supported <baud rate>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<baud rate> 波特率
+
+(0,1200,2400,4800,9600,14400,19200,28800,38400,57600,115200)
+
+示例
+
+
+### AT+IPR=115200
+
+
+```
+OK
+```
+
+设置波特率为 115200bps
+
+
+### AT+IPR?
+
+
+
+### +IPR: 115200
+
+波特率查询
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 29
+
+
+```
+OK
+```
+
+
+### AT+IPR=?
+
+
+
+### +IPR:
+
+(0,1200,2400,4800,9600,14400,19200,28800,38400,57600,
+
+115200)
+
+```
+OK
+```
+
+查询波特率设置范围
+
+
+### AT+IPR=100
+
+
+
+### ERROR
+
+模组波特率设为不允许的值
+
+出错
+
+
+### 4.14 AT+CFUN–设置模组功能
+
+通过设置<fun>来选择模组的功能。<fun>只支持某些值。
+
+设置该参数后,掉电不保存。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CFUN=[<fun>[,<rst>]]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CFUN?<CR> <CR><LF>+CFUN: <fun>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+CFUN=?<CR>
+
+<CR><LF>+CFUN: ( listof supported <fun>s),(range of
+
+supported <rst>)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<fun> 0:最小功能(turn off radio and SIM power)
+
+1:全功能(默认)
+
+4:关闭模组的发送和接收射频电路(飞行模式)
+
+<rst> 0:do not reset the MT before setting it to <fun> power level
+
+1:reset the MT before setting it to <fun> power level
+
+示例
+
+
+### AT+CFUN=1
+
+
+```
+OK
+```
+
+设置模组为全功能状态工作
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 30
+
+
+
+### AT+CFUN?
+
+
+
+### +CFUN: 1
+
+```
+OK
+```
+
+查询当前功能状态,全功能状态
+
+
+### AT+CFUN=?
+
+
+
+### +CFUN: (0,1,4),(0-1)
+
+```
+OK
+```
+
+查询指令可设置参数范围
+
+
+### AT+CFUN=3
+
+
+
+### ERROR
+
+设置不允许的参数
+
+
+### 4.15 AT+CMUX–串口多路复用指令
+
+启用通信模组串口多路复用功能。
+
+基于一个物理通信串口,通过规范协议虚拟出两个甚至多个串口,一般虚拟三个串口,一个串口进
+
+
+### 行外部协议栈拨号上网,另外两个收发AT指令。建议使用AT+CMUX=0启用串口多路复用功能。
+
+
+### 建议使用AT+CMUX=0启用串口多路复用功能。
+
+命令格式
+
+类型 命令 响应格式
+
+执行
+
+
+#### `AT+CMUX=<mode>[,<subset>[,<p`
+
+ort_speed>[,<N1>[,<T1>[,<N2>[,<
+
+T2>[,<T3>[,<k>]]]]]]]]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 测试 AT+CMUX=?<CR>
+
+<CR><LF>+CMUX: (list of supported
+
+<mode>values),(list of supported <subset>
+
+values),(value range of<port_speed>),(value range
+
+of<N1>),(value range of<T1>),(value range
+
+of<N2>),(value range of<T2>),(value range
+
+of<T3>),(value range of<k>)
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 查询 AT+CMUX?<CR>
+
+<CR><LF>+CMUX: <mode>,
+
+<subset>,<port_speed>,<N1>,<T1>,<N2>,<T2>,<
+
+T3>,<k>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<mode> 整数类型,MUX 打开状态下的模式,本规范中至少需要支持基本模式
+
+0:基本模式(默认值)
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 31
+
+
+1:增强模式(目前不支持)
+
+<subset> 整数类型,帧格式子集
+
+0:UIH frames used only(默认值)
+
+1:UI frames used only(目前不支持)
+
+2:目前不支持
+
+<port_speed> 整数类型,串口速率
+
+1:9600bit/s
+
+2:19200bit/s
+
+3:38400bit/s
+
+4:57600bit/s
+
+5:115200bit/s(默认值)
+
+6:230400bit/s
+
+7:目前不支持
+
+8:目前不支持
+
+
+### <N1> 整数类型,最大帧长,1~32768;目前仅支持的设置范围为1~2048
+
+基本模式下默认值31
+
+增强模式下默认值64
+
+<T1> 整数类型,接收确认定时器,1~255,1 代表10ms,默认值为10(100ms)
+
+
+### <N2> 整数类型,最大重连次数,0~100,默认值为3,目前仅支持0~5
+
+<T2> 整数类型,多路控制通道响应定时器,2~255,2 代表20ms,默认值为30(300ms)
+
+<T3> 整数类型,唤醒响应定时器,1~255,1 代表1s,默认值为10(10s)
+
+(目前不支持该参数,读命令时返回0 值)
+
+<k> 整数类型,窗口大小,1~7,默认值为2,用于支持错误恢复的增强模式。
+
+(目前不支持该参数,读命令时返回0 值)
+
+
+
+### <T2>必须大于<T1>。
+
+示例
+
+
+### AT+CMUX=0
+
+
+```
+OK
+```
+
+基本模式,其它参数使用默认值
+
+
+### AT+CMUX=?
+
+
+
+### +CMUX:
+
+(0-1),(0-2),(1-8),(1-32768),(1-255),(0-100),(2-255),(1-255),(1-7)
+
+```
+OK
+```
+
+查询指令参数可设置范围
+
+
+### AT+CMUX?
+
+
+
+### +CMUX: 0,0,5,31,10,3,30,10,2
+
+```
+OK
+```
+
+查询当前参数
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 32
+
+
+
+### AT+CMUX=3
+
+
+
+### ERROR
+
+设置不允许的参数
+
+
+### 4.16 AT+CCLK–时钟管理
+
+设置和查询模组的实时时钟。
+
+设置的时间立即生效,掉电保存;默认时钟为0 时区,使用1/4 时区。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CCLK=<time><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CCLK?<CR> <CR><LF>+CCLK: <time>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<time> 字符串,格式为 “yy/MM/dd,hh:mm:ss[TZ]”,指示年、月、日、小时、分钟、秒
+
+
+### TZ 2 位数字表示当地时间与GMT 之间时差。
+
+
+### 该信息可选,只有当网络支持时该信息才显示。当地时间为GMT 时间时不显示。
+
+示例
+
+
+### AT+CCLK="18/07/01,14:54:01"
+
+
+```
+OK
+```
+
+设置模组时间为 18 年 7 月 1日,14 时 54 分 01 秒,时区为东八区
+
+
+### AT+CCLK?
+
+
+
+### +CCLK: "18/07/01,14:54:10+32"
+
+```
+OK
+```
+
+查询模组当前的时钟
+
+
+### AT+CCLK=14/07/02,10:48:50
+
+
+
+### ERROR
+
+设置时间必须为字符串格式
+
+
+
+### 1. 设置的时间内容会写入NV,掉电报存;
+
+
+### 2. 默认打开网络授时(NITZ)功能,如果对应的运营商网络支持网络授时,在注册网络过程,会将NV
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 33
+
+
+文件中的时间刷新为网络时间。
+
+
+### 故:如果测试掉电保存,请无卡测试,或使用不支持 NITZ 功能的运营商SIM 卡测试(如联通)。
+
+
+### 4.17 AT+CPIN–输入 PIN 码
+
+
+### 查询PIN 状态以及输入PIN 码。
+
+
+### 若要输入PIN 码, 需锁定当前SIM 卡(AT+CLCK="SC",1,"1234") 后, 重启模组才能输入PIN 码;
+
+
+### 输入三次错误的PIN 码后,会要求输入PUK 码才能解锁。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CPIN=<pin>[,<newpin>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CPIN?<CR> <CR><LF>+CPIN: <code>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<pin>, <newpin> 字符串类型
+
+<code> READY:不需要输入任何密码
+
+
+### SIM PIN:需要输入PIN 码
+
+
+### SIM PUK:需要输入PUK 码
+
+
+### SIM PIN2:需要输入PIN2 码
+
+
+### SIM PUK2:需要输入PUK2 码
+
+示例
+
+
+### AT+CPIN?
+
+
+
+### +CPIN: READY
+
+```
+OK
+```
+
+
+### 查询是否需要输入 PIN码
+
+不需要输入任何密码
+
+
+### AT+CPIN?
+
+
+
+### +CPIN: SIM PIN
+
+```
+OK
+```
+
+
+### AT+CPIN="1234"
+
+
+```
+OK
+```
+
+
+### 查询是否需要输入 PIN码
+
+
+### 需要输入 PIN码
+
+
+
+### 输入正确的 PIN码
+
+
+卡解锁
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 34
+
+
+
+### +PBREADY
+
+
+### AT+CPIN?
+
+
+
+### +CPIN: SIM PUK
+
+```
+OK
+```
+
+
+### AT+CPIN="12345678","4321"
+
+
+```
+OK
+```
+
+
+
+### +PBREADY
+
+
+### 输入错误的 PIN码三次以上,需要输入 PUK码来解锁
+
+
+
+### 输入 PUK码,并输入新的 PIN码
+
+
+卡解锁
+
+
+### 4.18 AT+CLCK–PIN 使能与查询功能指令
+
+
+### 锁、解锁以及查询MT 和网络设备。设置该参数,重启模组后生效。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CLCK=<fac>,<mode>[,<pa
+
+sswd>[,<class>]]<CR>
+
+⚫ 当<mode>等于2:
+
+<CR><LF>+CLCK: <status>[,<class1>
+
+[<CR><LF>+CLCK: <status>,<class2>[...]]
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+⚫ 当<mode>不等于2:
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+测试 AT+CLCK=?<CR> <CR><LF>+CLCK: (list of supported <fac> values)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<fac> 需带双引号""
+
+
+### "OI":呼出国际电话
+
+
+### "SC":SIM 卡
+
+
+### "AO":呼出电话
+
+
+### "OX":除了归属地外所有呼出国际电话
+
+
+### "FD":SIM 卡固定拨号空间
+
+<mode> 0:解锁
+
+1:锁定
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 35
+
+
+2:查询状态
+
+<status> 0:not active
+
+1:active
+
+<passwd> 密码或操作码,字符串类型,需带双引号""
+
+<classx> 1:语音服务类型
+
+2:数据服务类型
+
+4:fax 服务类型
+
+8:短消息
+
+16:同步数据业务
+
+32:异步数据业务
+
+64:专用包接入
+
+128:专用数据包装拆器接入
+
+示例
+
+
+### AT+CLCK="SC",2
+
+
+
+### +CLCK: 0
+
+```
+OK
+```
+
+
+
+### AT+CLCK=?
+
+
+
+### +CLCK: (“SC","FD","AO","OX","OI")
+
+```
+OK
+```
+
+查询模组相关网络信息。
+
+
+### AT+CLCK="SC",1,"1234"
+
+
+```
+OK
+```
+
+
+### 锁定 SIM卡,其中“1234”为当前 SIM卡的 PIN码.
+
+
+### AT+CLCK="SC",0,"1234"
+
+
+```
+OK
+```
+
+
+### 解锁 SIM卡,其中“1234”为当前 SIM卡的 PIN码。
+
+
+### AT+CLCK="SC",1,"2222"
+
+
+
+### ERROR
+
+
+### PIN码错误。
+
+
+### 4.19 AT+CPWD–修改密码指令
+
+修改模组锁功能的密码。
+
+
+### 若需修改PIN 码,需锁定SIM 卡(AT+CLCK="SC",1,"1234")后才能修改。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CPWD=<fac>,<oldpwd>,<newpwd><CR> <CR><LF>OK<CR><LF>
+
+Or
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 36
+
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 测试 AT+CPWD=?<CR>
+
+<CR><LF>+CPWD: (list of supported
+
+(<fac>,<pwdlength>)s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<fac> 需带双引号""
+
+
+### "P2":SIM PIN2
+
+
+### "SC":SIM 卡
+
+<oldpwd> 需带双引号"",旧密码或操作码,字符串类型
+
+<newpwd> 需带双引号"",新密码或操作码,字符串类型
+
+示例
+
+
+### AT+CPWD=?
+
+
+
+### +CPWD: ("SC",8),("P2",8)
+
+```
+OK
+```
+
+查询模组允许锁功能密码的业务范围。
+
+
+### AT+CPWD="SC","1234","0000"
+
+
+```
+OK
+```
+
+
+### 修改当前 SIM卡的 PIN码,其中 1234为旧的 PIN码,0000为新的 PIN码。
+
+
+### AT+CPWD=SC,1234,0000
+
+
+
+### ERROR
+
+指令格式错误,需带双引号""。
+
+
+### 4.20 AT+CGDCONT–设置 PDP 格式
+
+设置GPRS 的 PDP(Packet Data Protocol ,分组数据协议)格式。APN 允许设置的长度最长是
+
+50。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+#### `AT+CGDCONT=<cid>[,<PD`
+
+P_type>[,<APN>[,<PDP_ad
+
+dr>[,<d_comp>[,<h_comp>]]
+
+
+### ]]]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+CGDCONT?<CR>
+
+
+### <CR><LF>+CGDCONT:
+
+<cid>,<PDP_type>,<APN>,<PDP_addr>,<d_comp>,<h_
+
+comp>[list of all supported cid ,max to 7 record]
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 37
+
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+CGDCONT=?<CR>
+
+<CR><LF>+CGDCONT: [list of supported
+
+(<cid>,<PDP_type>,<APN>,<PDP_addr>,<d_comp>,<h_
+
+comp>)]
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<cid> (PDP Context Identifier)一个数字参数,指定一个PDP 上下文定义,这个参数是
+
+
+### 当地的TE-MT 接口并且被应用到其他PDP 上下文相关的命令当中,使用查询命
+
+令可以查询到允许的值(最小值为1)。
+
+<PDP_type> (Packet Data Protocol type)字符串参数,用于指定分组数据协议的类型
+
+“IP”网络协议(Internet Protocol)(IETFSTD 5)
+
+<APN> (Access Point Name)字符串形式,是一个逻辑名称,用来选择GGSN 或者外部
+
+分组数据网。
+
+<PDP_address> 字符串形式,用来在地址空间中区分MT。
+
+
+### 如果不写这个参数,则在PDP 的启动过程当中由TE 提供这个值。
+
+
+### 如果TE 提供失败,就请求动态地址,即使在PDP 的启动过程当中分配了地址,
+
+在使用这条指令查询的时候仍然会返回空。
+
+<d_comp> 数字参数用来控制PDP 数据压缩(仅适用于SNDCP)
+
+0 - off (缺省情况下默认值)
+
+<h_comp> 数字参数用来控制PDP 头部压缩0 - off (缺省情况下默认值)
+
+<pd1>, … <pdN> 0 到N,字符串类型,意义与<PDP_type>有关
+
+示例
+
+
+### AT+CGDCONT=1,"IP","CMNET"
+
+
+```
+OK
+```
+
+
+### 设置 PDP格式,PDP类型为 IP,APN名称为 CMNET。
+
+
+#### `AT+Cgdcont?`
+
+
+
+### +CGDCONT: 1,"IP","","IPV4:0.0.0.0",0,0
+
+
+### +CGDCONT: 2,"IP","","IPV4:0.0.0.0",0,0
+
+
+### +CGDCONT: 3,"IP","","IPV4:0.0.0.0",0,0
+
+
+### +CGDCONT: 4,"IP","","IPV4:0.0.0.0",0,0
+
+
+### +CGDCONT: 5,"IP","","IPV4:0.0.0.0",0,0
+
+
+### +CGDCONT: 6,"IP","","IPV4:0.0.0.0",0,0
+
+
+### +CGDCONT: 7,"IP","","IPV4:0.0.0.0",0,0
+
+```
+OK
+```
+
+
+### 查询当前 PDP格式。
+
+
+### AT+CGDCONT=?
+
+
+
+### +CGDCONT:
+
+(1-7),(IP,IPV6,IPV4V6,PPP,Non-IP),,,(0-3),(0-4)
+
+```
+OK
+```
+
+
+### 查询设置 PDP格式的取值范围。
+
+
+#### `AT+cgdcont=1,"IPV4" 入参错误,返回 error`
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 38
+
+
+
+### ERROR
+
+
+### 4.21 AT+XGAUTH–用户认证
+
+
+### PDP 认证。
+
+
+### 该指令要放在 AT+CGDCONT 这条指令后面。目前在专网中各个地方逐渐增加了用户身份认证需
+
+求,使用内部协议栈,需要使用到这条指令,因此,请在代码流程上加上这条指令。
+
+联通卡默认用户名和密码是“card”和“card”。
+
+<cid>对应+CGDCONT 中的<cid>。
+
+<name>和<pwd>允许设置的最大字符串长度都是50
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+XGAUTH=<cid>,<auth>[,
+
+<name>,<pwd>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 测试 AT+XGAUTH=?
+
+<CR><LF>+XGAUTH: (list of supported <cid>),(value
+
+range of<auth>),(length of <name>),(length of <pwd>)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<cid> (PDP Context Identifier)一个数字参数,指定一个PDP 上下文定义
+
+<cid>对应+CGDCONT 中的<cid>。
+
+<auth> 鉴权类型,默认为1
+
+
+### 0:NONE
+
+
+### 1:PAP
+
+
+### 2:CHAP
+
+鉴权类型为非NONE 时,需带<name>和<pwd>参数
+
+<name> 用户名
+
+<pwd> 密码
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 39
+
+
+示例
+
+
+#### `AT+XGAUTH=1,1,”gsm”,”1234”`
+
+
+```
+OK
+```
+
+
+### 设置第一个 PDP认证
+
+
+### AT+XGAUTH=?
+
+
+
+### +XGAUTH: (1-7),(0-2),50,50
+
+```
+OK
+```
+
+查询参数值范围。
+
+
+#### `AT+xgauth=1,8,"",""`
+
+
+
+### ERROR
+
+设置 xgauth参数时 cid 非法
+
+
+### 4.22 AT+CGATT–设置 GPRS 附着和分离
+
+
+### 该指令用来查询、设置GPRS 附着和分离。掉电不保存。
+
+
+### 模组默认情况下,会主动进行GPRS 附着。
+
+
+### 进行PPP 连接之前要确保GPRS 是处于附着状态,AT 流程增加查询指令AT+CGATT?:
+
+
+### ⚫ 如果返回值是1,则可以直接进行PPP 连接;
+
+
+### ⚫ 如果返回值是0,则需进行手动附着,即AT+CGATT=1。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CGATT=<state><CR>
+
+
+### <CR><LF>GPRS DISCONNECTION<CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CGATT?<CR> <CR><LF>+CGATT: <state>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+CGATT=?<CR> <CR><LF>+CGATT: (value range of <state>)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<state> 取值范围(0~1)
+
+0:表示分离
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 40
+
+
+1:表示附着
+
+示例
+
+
+### AT+CGATT=1
+
+
+```
+OK
+```
+
+
+
+### GPRS附着成功。
+
+
+### AT+CGATT=0
+
+
+```
+OK
+```
+
+
+
+### GPRS分离成功。
+
+
+### AT+CGATT=0
+
+
+
+### GPRS DISCONNECTION
+
+
+```
+OK
+```
+
+
+### 在建立 PPP链接(AT+XIIC=1)后,使用该指令的返回值。
+
+
+### AT+CGATT=0
+
+
+
+### ERROR
+
+
+### 不插 SIM时,返回 ERROR。
+
+
+### AT+CGATT?
+
+
+
+### +CGATT: 0
+
+```
+OK
+```
+
+
+### 查询 GPRS状态。
+
+
+
+### AT+CGATT=?
+
+
+
+### +CGATT:(0-1)
+
+```
+OK
+```
+
+查询指令支持参数。
+
+
+
+### 4.23 ATE1/ATE0–打开&关闭回显
+
+
+### 打开(或关闭)模组AT指令回显功能。
+
+该模组默认回显功能为打开状态。
+
+该指令设置后掉电不保存。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 ATE[<value>]<CR> <CR><LF>OK<CR><LF>
+
+参数
+
+<value> 回显开关
+
+0 关闭回显(默认)
+
+1 打开回显
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 41
+
+
+
+### ATE 等同于ATE0。
+
+示例
+
+
+### ATE1
+
+
+```
+OK
+```
+
+
+#### `AT`
+
+```
+OK
+```
+
+
+### 打开模组 AT指令回显功能
+
+
+
+### 发送 AT,串口工具显示“AT”及“OK”
+
+
+
+### ATE0
+
+
+```
+OK
+```
+
+
+```
+OK
+```
+
+
+### 关闭模组 AT指令回显功能
+
+
+
+### 发送 AT,串口工具只显示“OK”
+
+
+
+### 4.24 ATD*99#–GPRS
+
+
+### 使用外部协议栈,进行GPRS 拨号连接。
+
+
+### 进行拨号之前一定要确保CREG 已经注册成功,并且设置了APN。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 ATD*99#<CR> <CR><LF>CONNECT
+
+参数
+
+无
+
+示例
+
+
+### ATD*99#
+
+
+
+### CONNECT
+
+开始拨号连接
+
+拨号成功的返回值
+
+
+### 4.25 AT+CESQ–扩展信号强度
+
+查询扩展信号强度。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 42
+
+
+⚫ 如果当前注册的不是2G 网络,<rxlev>,<ber>值为99;
+
+不支持3G,<rscp>,<ecno>值为255;
+
+如果当前注册的不是4G,<rsrq>,<rsrp>值为255;
+
+⚫ 不支持5G 网络,<ss_rsrq>,<ss_rsrp>,<ss_sinr>不显示;
+
+
+### 详细对应规则见3GPP TS 27.007 8.69。
+
+命令格式
+
+类型 命令。 响应格式
+
+
+### 执行 AT+CESQ<CR>
+
+<CR><LF>+CESQ: <rxlev>,<ber>,<rscp>,<ecno>,
+
+<rsrq>,<rsrp>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+CESQ=?<CR>
+
+<CR><LF>+CESQ: (list of supported <rxlev>s),(list of
+
+supported <ber>s),(list of supported <rscp>s),(list of
+
+supported <ecno>s),(list of supported <rsrq>s),(list of
+
+supported <rsrp>s))
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<rxlev> 信号接收功率
+
+<ber> 误码率
+
+<ecno> 下行载波干扰比率
+
+<rsrq> 参考信号质量
+
+<rsrp> 参考信号接收功率
+
+示例
+
+
+### AT+CESQ
+
+
+
+### +CESQ: 99,99,255,255,16,47
+
+```
+OK
+```
+
+查询信号强度
+
+
+### AT+CESQ=?
+
+
+
+### +CESQ:
+
+(0-63,99),(0-7,99),(255),(255),(0-34,255),(0-97,255)
+
+```
+OK
+```
+
+信号显示范围
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 43
+
+
+
+### 4.26 AT+NWDNS–域名解析
+
+
+### 内置协议栈拨号后,查询DNS 解析结果。
+
+
+### 先使用AT+XIIC 命令拨号成功后,才能执行该命令。
+
+域名填入不校验正确性,需保证填入内容的正确性。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+NWDNS=<hostname><CR>
+
+
+### <CR><LF><CR><LF>+NWDNS:
+
+<Sign>,<IP><CR><LF>
+
+<CR><LF>+NWDNS: <Sign>,<IP><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+NWDNS?<CR>
+
+
+### <CR><LF><CR><LF>+NWDNS:
+
+<Sign>,<IP><CR><LF>
+
+<CR><LF>+NWDNS: <Sign>,<IP><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<hostname> 字符串,域名,可不带双引号,最大长度128
+
+
+### <IP> 字符串,IP 地址
+
+<Sign> 字符串,IP 类型,IPV4,IPV6
+
+示例
+
+
+#### `AT+NWDNS="www.baidu.com"`
+
+
+
+### +NWDNS: IPV4,"183.2.172.185"
+
+
+
+### +NWDNS: IPV4,"183.2.172.42"
+
+
+```
++NWDNS: IPV6,"240e:ff:e020:9ae:0:ff:b014:8e8b"
+```
+
+
+```
++NWDNS: IPV6,"240e:ff:e020:966:0:ff:b042:f296"
+```
+
+
+```
+OK
+```
+
+拨号后,查询百度域名,返回结果。
+
+
+#### `AT+NWDNS="www.google.com"`
+
+
+
+### +NWDNS: IPV4,"31.13.94.37"
+
+查询 google域名,返回结果。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 44
+
+
+
+### +NWDNS: IPV6,"2001::1"
+
+
+```
+OK
+```
+
+
+#### `AT+NWDNS=”www.google.com”`
+
+
+
+### ERROR
+
+
+### 未拨号,查询 DNS解析结果,返回 ERROR
+
+
+### AT+NWDNS?
+
+
+
+### +NWDNS: IPV4,"199.59.148.229"
+
+
+
+### +NWDNS: IPV6,"2001::1"
+
+
+```
+OK
+```
+
+
+### 查询获取到的 IP
+
+
+### 4.27 AT+NWENPWRSAVE–休眠(Sleep)设置
+
+设置是否允许模组进入休眠(Sleep)模式。该命令设置掉电不保存。
+
+
+### 模组DTR 信号默认为低电平:
+
+
+### 发送允许进入休眠模式指令之后,且模组DTR 信号为低(或高)电平,模组内部各个部分的电路
+
+都允许进入休眠状态模组才能进入休眠。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+NWENPWRSAVE=<n>[,<usb>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+NWENPWRSAVE?<CR> <CR><LF>+NWENPWRSAVE: <n>[,<usb>]
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<n> 0:不允许进入休眠模式(默认)
+
+
+### 1:允许进入休眠模式(DTR 信号低电平进入休眠,高电平退出休眠)
+
+
+### 2:允许进入休眠模式(DTR 信号高电平进入休眠,低电平退出休眠)
+
+<usb>
+
+
+
+### 0:不允许USB 远程休眠唤醒(缺省)
+
+
+### 1:使能USB 远程休眠唤醒(USB 主机挂起USB 总线模组才能进入休眠,USB 主
+
+
+### 机恢复USB 总线会唤醒模组,有网络下行事件(数据、短信、电话)时模组会通过
+
+
+### USB 总线唤醒USB 主机)
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 45
+
+
+示例
+
+
+### AT+NWENPWRSAVE=1
+
+
+```
+OK
+```
+
+设置允许模组进入休眠模式
+
+
+### AT+NWENPWRSAVE?
+
+
+
+### +NWENPWRSAVE: 1
+
+```
+OK
+```
+
+查询模组休眠模式使能状态
+
+
+### 4.28 AT+NWPWROFF–模组关机指令
+
+
+### 模组关机指令。发送 AT+NWPWROFF 之前,需悬空或拉高模组 POWERKEY 管脚电平。返回
+
+
+### OK 后,若需重新开机,可拉低 POWERKEY 管脚电平。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 设置 AT+NWPWROFF=<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<n> 关机选项,数值形式,取值如下:
+
+0:快速关机
+
+1:正常流程关机
+
+示例
+
+
+### AT+NWPWROFF=1
+
+
+```
+OK
+```
+
+设置模组快速关机
+
+
+### 4.29 AT+NWRFTEST–模组强发强收指令(仅可用于测试)
+
+用于在测试模式下验证模组强发强收功能, 只能测试每个频段的中心频点的发射功率和接收功率精
+
+度。由于平台限制,强收强发测试精度均有一些误差。
+
+强发测试只能验证最大发射功率23db 和10db,其他值无法验证。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 46
+
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 测试 AT+NWRFTEST=?
+
+
+### <CR><LF>+NWRFTEST: "MODE",(0-1)
+
+
+### <CR><LF>+NWRFTEST:
+
+"RX",<rat>,<band>,<bw>,<channel>,<chain_idx>,<expected_rxagc
+
+>
+
+
+### <CR><LF>+NWRFTEST:
+
+"TX",<rat>,<band>,<bw>,<channel>,<tx_enable>,<tx_power>[,<lte_
+
+start_rb>,<lte_num_rb>,<waveform>]<CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+设置
+
+
+### AT+NWRFTEST=“MO
+
+DE”, [<rftest_mode>]
+
+查询rftest 模式
+
+<CR><LF>+NWRFTEST: <rftest_mode><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+设置rftest 模式,进入测试之前请先将rftest_mode 设置为1,测试完
+
+毕之后请将rftest_mode 设置为0
+
+
+### <CR><LF>OK<CR><LF>
+
+或者
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### AT+NWRFTEST=“RX”,
+
+<rat>,<band>,<bw>,<c
+
+hannel>,<chain_idx>,<
+
+expected_rxagc>
+
+强收测试
+
+
+### <CR><LF>OK<CR><LF>
+
+或者
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### AT+NWRFTEST=“TX”,
+
+<rat>,<band>,<bw>,<c
+
+hannel>,<tx_enable>,<
+
+tx_power>[,<lte_start_r
+
+b>,<lte_num_rb>,<wav
+
+eform>]
+
+强发测试
+
+
+### <CR><LF>OK<CR><LF>
+
+或者
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<rftest_mode> 0:退出强发强收测试模式
+
+1:进入强发强收测试模式
+
+<rat> 1:LTE 当前仅支持rat 为LTE 的测试
+
+<band> 频段指示
+
+1:LTE band 1
+
+2:LTE band 2
+
+<bw> 带宽,平台限制,当前仅支持bw 传入为0
+
+<channel> 频点信息(平台限制,当前仅支持每个频段的中心频点,默认值0 即表示中心
+
+频点),各频段中心频点信息如下:
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 47
+
+
+LTE Band 1:上行频点18300 下行频点300
+
+LTE Band 2:上行频点18900 下行频点900
+
+LTE Band 3:上行频点19500 下行频点1575
+
+LTE Band 4:上行频点20175 下行频点2175
+
+LTE Band 5:上行频点20525 下行频点2525
+
+LTE Band 6:上行频点20700 下行频点2700
+
+LTE Band 7:上行频点21100 下行频点3100
+
+LTE Band 8:上行频点12625 下行频点3625
+
+LTE Band 20:上行频点24300 下行频点6300
+
+LTE Band 28:上行频点27435 下行频点9435
+
+LTE Band 34:上行频点36275 下行频点36275
+
+LTE Band 38:上行频点38000 下行频点38000
+
+LTE Band 39:上行频点38450 下行频点38450
+
+LTE Band 40:上行频点39150 下行频点39150
+
+LTE Band 41:上行频点40620 下行频点40620
+
+LTE Band 66:上行频点59250 下行频点59350
+
+<chain_idx> 不适用,直接填入默认值0
+
+<expected_rxagc> 预期接收功率,为负值
+
+<tx_enable>, 强发测试设置为1,强收测试设置为0
+
+<tx_power> 发射功率,平台限制,当前仅支持传入23 和10,分别表示最大发射功率23db
+
+和发射功率10db
+
+<lte_start_rb> 不适用,直接填入默认值0
+
+<lte_num_rb> 不适用,直接填入默认值0
+
+<waveform> 不适用,直接填入默认值0
+
+示例
+
+
+### AT+NWRFTEST=?
+
+
+
+### +NWRFTEST: "MODE",(0-1)
+
+
+### +NWRFTEST:
+
+"RX",<rat>,<band>,<bw>,<channel>,<chain_idx>,<exp
+
+ected_rxagc>
+
+
+### +NWRFTEST:
+
+"TX",<rat>,<band>,<bw>,<channel>,<tx_enable>,<tx_
+
+power>[,<lte_start_rb>,<lte_num_rb>,<waveform>]
+
+
+```
+OK
+```
+
+测试指令
+
+
+### AT+NWRFTEST="MODE"
+
+
+
+### +NWRFTEST: 0
+
+```
+OK
+```
+
+查询模组当前是否处于测试模式
+
+
+### AT+NWRFTEST="MODE",1
+
+
+```
+OK
+```
+
+设置模组进入测试模式
+
+
+#### `AT+NWRFTEST="RX",1,1,0,0,0,-60 LTE Band 1 上进行强收测试,预期接收功率为-60db`
+
+
+
+### N706A AT 命令手册
+
+
+### 第 4 章通用 AT 指令
+
+
+深圳市有方科技股份有限公司版权所有 48
+
+
+```
+OK
+```
+
+
+### AT+NWRFTEST="RX",5,1,0,0,0,-60
+
+
+
+### ERROR
+
+入参错误,返回 error
+
+
+### 4.30 AT+NSTGETRSSI–获取强收模式下模组的接收功率
+
+(仅可用于测试)
+
+用于在测试模式下验证模组的接收功率,强收测试精度会有一些误差。
+
+命令格式
+
+类型 命令 响应格式
+
+查询 AT+NSTGETRSSI? <CR><LF>+NSTGETRSSI: <value><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<value> 接收功率
+
+示例
+
+
+### AT+NSTGETRSSI?
+
+
+
+### +NSTGETRSSI: -44
+
+
+```
+OK
+```
+
+查询接收功率的值
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 49
+
+
+5 短消息服务指令
+
+
+### 5.1 AT+CSMS–选择短信服务
+
+
+### 用于支持的短消息包括:发送(SMS-MO)、接收(SMS-MT)、小区广播(SMS-CB)。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CSMS=<service><CR>
+
+<CR><LF>+CSMS: <mt>,<mo>,<bm>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CSMS?<CR> <CR><LF>+CSMS: <service>,<mt>,<mo>,<bm>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+CSMS=?<CR> <CR><LF>+CSMS: (list of supported <service>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<service> 0:GSM03.40 and GSM03.41;SMS 相关AT 指令支持 GSM07.05 Phase 2
+
+1:GSM03.40 and GSM03.41;SMS 相关AT 指令支持 GSM07.05 Phase 2+
+
+<mt>,<mo>,<bm> 0:不支持
+
+1:支持
+
+
+默认值为0,1,1,1。
+
+示例
+
+
+### AT+CSMS=1
+
+
+
+### +CSMS: 1,1,1
+
+```
+OK
+```
+
+设置选择短信服务为 1
+
+
+### AT+CSMS? 查询指令当前设置的参数值
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 50
+
+
+
+### +CSMS: 1,1,1,1
+
+```
+OK
+```
+
+
+### AT+CSMS=?
+
+
+
+### +CSMS: (0-1)
+
+```
+OK
+```
+
+查询短信服务取值范围
+
+
+### 5.2 AT+CPMS–首选短信存储器
+
+用于首选短信存储器。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CPMS=<mem1>[,<mem2>[,
+
+<mem3>]]<CR>
+
+<CR><LF>+CPMS: <used1>,<total1>,<used2>,
+
+<total2>,<used3>,<total3>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+CPMS?<CR>
+
+
+### <CR><LF>+CPMS:
+
+<mem1>,<used1>,<total1>,<mem2>,<used2>,<total2>,
+
+<mem3>,<used3>,<total3>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+CPMS=?<CR>
+
+<CR><LF>+CPMS: (list of supported <mem1>s),(list of
+
+supported <mem2>s),(list of supported <mem3>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<mem1>
+
+<mem2>
+
+<mem3>
+
+
+### "SM":
+
+
+### "ME":
+
+
+### "MT":
+
+
+### 读取和删除 SMS 时使用的存储器,字符串类型
+
+
+### 存储和发送 SMS 时使用的存储器
+
+
+### 若没有建立到 TE 的路由,则将接收的 SMS 存储在该存储器内
+
+
+### SIM 卡 SMS 存储器
+
+
+### ME SMS 存储器
+
+
+### SIM 卡和 ME SMS 存储器
+
+<mem1> 字符串类型, 例如:"SM", "ME"
+
+"SM":SIM only
+
+"ME":ME only
+
+<used> 已使用数目。
+
+<total> 存储器总容量数目。
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 51
+
+
+
+### 默认接收到的短信储存位置为SM。
+
+示例
+
+
+### AT+CPMS="SM"
+
+
+
+### +CPMS: 0, 50, 0, 50, 0, 50
+
+```
+OK
+```
+
+
+### 设置短信存储器为“SM”,即存储在 SIM中
+
+
+### AT+CPMS?
+
+
+
+### +CPMS: "SM", 0, 50, "SM", 0, 50,"SM", 0, 50
+
+```
+OK
+```
+
+查询当前使用的短信存储器容量
+
+
+### AT+CPMS=?
+
+
+
+### +CPMS: ("SM","ME"),("SM","ME"),("SM","ME")
+
+```
+OK
+```
+
+查询可设置的存储器
+
+
+### 5.3 AT+CMGF–设置短消息模式
+
+设置短信的输入模式。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CMGF=[<mode>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CMGF?<CR> <CR><LF>+CMGF: <mode>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+CMGF=?<CR> <CR><LF>+CMGF: (list of supported <mode>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<mode> 0:PDU 模式(默认)
+
+1:文本模式
+
+示例
+
+
+### AT+CMGF=1 设置短信为文本模式
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 52
+
+
+```
+OK
+```
+
+
+### AT+CMGF?
+
+
+
+### +CMGF: 1
+
+```
+OK
+```
+
+查询当前短信输入模式
+
+
+### AT+CMGF=?
+
+
+
+### +CMGF: (0-1)
+
+```
+OK
+```
+
+查询设置短信模式的取值范围
+
+
+### 5.4 AT+CSCS–设置 TE 字符集
+
+
+### 设置TE 字符集格式。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CSCS[=<chest>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CSCS?<CR> <CR><LF>+CSCS: <chset>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+CSCS=?<CR> <CR><LF>+CSCS: (list of supported <chset>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<chset> "GSM":GSM 默认字母表(GSM03.38.6.2.1)
+
+"IRA":国际参考字母表(international reference alphabet)(ITU-T T.50)
+
+"UCS2":16-bit universal multiple-octet coded character set (USO/IEC10646)。UCS2
+
+字符串被转换成一个十六进制数(0x0000~0xFFFF),只有在相应语句中的字符串才
+
+
+### 用UCS2 编码,其余的命令和响应仍旧是IRA 字母表格式的。
+
+
+### "PCCP936":等同GBK 编码格式
+
+"IRA":国际参考字母表(international reference alphabet)(ITU-T T.50)
+
+"UTF-8":针对Unicode 的一种可变长度字符编码
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 53
+
+
+示例
+
+
+### AT+CSCS="GSM"
+
+
+```
+OK
+```
+
+
+### 设置“IRA”字符集
+
+
+### AT+CSCS?
+
+
+
+### +CSCS: "PCCP936"
+
+```
+OK
+```
+
+查询当前字符集格式
+
+
+### AT+CSCS=?
+
+
+
+### +CSCS: ("IRA","UCS2","HEX","GSM")
+
+```
+OK
+```
+
+查询模组支持的字符集格式,
+
+返回字符集格式的列表
+
+
+### 5.5 AT+CNMI–设置短信指示格式
+
+设置模组从网络接收到短信息后如何通知用户。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CNMI=[<mode>[,<mt>[,
+
+<bm>[,<ds>[,<bfr>]]]]]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CNMI?<CR> <CR><LF>+CNMI:[<mode>[,<mt>[,<bm>[,<ds>[,<bfr>]]]]]
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+CNMI=?<CR>
+
+<CR><LF>+CNMI: (list of supported <mode>s),(list of
+
+supported <mt>s),(list of supported <bm>s),(list of supported
+
+<ds>s),(list of supported <bfr>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<mode> 设置收到短信后向用户发送的指示方式。
+
+
+### 0:短信指示代码在模组中缓存,如果TA 已满,代码可存贮在其它地方或者将最旧的代码
+
+丢弃,并用最新接收到的代码去替代。
+
+1:当On-line State 时,舍弃保存的短信指示代码并拒绝新的指示代码,其它情况下,直
+
+接将代码显示在终端设备上。
+
+2:当模组在On-line State 时,短信指示代码在模组中缓存,当连接释放后,将短信指示
+
+代码通过串口输出,在其他state 下,直接将代码显示在终端设备上。
+
+3:当模组在On-line State 时,短信指示代码和其它数据一起传输,代码显示在终端设备
+
+上。
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 54
+
+
+<mt> 设置新短信指示代码的格式,默认值为0
+
+0:不向终端发送新短信指示代码。
+
+1:新短信指示代码格式为+CMTI: "MT",<index>,短信内容存贮而不直接显示。
+
+2:新短信指示代码格式为+CMT: <oa>,<scts>,<tooa>,<lang>,<encod>,<priority>
+
+[,<cbn>],<length><CR><LF><CR><LF><data>(文本模式), 短信内容直接显示而不存贮。
+
+3:使用<mt>=2 所定义的主动上报代码直接将短信指示代码传送到终端设备,其它模式
+
+的信息指示代码和<mt>=1 相同。
+
+<bm> 设置新小区广播指示代码的格式,默认值为1。
+
+0:不发送新小区广播的指示信息,小区广播也不会存贮
+
+2:新小区广播指示代码格式为+CBM: <oa>,[<alpha>,]<scts>[,<tooa>,<length>]
+
+<CR><LF><data>(文本模式),小区广播内容直接显示而不存贮。
+
+<ds> 短信发送的状态报告,默认值为1。
+
+0:无短信发送状态报告
+
+1:短信发送状态报告代码格式为+CDS: <fo>,<mr>,[<ra>],[<tora>],<scts>,
+
+<dt>,<st>(文本模式)
+
+<bfr> 默认值为 0。
+
+0:当<mode>设为 1、2 时,存贮在 TA 中的该指令定义的代码将会被发送到TE,模组
+
+
+### 在传送代码之前,会先返回"OK"。
+
+1:当<mode>设为1、2 时,存贮在TA 中的该指令定义的代码将会被清除。
+
+
+⚫ 默认值为0, 0, 0, 0, 0;
+
+
+### ⚫ 建议设置为+CNMI: 2,1,0,0,0(新短信内容存贮SIM 卡而不直接显示)或+CNMI: 2,2,0,0,0(新短信
+
+
+### 内容直接显示而不存贮在SIM 卡);
+
+⚫ 短信根据存储位置分为class0~3 四类
+
+⚫ Class 0:只显示,不储存
+
+⚫ Class 1:储存在ME 内存中
+
+⚫ Class 2:储存在SIM 卡中
+
+Class 3:直接传输到TE
+
+示例
+
+
+### AT+CNMI=1,1,0,0,0
+
+
+```
+OK
+```
+
+设置收到短信后向用户发送的指示方式,新短信指示代码的格式,新小区
+
+广播指示代码的格式,短信发送的状态报告
+
+
+### AT+CNMI=?
+
+
+
+### +CNMI: (0-3),(0-3),(0-3),(0-1),(0-1)
+
+```
+OK
+```
+
+查询指令参数可设置的范围
+
+
+### AT+CNMI?
+
+查询指令当前设置参数值
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 55
+
+
+
+### +CNMI:1, 1, 0, 0, 0
+
+```
+OK
+```
+
+
+### 5.6 AT+CMGR–读短消息
+
+
+### 读取当前存储器中的短消息(需预先通过AT+CPMS指令设定当前存储器)。
+
+如果接收到的短信状态是未读的,执行该指令后,短信存储状态就变成已读。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CMGR=<index><CR>
+
+
+### TEXT 模式 (+CMGF=1)
+
+
+### ⚫ 命令执行成功并且命令属于SMS-DELIVER:
+
+
+### <CR><LF>+CMGR:
+
+<stat>,<oa>,[<alpha>],<scts>[,<tooa>,<fo>,
+
+<pid>,<dcs>,<sca>,<tosca>,<length>]<CR><LF><dat
+
+a>
+
+
+### ⚫ 命令执行成功并且命令属于SMS-SUBMIT:
+
+
+### <CR><LF>+CMGR:
+
+<stat>,<da>,[<alpha>][,<toda>,<fo>,<pid>,
+
+<dcs>,[<vp>],<sca>,<tosca>,<length>]<CR><LF><dat
+
+a>
+
+
+### ⚫ 命令执行成功并且命令属于SMS-STATUS-REPORT:
+
+
+### <CR><LF>+CMGR:
+
+<stat>,<fo>,<mr>,[<ra>],[<tora>],<scts>,<dt>, <st>
+
+
+### ⚫ 命令执行成功并且命令属于SMS-COMMAND:
+
+
+### <CR><LF>+CMGR:
+
+<stat>,<fo>,<ct>[,<pid>,[<mn>],[<da>],
+
+[<toda>],<length><CR><LF><cdata>]
+
+
+### ⚫ 命令执行成功并且命令属于 CBM-STORAGE :
+
+
+### <CR><LF>+CMGR:
+
+<stat>,<sn>,<mid>,<dcs>,<page>,<pages><CR><LF>
+
+<data>
+
+
+### PDU 模式 (+CMGF=0) 并且命令执行成功:
+
+
+### <CR><LF>+CMGR:
+
+<stat>,[<alpha>],<length><CR><LF><pdu>
+
+⚫ 命令执行失败:
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 56
+
+
+参数
+
+<index> 短信在<mem1>的索引号,CMGR 读取的是<mem1>的短信
+
+<stat> ⚫ TEXT mode
+
+
+### “REC UNREAD”已接收未读取的消息
+
+
+### “REC READ”已接收已读取的消息
+
+
+### “STO UNSENT”已存储未发送的消息
+
+
+### “STO SENT”已存储已发送的消息
+
+⚫ PDU mode
+
+0 已接收未读取的消息
+
+1 已接收已读取的消息
+
+2 已存储未发送的消息
+
+3 已存储已发送的消息
+
+<alpha> 以字符型的数字来表示。
+
+<length> 给定的TP 层数据单元的八位位组代码数目(不包含服务中心地址的八位位组)。
+
+<pdu> PDU 数据。
+
+示例
+
+
+### AT+CMGR=1
+
+
+
+### +CMGR: "REC READ","+8618777397945",,"2024/09/13,16: 37: 59+32"
+
+
+### 050003140401E27778592EA7E7EBE9373C3C279BCF68F59AADC7FED62779BA596D7EBA
+
+
+### EB5B91EBD16A5D46C35F98406A744E311A95C32594DA75688B50EADACA6D689150EADF
+
+
+### 1B2BC5E579AD575E5B5582D5EABD5624C36A3D56C375C0E1693CD6835DB0D9783A15C9
+
+
+### 1D2E06BDAA558AC1F60C52B937CADCD2B747AA9021BDEC627E8E9441BD42655DEF446
+
+```
+OK
+```
+
+读索引号为 1的短信内容
+
+
+
+### AT+CMGF=0
+
+
+```
+OK
+```
+
+
+### AT+CSCS="UCS2"
+
+
+```
+OK
+```
+
+
+
+### +CMTI: "SM",39
+
+
+### AT+CMGR=39
+
+
+
+### +CMGR: 0,,23
+
+
+### 0891683110501905F0240BA18177377949F50000413062312503230468341A0D
+
+```
+OK
+```
+
+
+### 设置 PDU模式
+
+
+来短信
+
+读短信
+
+
+
+### AT+CMGF=1
+
+
+```
+OK
+```
+
+
+### AT+CSCS="GSM"
+
+
+```
+OK
+```
+
+
+
+### +CMTI: "SM",40
+
+
+### AT+CMGR=40
+
+
+设置文本模式
+
+
+来短信
+
+读短信
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 57
+
+
+
+### +CMGR: "REC UNREAD","+8618777397945",,"2014/03/26,13: 57: 58+32"
+
+hello world
+
+```
+OK
+```
+
+
+### 5.7 AT+CMGL–短信列表
+
+
+### 读取某一类存储的短信,短信会被从+CPMS 指令选取的当前的存储器中读出来。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CMGL[=<stat>]<CR>
+
+
+### TEXT 模式 (+CMGF=1)
+
+⚫ 命令执行成功且命令属于 SMS-SUBMITs 或者
+
+SMS-DELIVERs:
+
+
+### <CR><LF>+CMGL:
+
+<index>,<stat>,<oa/da>,[<alpha>],[<scts>][,<tooa/toda>,<le
+
+ngth>]<CR><LF>
+
+<data>[<CR><LF>+CMGL:
+
+<index>,<stat>,<da/oa>,[<alpha>],[<scts>][,<tooa/toda>,<le
+
+ngth>]<CR><LF><data>[...]]
+
+⚫ 命令执行成功且命令属于SMS-STATUS-REPORTs:
+
+
+### <CR><LF>+CMGL:
+
+<index>,<stat>,<fo>,<mr>,[<ra>],[<tora>],<scts>,<dt>,<st>[<
+
+
+### CR><LF>+CMGL:
+
+<index>,<stat>,<fo>,<mr>,[<ra>],[<tora>],<scts>,<dt>,<st>[..
+
+.]]
+
+⚫ 命令执行成功且命令属于 SMS-COMMANDs:
+
+
+### <CR><LF>+CMGL:
+
+<index>,<stat>,<fo>,<ct>[<CR><LF>+CMGL:
+
+index>,<stat>,<fo>,<ct>[...]]
+
+⚫ 命令执行成功且命令属于 CBM storage:
+
+
+### <CR><LF>+CMGL:
+
+<index>,<stat>,<sn>,<mid>,<page>,<pages><CR><LF><da
+
+ta>[<CR><LF>+CMGL:
+
+<index>,<stat>,<sn>,<mid>,<page>,<pages><CR><LF><da
+
+ta>[...]]
+
+
+### PDU 模式 (+CMGF=0) 并且命令执行成功:
+
+
+### <CR><LF>+CMGL:
+
+<index>,<stat>,[<alpha>],<length><CR><LF><pdu>[<CR><
+
+
+### LF>+CMGL:
+
+<index>,<stat>,[<alpha>],<length><CR><LF><pdu>[...]]
+
+命令执行失败:
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 58
+
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 测试 AT+CMGL=?<CR>
+
+
+### TEXT 模式 (+CMGF=1) 并且命令执行成功:
+
+<CR><LF>+CMGL: list of supported <stat>s
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### PDU 模式 (+CMGF=0) 并且命令执行成功:
+
+<CR><LF>+CMGL: (list of supported <stat>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+
+参数
+
+<stat> 字符串类型或者数字类型
+
+
+### 当设置AT+CMGF=1 时:
+
+
+### "REC UNREAD":接收到的未读的短信
+
+
+### "REC READ":接收到的已读的短信
+
+
+### "STO UNSENT":存储的未发送的短信
+
+
+### "STO SENT":存储的已发送的短信
+
+
+### "ALL":所有短信
+
+
+### 当设置AT+CMGF=0 时:
+
+0:接收到的未读的短信
+
+1:接收到的已读的短信
+
+2:存储的未发送的短信
+
+3:存储的已发送的短信
+
+4:所有短信
+
+示例
+
+
+### AT+CMGL="ALL"
+
+
+
+### +CMGL: 1,"REC READ","+8615719556937",,"2011/09/13,16: 37: 59+32"
+
+
+### 050003140401E27778592EA7E7EBE9373C3C279BCF68F59AADC78FED62779BA596D7EBAEB5B91EBD16A5D46C35F98406A7
+
+
+### 44E311A95C32594DA75688B50EADACA6D689150EADF1B2BC5E579AD575E5B5582D5EABD5624C36A3D56C375C0E1693CD68
+
+
+### 35DB0D9783A15C91D2E06BDAA558AC1F60C52B937CADCD2B747AA9021BDEC627E8E9441BD42655DEF446
+
+
+### +CMGL: 14,"STO SENT","+8615719556937",,
+
+
+### 050003010401E27778592EA7E7EBE9373C3C279BCF68F59AADC78FED62779BA596D7EBAEB5B91EBD16A5D46C35F98406A7
+
+
+### 44E311A95C32594DA75688B50EADACA6D689150EADF1B2BC5E579AD575E5B5582D5EABD5624C36A3D56C375C0E1693CD68
+
+
+### 35DB0D9783A15C91D2E06BDAA558AC1F60C52B937CADCD2B747AA9021BDEC627E8E9441BD42655DEF446
+
+
+### +CMGL: 44,"REC UNREAD","+8615719556937","","2011/09/30,03: 00: 55+32"
+
+
+### 5E7F4E1C79FB52A863D0919260A8003A4E2D536B75286237003100350037003100390035003500360039003300377ED960
+
+
+### A86765753500326B21002C6700540E4E006B21572800320039002F00300039002000320030003A00340038002C60A853EF
+
+
+### 6309901A8BDD952E621690099879952E76F463A556DE62E8
+
+```
+OK
+```
+
+
+### AT+CMGL=?
+
+
+
+### +CMGL: "REC UNREAD","REC READ","STO UNSENT","STO SENT","ALL"
+
+Text格式(AT+CMGF=1)下查询
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 59
+
+
+```
+OK
+```
+
+
+### AT+CMGL=?
+
+
+
+### +CMGL: (0-4)
+
+```
+OK
+```
+
+
+### PDU格式(AT+CMGF=0)下查询
+
+
+
+### AT+CMGL=ALL
+
+
+
+### ERROR
+
+指令参数格式错误,缺少双引号
+
+
+### AT+CMGF=1
+
+
+```
+OK
+```
+
+
+### AT+CMGL=4
+
+
+
+### ERROR
+
+
+
+### 应该设置 AT+CMGF=0
+
+
+### AT+CMGF=0
+
+
+```
+OK
+```
+
+
+### AT+CMGL="ALL"
+
+
+
+### ERROR
+
+
+
+### 应该设置 AT+CMGF=1
+
+
+### 5.8 AT+CMGS–发送短消息
+
+将短消息从模组发送到网络,短消息发送成功后网络返回参考值<mr>给模组。
+
+命令格式
+
+类型 命令 响应格式
+
+执行
+
+文本模式指令语法
+
+
+#### `AT+CMGS=<da>[,<toda>]<CR>te`
+
+xt is entered<Ctrl+Z/ESC>
+
+
+### PDU 模式指令语法
+
+
+#### `AT+CMGS=<length><CR>PDU is`
+
+given<Ctrl+Z/ESC>
+
+文本模式下发送成功:
+
+<CR><LF>+CMGS: <mr>[,<scts>]
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### PDU 模式下发送成功:
+
+<CR><LF>+CMGS: <mr>[,<ackpdu>]
+
+
+### <CR><LF>OK<CR><LF>
+
+命令执行失败:
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<da> 文本模式下短信发送目的号码
+
+<text> 文本模式下短信内容
+
+<length> PDU 模式下短信内容的字节长度
+
+<mr> 存储位置
+
+
+### <CR> 结束符
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 60
+
+
+<Ctrl+Z> 表示输入消息体的结束,即示例中的符号“
+
+”
+
+
+### <ESC> 表示放弃输入消息体
+
+<scts> 服务中心时间戳
+
+<ackpdu> GPP 23.040 RP-User-Data element of RP-ACK PDU
+
+示例
+
+
+### AT+CMGS="66358"
+
+
+> This is the text
+
+
+
+### +CMGS: 171
+
+```
+OK
+```
+
+Text格式(+CMGF=1)
+
+“
+
+”符号,即用键盘输入 Ctrl+Z,下同
+
+
+
+### AT+CMGS="15889758493"
+
+
+> This is the text
+
+
+
+### ERROR
+
+
+### 有可能未进行设置 AT+CMGF=1;“
+
+”符号代表
+
+Ctrl+Z
+
+
+
+### AT+CMGS=33
+
+
+
+### >0891683108705505F001000B815118784271F20008146DF157335E025
+
+
+### B9D5B89533A59276D6A80545EFA
+
+
+
+### +CMGS: 119
+
+```
+OK
+```
+
+
+### PDU 格式(+CMGF=0)
+
+
+
+### 5.9 AT+CMGW–写短消息
+
+往存储器中写入短消息,正确存储后返回位置信息<index>。
+
+命令格式
+
+类型 命令 响应格式
+
+执行
+
+⚫ 文本模式指令语法:
+
+
+#### `AT+CMGW[=<oa/da>[,<tooa/toda>[,<stat`
+
+>]]]<CR>text is entered<Ctrl+Z/ESC>
+
+
+### ⚫ PDU 模式指令语法:
+
+
+#### `AT+CMGW=<length>[,<stat>]<CR>PDU`
+
+is given<Ctrl+Z/ESC>
+
+<CR><LF>+CMGW: <index>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+<CR><LF>+CME ERROR: <err>
+
+
+### <CR><LF>
+
+参数
+
+<da> 文本模式下短信发送目的号码
+
+<text> 文本模式下短信内容
+
+<length> PDU 模式下短信内容的字节长度
+
+<index> 位置信息
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 61
+
+
+
+### <CR> 结束符
+
+<Ctrl+Z> 表示输入消息体的结束,即示例中的符号“
+
+”
+
+
+### <ESC> 表示放弃输入消息体
+
+
+
+### 若使用串口调试工具发送PDU 短信,请在AT+CMGS 命令后手动敲回车符,或者以十六进制发送
+
+
+### <CR>。
+
+示例
+
+
+### AT+CMGW="091137880"
+
+
+>This is the text<Ctrl+Z>
+
+
+### +CMGW: 15
+
+```
+OK
+```
+
+Text模式(+CMGF=1)
+
+
+
+### AT+CMGW=091137880
+
+
+
+### ERROR
+
+Text模式的号码必须要加双引号
+
+
+
+### AT+CMGW=31
+
+
+
+### >0891683108705505F001000B813124248536F300081200400026002A535A5
+
+3D153A653C1532052C7<Ctrl+Z>
+
+
+### +CMGW: 1
+
+```
+OK
+```
+
+
+### PDU 模式 (+CMGF=0)
+
+
+
+### 5.10 AT+CMSS–发送已保存的短消息
+
+发送存储器中<index>指定位置的短消息 (SMS-SUBMIT) , 短消息发送成功后网络返回参考值<mr>
+
+给终端。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CMSS=<index>[,<da>[,<toda>]]<CR>
+
+文本模式下发送成功:
+
+<CR><LF>+CMSS: <mr>[,<scts>]
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### PDU 模式下发送成功:
+
+<CR><LF>+CMSS: <mr>[,<ackpdu>]
+
+
+### <CR><LF>OK<CR><LF>
+
+命令执行失败:
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 62
+
+
+参数
+
+<index> 存储器中短信序号
+
+<da> 文本模式下短信发送目的号码
+
+<toda> type of address
+
+<mr> 存储位置
+
+<scts> 服务中心时间戳
+
+<ackpdu> 3GPP 23.040 RP-User-Data element of RP-ACK PDU
+
+示例
+
+
+### AT+CMSS=2
+
+
+```
++CMSS: <mr>
+```
+
+```
+OK
+```
+
+发送存储在记录 2中的短信
+
+
+### AT+CMSS=2
+
+
+
+### ERROR
+
+存储器中无记录 2的短信或者是存储在记录 2中的短信号码错误
+
+
+### 5.11 AT+CMGD–删除短消息
+
+从当前存储器中删除短消息。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CMGD=<index>[,<delflag>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 测试 AT+CMGD=?<CR>
+
+<CR><LF>+CMGD: (list of supported
+
+<index>s, list of supported <delflag>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<index> 存贮的短消息的记录号
+
+<delflag> 整型值
+
+0:删除指定记录号的短信
+
+1:删除所有已读短信
+
+2:删除所有已读和已发送的短信
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 63
+
+
+3:删除所有已读、已发送和未发送的短信
+
+4:删除所有短信
+
+
+如果<delflag>参数已经设定, <index>参数会被忽略。
+
+示例
+
+
+### AT+CMGD=0,3
+
+
+```
+OK
+```
+
+删除所有已读、已发送和未发送的短信
+
+删除成功
+
+
+### AT+CMGD=?
+
+
+
+### +CMGD:(1,2,3,4),(0-4)
+
+```
+OK
+```
+
+查询指令支持的参数值
+
+注释:index示例为 1,2,3,4 实际以可删除的短信列表为准
+
+
+### AT+CMGD=5
+
+
+
+### ERROR
+
+存储记录 5中没有短信可删除
+
+
+### 5.12 AT+CSCA–短信中心号码
+
+
+### 设置短信中心号码。CDMA 模式下,不支持这条指令。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CSCA=<sca>[,<tosca>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CSCA?<CR> <CR><LF>+CSCA: <sca>,<tosca>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<sca> 短信中心号码,字符串类型。
+
+<tosca> 短信中心号码格式。129 表示普通号码类型,145 表示国际号码类型
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 64
+
+
+示例
+
+
+### AT+CSCA="+8613800755500",145
+
+
+```
+OK
+```
+
+设置短信中心号码,格式为国际号码类型
+
+
+### AT+CSCA?
+
+
+
+### +CSCA: "+8613800755500",145
+
+```
+OK
+```
+
+查询短信中心号码
+
+
+### 5.13 AT+CSMP–设置文本模式参数
+
+
+### 文本模式下,选择需要的附加参数取值;设置从 SMSC 接收到该消息时算起的有效期或定义有效
+
+期终止的绝对时间。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CSMP[=<fo>[,<vp>[,<pid>[,<dcs>]]]]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+CSMP?<CR>
+
+
+### <CR><LF>+CSMP:
+
+<fo>,<vp>,<pid>,<dcs>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<fo> <fo>:取决于该命令或结果码:GSM 03.40 SMS-DELIVER 的前8 位;
+
+
+### SMS-SUBMIT(缺省值:17);或采用整数型的SMS-COMMAND(缺省值:2)
+
+<vp> value validity period(有效期)
+
+0-143 (vp+1)*5mins,最大为12 小时
+
+144-167 12hours +((vp–143)*30mins),最大为24 小时
+
+168-196 (vp–166)*1day
+
+197-255 (vp–192)*1week
+
+
+<pid> 整数型的TP-协议-标识(缺省值:0)
+
+<dcs> 整数型的小区广播数据编码方案(缺省值:0)
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 65
+
+
+默认值为17,167,0,0。
+
+示例
+
+
+### AT+CSMP=17,167,0,0
+
+
+```
+OK
+```
+
+设置文本模式参数为 17,167,0,0;
+
+表示没有状态报告回报,信息有效期时间为 24小时,只能发送文本格式短信
+
+
+### AT+CSMP?
+
+
+
+### +CSMP: 17,167,0,0
+
+```
+OK
+```
+
+查询当前文本模式参数设置
+
+
+### 5.14 AT+CSDH–显示文本模式参数
+
+设置是否在文本模式下的结果码中显示详细的头信息。该指令在短信文本模式下有效,需发送
+
+
+### AT+CMGF=1设置成文本模式。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CSDH[=<show>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CSDH?<CR> <CR><LF>+CSDH: <show>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+CSDH=?<CR> <CR><LF>+CSDH: (list of supported <show>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<show> 0:不显示(默认值)
+
+1:显示
+
+示例
+
+
+### AT+CSDH=0
+
+
+```
+OK
+```
+
+
+### AT+CMGR=0
+
+
+设置不显示详细的头信息
+
+读取第 0条短信
+
+
+
+### N706A AT 命令手册
+
+第 5 章短消息服务指令
+
+
+深圳市有方科技股份有限公司版权所有 66
+
+
+
+### +CMGR: "RECREAD","13510895077",,"15/07/23,20: 58: 28
+
+```
++32"
+```
+
+abc
+
+```
+OK
+```
+
+
+### AT+CSDH=1
+
+
+```
+OK
+```
+
+
+### AT+CMGR=0
+
+
+
+### +CMGR: "RECREAD","13510895077",,"15/07/23,20: 58: 28
+
+```
++32",161,36,0,0,"+8613010888500",145,3
+```
+
+abc
+
+```
+OK
+```
+
+设置显示详细的头信息
+
+读取第 0条短信
+
+
+### AT+CSDH?
+
+
+
+### +CSDH: 0
+
+```
+OK
+```
+
+查询指令当前设置参数
+
+
+### AT+CSDH=?
+
+
+
+### +CSDH: (0-1)
+
+```
+OK
+```
+
+查询当前指令取值范围
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 67
+
+
+
+## 6 TCP/UDP 客户端指令
+
+
+### 6.1 AT+NETAPN–设置网络 APN
+
+
+### 设置网络APN。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+NETAPN="APN","username","
+
+password"<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+NETAPN?<CR>
+
+
+### <CR><LF>+NETAPN:
+
+"APN","username","password"
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+
+### APN GPRS 网络接入点
+
+username GPRS 用户名
+
+password GPRS 密码
+
+示例
+
+
+### AT+NETAPN="CMNET","",""
+
+
+```
+OK
+```
+
+
+### 设置 GPRS网络接入点为“CMNET”,用户名、密码为空
+
+
+### AT+NETAPN=CMNET,,
+
+
+
+### ERROR
+
+参数要用双引号
+
+
+### AT+NETAPN?
+
+
+
+### +NETAPN: "","",""
+
+```
+OK
+```
+
+
+### 查询当前设置的 APN参数
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 68
+
+
+
+### 6.2 AT+XIIC–建立 PDP 链接
+
+
+### 建立PDP 连接,获取IP 地址。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+XIIC=<n><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+XIIC? <CR>
+
+<CR><LF>+XIIC: <state>,<ip>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<n> 0:断开PPP 连接
+
+
+### 1:激活PPP 连接
+
+<state>
+
+
+
+### 0:PPP 连接已断开
+
+
+### 1:PPP 连接已激活
+
+<ip> IP 地址
+
+示例
+
+
+### AT+XIIC=1
+
+
+```
+OK
+```
+
+
+### 建立第一个 PPP连接
+
+
+### AT+XIIC?
+
+
+
+### +XIIC: 1,10.107.216.162
+
+```
+OK
+```
+
+
+### 第一个 PPP链路建立成功,IP地址是 10.107.216.162。
+
+(1前面有 4个空格)
+
+
+### AT+XIIC?
+
+
+
+### +XIIC: 0,0.0.0.0
+
+```
+OK
+```
+
+
+### PPP链路还未建立成功,
+
+(0前面有 4个空格)
+
+
+### AT+XIIC=2
+
+
+
+### ERROR
+
+下发 xiic 指令入参非法,返回 error
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 69
+
+
+
+### ⚫ 在建立PPP 链路之前,先要使用AT+CGDCONT 设定APN 等参数。如对于中国移动的网络,可使
+
+
+### 用如下指令设定APN 等参数:AT+CGDCONT=1,”IP”,”CMNET”;
+
+
+### ⚫ 在使用AT+XIIC=1 建立PPP 连接之前,先要确保模组已经注册上网络。可使用AT+CREG?来判断,
+
+
+### 如果返回+CREG: 0,1 或+CREG: 0,5,都表明已注册上网络。
+
+
+### 6.3 AT+TCPSETMODE–设置 TCP 客户端模式
+
+
+### 设置TCP 客户端模式。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+TCPSETMODE=<num><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPSETMODE: ERROR<CR><LF>
+
+查询 AT+TCPSETMODE?<CR> <CR><LF>+TCPSETMODE: <num>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+TCPSETMODE=?<CR> <CR><LF>+TCPSETMODE: (0-1)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<num> 1:模作为客户端时只能建立一路TCPsocket
+
+0:模作为客户端时可以建立多路TCPsocket
+
+示例
+
+
+### AT+TCPSETMODE=1
+
+
+### OK 设置单客户端模式
+
+
+### AT+TCPSETMODE=0
+
+
+### OK 设置多客户端模式
+
+
+### AT+TCPSETMODE?
+
+
+### +TCPSETMODE: 0
+
+```
+OK
+```
+
+查询当前是什么模式。
+
+
+### AT+TCPSETMODE=?
+
+
+### +TCPSETMODE: (0-1)
+
+```
+OK
+```
+
+查询参数范围
+
+
+### AT+TCPSETMODE=2,10
+
+
+### ERROR 参数个数错误
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 70
+
+
+
+### AT+TCPSETMODE=2
+
+
+
+### +TCPSETMODE: ERROR
+
+参数超出范围
+
+
+通过AT+TCPSETMODE=1 设置后TCPSETUP、TCPSEND、TCPREAD、TCPCLOSE 的channel
+
+被限制仅能设置为1,且socketid 1 未使用的情况下才能成功建立连接。
+
+
+### 6.4 AT+TCPSETUP–建立 TCP 连接
+
+
+### 建立TCP 连接。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+TCPSETUP=<n>,<ip>,<port><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPSETUP: ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPSETUP:
+
+<n>,ERROR1<CR><LF>
+
+主动上报 <CR><LF>+TCPSETUP: <n>,<result><CR><LF>
+
+参数
+
+<n> 链路编号,只能为0~5。
+
+<ip> 目的IP 地址,必须是形如xx.xx.xx.xx 的输入,或者形如www.china.com(域名)。
+
+<port> 目的端口号,必须是十进制的ASCII 码。
+
+<result> 结果码
+
+
+### OK 建立成功
+
+
+### FAIL 建立失败
+
+示例
+
+
+### AT+TCPSETUP=0,220.199.66.56,6800
+
+
+```
+OK
+```
+
+在链路 0上建立到
+
+
+### 220.199.66.56,6800 的连接,成功
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 71
+
+
+
+### +TCPSETUP: 0,OK
+
+
+#### `AT+TCPSETUP=0,neowayjsr.oicp.net,60010`
+
+
+```
+OK
+```
+
+
+
+### +TCPSETUP: 0,OK
+
+在链路 0上建立到
+
+neowayjsr.oicp.net,60010的连接,成功
+
+```
++TCPCLOSE: 0,Link Closed 链路被动断开后返回的回码
+```
+
+
+### AT+TCPSETUP=1,192.168.20.6,7000
+
+
+```
+OK
+```
+
+
+
+### +TCPSETUP: 1,FAIL
+
+在链路 1上建立到 192.168.20.6,7000的连接失败,失败的原因有可
+
+
+### 能是服务器未开通,IP地址或端口不正确,或者是 SIM卡欠费,等等
+
+
+#### `AT+TCPSETUP=0,neowayjsr.oicp.net,60010`
+
+
+
+### +TCPSETUP: 0,ERROR1
+
+
+### 当前链路 0的 TCP/UDP链接已存在
+
+
+### AT+TCPSETUP=6,192.168.20.6,7000
+
+
+
+### +TCPSETUP: ERROR
+
+
+### AT指令参数错误
+
+
+### AT+TCPSETUP=0.58.60.184.213.10012
+
+
+
+### +TCPSETUP: ERROR
+
+
+### AT指令参数错误
+
+
+### AT+TCPSET=0,58.60.184.213,10012
+
+
+
+### ERROR
+
+
+### AT指令格式错误,指令不完整
+
+
+
+### ⚫ 输入AT 指令后, 若指令格式正确, 会立即返回OK; 若指令参数不正确会返回+TCPSETUP: ERROR;
+
+
+### 或者如链路0 已经在使用中会返回+TCPSETUP: 0,ERROR1;
+
+
+### ⚫ 使用前建议先AT+XIIC=1 建立PPP 链接。
+
+
+### 6.5 AT+TCPSEND–发送 TCP 数据
+
+发送 TCP 数据的命令,支持buffer 模式与命令模式,支持ASCII 与hex 发送。这条命令发送完毕
+
+后,会接收到大于号">",这时候请延迟50ms-100ms,然后发送数据。
+
+命令设置参数不保存,每次发送需要设置模式。
+
+
+
+### ⚫ 在发送TCP 数据之前,必须确保TCP 链路已经建立;
+
+⚫ 建议在发送数据之前,先使用AT+IPSTATUS查看可用的buffer 大小。
+
+⚫ 在命令模式发送ASCII 数据,第三个参数content 长度必须小于等于1024。
+
+⚫ Content 内容的逗号个数必须小于15 个,若需要传输大量逗号的数据,建议使用buffer 模式。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 72
+
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+TCPSEND=<n>,<length>
+
+[[,<content>][,mode]]<CR>
+
+<CR><LF>> <CR><content>
+
+
+### <CR><LF>OK<CR><LF>
+
+<CR><LF>+TCPSEND: <n>,<length><CR><LF>
+
+Or
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPSEND: ERROR<CR><LF>
+
+Or
+
+<CR><LF>+TCPSEND: <n>,OPERATION
+
+
+### EXPIRED<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPSEND: SOCKET ID OPEN
+
+
+### FAILED<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPSEND: DATA LENGTH ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<n> 链路编号,只能为0~5,且该链路已建立了TCP 连接。
+
+<length> 要发送的数据长度,以字节为单位。length 的范围:
+
+buffer 模式发送ASCII 数据:1~4096;
+
+buffer 模式发送HEX 数据:1~2048;
+
+
+### 命令模式发送HEX 数据:1~512;
+
+
+### 命令模式发送ASCII 数据:1~512。
+
+<content> 命令模式下发送的数据,content 长度范围0~1024。
+
+<mode> HEX 发送启用开关。
+
+
+### 0:ASCII 模式发送(默认)
+
+
+### 1:HEX 模式发送
+
+示例
+
+
+### AT+TCPSEND=0,1
+
+
+>
+
+```
+OK
+```
+
+
+
+### +TCPSEND: 0,1
+
+在链路 0上发送 1字节的数据,
+
+成功。
+
+
+#### `AT+TCPSEND=0,1024,,1 Buffer模式,HEX模式,发送 1024长度数据,发送成功。`
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 73
+
+
+>
+
+```
+OK
+```
+
+
+
+### +TCPSEND: 0,1024
+
+
+### AT+TCPSEND=0,6,"123459"
+
+```
+OK
+```
+
+
+
+### +TCPSEND: 0,6
+
+
+### 命令模式(只能发送纯文本,不能发送特殊符号,影响AT命令参数解析),发送
+
+数据,发送成功。
+
+
+### AT+TCPSEND=0,3,”313233”,1
+
+```
+OK
+```
+
+
+
+### +TCPSEND: 0,3
+
+
+### 命令模式,HEX模式,发送数据,发送成功。
+
+
+### AT+TCPSEND=0,10
+
+
+>
+
+
+### +TCPSEND: 0,OPERATION EXPIRED
+
+输入发送命令出现“>”后,不输入数据,30秒后提示超时。
+
+
+### AT+TCPSEND=0,1
+
+
+
+### +TCPSEND: SOCKET ID OPEN FAILED
+
+在链路 0上发送 1字节的数据,该链路尚未建立,发送失败。
+
+
+### AT+TCPSEND=0,4097
+
+
+
+### +TCPSEND: DATA LENGTH ERROR
+
+在链路 0上发送 4097字节的数据,超出长度限制,发送失败。
+
+
+### AT+TCPSEND=0,10
+
+
+
+### +TCPSEND: ERROR
+
+在链路 0上发送 10字节的数据,发送失败。可能原因,链路未打开,参数错误,
+
+内存申请失败
+
+
+### AT+TCPSEN=0,10
+
+
+
+### ERROR
+
+指令不完整
+
+
+
+### 6.6 AT+RECVMODE–设置数据接收模式
+
+
+### 设置TCP、UDP 数据接收模式。该命令掉电不保存。
+
+该命令设置时会清空接收缓冲区,因此只需要在初始化时设置一次即可,不建议在通信过程中重复
+
+
+### 设置。该指令对UDP 同样适用。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+RECVMODE=<n>[,<mode>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+RECVMODE?<CR> <CR><LF>+RECVMODE: <n>,<mode>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+RECVMODE=?<CR> <CR><LF>+RECVMODE: (list of supported
+
+<n>s),(list of supported <mode>s)
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 74
+
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<n> 模式选择,范围0-1。
+
+
+### 0:接收到的 TCP、UDP 数据缓存起来,输出来数据提示,需要外部MCU 主动发
+
+命令读取数据。
+
+
+### 1:接收到的TCP、UDP 数据直接从串口输出(默认)
+
+<mode> 接收数据是否HEX 上报
+
+
+### 0:ASCII 上报(默认)
+
+
+### 1:HEX 上报
+
+示例
+
+
+### AT+RECVMODE=0
+
+
+```
+OK
+```
+
+设置数据接收模式
+
+
+### AT+RECVMODE=1,1
+
+
+```
+OK
+```
+
+
+### 命令模式,HEX 上报
+
+
+### AT+RECVMODE=?
+
+
+
+### +RECVMODE: (0-1),(0-1)
+
+```
+OK
+```
+
+查询可以设置的参数范围
+
+
+### AT+RECVMODE=2
+
+
+
+### ERROR
+
+
+### 参数范围错误,返回 ERROR
+
+
+### 6.7 +TCPRECV–接收到 TCP 数据
+
+
+### 指示接收到的TCP 数据。
+
+
+⚫ 数据接收模式为缓存模式时,上报格式为+TCPRECV: <n><CR><LF>
+
+⚫ 数据接收模式为直接从串口输出时,上报格式为+TCPRECV: <n>,<length>,<data><CR><LF>
+
+命令格式
+
+类型 命令
+
+主动上报 <CR><LF>+TCPRECV: <n>[,<length>,<data>]<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 75
+
+
+参数
+
+<n> 链路编号,只能为0~5。
+
+<length> 接收到的数据长度。
+
+<data> 接收到的数据,尾部追加0x0d 0x0a;用户可根据<length>参数来判断结尾。
+
+示例
+
+
+### +TCPRECV: 0,10,1234567890 在链路 0 上收到 10 字节的数据,数
+
+据为 1234567890
+
+
+### 6.8 AT+TCPREAD–读取 TCP 数据
+
+
+### 读取TCP 数据。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+TCPREAD=<n>,<length><CR>
+
+<CR><LF>+TCPREAD: <n>,<len>,<data>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPREAD: ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPREAD: SOCKET ID OPEN
+
+
+### FAILED<CR><LF>
+
+参数
+
+<n> 链路编号,只能为0~5。
+
+<length> 本次允许读取的最大数据长度,范围1-2048 字节。
+
+示例
+
+
+### +TCPRECV: 0
+
+
+### AT+TCPREAD=0,100
+
+
+
+### RECVMODE=0
+
+在链路 0 上收到数据
+
+
+### +TCPREAD: 0,10,1234567890
+
+```
+OK
+```
+
+读取数据
+
+读取到 10 个数据为 1234567890
+
+
+### AT+TCPREAD=1,2048,0 参数个数错误
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 76
+
+
+
+### ERROR
+
+
+### AT+TCPREAD=1,2049
+
+
+
+### +TCPREAD: ERROR
+
+参数超出范围
+
+
+### AT+TCPSEND=1,10
+
+
+
+### +TCPSEND: SOCKET ID OPEN FAILED
+
+1号链路未建立连接
+
+
+
+### 需要通过+RECVMODE 指令选择接收模式。
+
+
+### 6.9 AT+TCPCLOSE–关闭 TCP 连接
+
+
+### 关闭TCP 连接。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+TCPCLOSE=<n><CR>
+
+<CR><LF>+TCPCLOSE: <n>,OK<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPCLOSE: ERROR<CR><LF>
+
+主动上报 <CR><LF>+TCPCLOSE: 0,Link Closed<CR><LF>
+
+参数
+
+<n> 链路编号,0~5。
+
+示例
+
+
+### AT+TCPCLOSE=1
+
+
+
+### +TCPCLOSE: 1,OK
+
+
+### 主动关闭:关闭链路 1 的 TCP 连接成功
+
+
+### AT+TCPCLOSE=2
+
+
+
+### +TCPCLOSE: ERROR
+
+链路号错误,失败
+
+```
++TCPCLOSE: 0,Link Closed 被动关闭:一般是服务端发过来 TCP 连接断开指令或者是网络异常、信号太差
+```
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 77
+
+
+
+### 6.10 AT+UDPSETUP–建立 UDP 连接
+
+
+### 建立UDP 连接。
+
+
+### 使用前需要使用AT+XIIC=1建立PPP 链接。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+UDPSETUP=<n>,<ip>,<
+
+port><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+<CR><LF>+UDPSETUP: <n>,<result><CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+UDPSETUP: ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+UDPSETUP: ERROR1<CR><LF>
+
+
+
+### ⚫ 若参数有误,会返回+UDPSETUP: ERROR;
+
+
+### ⚫ 或者如链路0 已经在使用中会返回+UDPSETUP: 0,ERROR1。
+
+参数
+
+<n> 链路编号,只能为0~5。
+
+<ip> 目的IP 地址,必须是形如xx.xx.xx.xx 的输入,或者形如www.china.com(域名)
+
+<port> 目的端口号,必须是十进制的ASCII 码。
+
+<result> 结果码
+
+
+### OK 成功
+
+
+### FAIL 失败
+
+
+### ERROR1 当前链路上的连接已存在。
+
+示例
+
+
+### AT+UDPSETUP=1,220.199.66.56,7000
+
+
+```
+OK
+```
+
+
+
+### +UDPSETUP: 1,OK
+
+在链路 1上建立到 220.199.66.56,7000的连接,成功。
+
+
+#### `AT+UDPSETUP=0,neowayjsr.oicp.net,60010`
+
+在链路 0上建立到,neowayjsr.oicp.net,60010的连接,成功。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 78
+
+
+```
+OK
+```
+
+
+
+### +UDPSETUP: 0,OK
+
+
+### AT+UDPSETUP=0,58.60.184.213,11008
+
+
+
+### +UDPSETUP: 0,ERROR1
+
+
+### 当前链路 0的 TCP/UDP连接已存在。
+
+
+### AT+UDPSETUP=1,192.168.20.6,7000
+
+
+```
+OK
+```
+
+
+
+### +UDPSETUP: 1,FAIL
+
+在链路 1上建立到 192.168.20.6,7000的连接,失败。
+
+
+
+### AT+UDPSETUP=6,192.168.20.6,6800
+
+
+
+### +UDPSETUP: ERROR
+
+链路号错误
+
+
+### AT+UDPSETUP=0.58.60.184.213.10012
+
+
+
+### +UDPSETUP: ERROR
+
+标点错误
+
+
+### AT+UDPSET=0,58.60.184.213,10012
+
+
+
+### ERROR
+
+
+### AT指令格式错误,指令不完整
+
+
+### 6.11 AT+UDPSEND–发送 UDP 数据
+
+
+### 发送UDP 数据的命令。
+
+
+### 在发送UDP 数据之前,必须确保UDP 链路已经建立;命令设置参数不保存。每次发送需要设置模
+
+式。Buffer 模式下,且这条命令发送完毕后,会接收到大于号">",这时候请延迟50ms-100ms,然后发
+
+送数据。
+
+
+⚫ buffer 模式HEX 数据最大支持2048 字节,ASCII 最大支持4096 字节;
+
+⚫ 建议每次发送数据不大于1472 字节,可降低丢包概率;
+
+⚫ 转义模式,通过反斜杠实现转义,命令模式的字符串中想要发送单双引号或者反斜杠,可以通过下述
+
+方式进行,具体见示例;
+
+⚫ 可省略mode 设置参数,默认为ASCII 支持转义模式;
+
+⚫ 在命令模式发送ASCII 数据,第三个参数content 长度必须小于等于102
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+UDPSEND=<n>,<length>[[,<content>]
+
+[,mode]]<CR>
+
+
+### <CR><LF>> <CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### <CR><LF>+UDPSEND:
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 79
+
+
+<n>,<length><CR><LF>
+
+Or
+
+<CR><LF>+UDPSEND: <n>,OPERATION
+
+
+### EXPIRED<CR><LF>
+
+Or
+
+
+### <CR><LF>+UDPSEND: DATA LENGTH
+
+
+### ERROR<CR><LF>
+
+参数
+
+<n> 链路编号,只能为0~5,且该链路已建立了UDP 连接。
+
+<length> 要发送的数据长度,以字节为单位。
+
+length 的范围:
+
+buffer 模式发送HEX 数据:1~2048;
+
+buffer 模式发送ASCII 数据:1~4096;
+
+
+### 命令模式发送HEX 数据:1~512;
+
+
+### 命令模式发送ASCII 数据:1~512。
+
+<content> 命令模式下发送的数据,content 长度范围0~1024
+
+Content 内容的英文逗号个数必须小于15 个,若需要传输大量英文逗号的数据,建
+
+议使用buffer 模式。
+
+<mode> HEX 发送启用开关
+
+
+### 0:ASCII 模式发送
+
+
+### 1:HEX 模式发送
+
+示例
+
+
+### AT+UDPSEND=0,1024,,1
+
+
+>
+
+```
+OK
+```
+
+
+
+### +UDPSEND: 0,1024
+
+
+Buffer模式,hex模式,发送 1024长度数据,发送成功。
+
+
+### AT+UDPSEND=0,10,"DEGHHRFRRD",0
+
+
+```
+OK
+```
+
+
+
+### +UDPSEND: 0,10
+
+
+### 命令模式,发送 ASCII 模式数据成功。
+
+
+### AT+UDPSEND=0,4097
+
+
+
+### +UDPSEND: DATA LENGTH ERROR
+
+在链路 0 上发送 4097 字节的数据,超出长度限制,发送失败。
+
+
+### AT+UDPSEND=1,6,”313233343536”,1
+
+
+```
+OK
+```
+
+
+
+### +UDPSEND: 0,6
+
+
+
+### 命令模式,HEX 模式,发送数据成功。
+
+
+### AT+UDPSEND=0,10
+
+输入发送命令出现“>”后,延时 30 秒提示的超时提示。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 80
+
+
+>
+
+
+### +UDPSEND: 0,OPERATION EXPIRED
+
+
+### 6.12 +UDPRECV–接收到 UDP 数据
+
+
+### 接收到UDP 数据。
+
+
+⚫ 数据接收模式为缓存模式时,上报格式为+ UDPRECV: <n><CR><LF>
+
+⚫ 数据接收模式为直接从串口输出时,上报格式为+ UDPRECV: <n>,<length>,<data><CR><LF>
+
+命令格式
+
+类型 命令
+
+主动上报 <CR><LF>+UDPRECV: <n>[,<length>,<data>]<CR><LF>
+
+参数
+
+<n> 链路编号,只能为0~5。
+
+<length> 接收到的数据长度。
+
+<data> 接收到的数据。尾部追加0x0d 0x0a。用户可根据<length>参数来判断结尾。
+
+示例
+
+
+### +UDPRECV: 0,10,1234567890 在链路 0 上收到 10 字节的数据,为 1234567890
+
+
+### 6.13 AT+UDPREAD–读取 UDP 数据
+
+
+### 读取UDP 数据。需要通过+RECVMODE 指令选择接收模式。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+UDPREAD=<n>[,<length>]<CR>
+
+<CR><LF>+UDPREAD: <n>,<length>,<data>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>+UDPREAD: SOCKET ID OPEN
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 81
+
+
+
+### FAILED<CR><LF>
+
+Or
+
+
+### <CR><LF>+UDPREAD: ERROR<CR><LF>
+
+参数
+
+<n> 链路编号,只能为0~5。
+
+<length> 本次允许读取的最大数据长度,范围1-2048 字节。
+
+<data> 读取到的UDP 数据。
+
+示例
+
+
+### +UDPRECV: 0
+
+
+### AT+UDPREAD=0,100
+
+
+
+### +UDPREAD: 0,10,1234567890
+
+```
+OK
+```
+
+在链路 0 上收到数据
+
+读取数据
+
+读取到 10 个数据为 1234567890
+
+
+### AT+UDPREAD=1,100
+
+
+
+### +UDPREAD: SOCKET ID OPEN FAILED
+
+1 号链路未建立
+
+
+### AT+UDPREAD=0,0
+
+
+
+### +UDPREAD: ERROR
+
+参数错误
+
+
+### 6.14 AT+UDPCLOSE–关闭 UDP 连接
+
+
+### 关闭UDP 连接。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+UDPCLOSE=<n><CR>
+
+<CR><LF>+UDPCLOSE: <n>,OK<CR><LF>
+
+Or
+
+
+### <CR><LF>+UDPCLOSE: ERROR<CR><LF>
+
+参数
+
+<n> 链路编号,只能为0~5。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 82
+
+
+示例
+
+
+### AT+UDPCLOSE=1
+
+
+
+### +UDPCLOSE: 1,OK
+
+
+### 关闭链路 1 的 UDP 连接,成功
+
+
+### AT+UDPCLOSE=6
+
+
+
+### +UDPCLOSE: ERROR
+
+链路号错误
+
+
+### 6.15 AT+IPSTATUS–查询 TCP/UDP 透传链路状态
+
+
+### 查询TCP/UDP 透传链路状态。
+
+
+### 由于UDP 的特点,该指令仅能查询是否已经通过指令建立链接,并不代表链接的真实情况。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+IPSTATUS=<n><CR>
+
+<CR><LF>+IPSTATUS: <n>,<CONNECT or
+
+DISCONNECT>[,<TCP or UDP>,<send-buffer-size>]
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+
+### <STATUS> 该链路的状态,取值为 CONNECT 或者 DISCONNECT。
+
+<CONNECT or DISCONNECT> 该链路的状态,取值为 CONNECT 或者 DISCONNECT 或
+
+
+### CONNECTING 或DISCONNECTING。
+
+<TCP or UDP> 链路类型,取值为 TCP 或者 UDP。
+
+<send-buffer-size> 模组内部可用的send buffer 的大小,十进制ASCII 码表示,
+
+单位为字节。
+
+示例
+
+
+### AT+IPSTATUS=0
+
+
+
+### +IPSTATUS: 0,CONNECT,TCP,4096
+
+链路 0,已建 TCP连接,可用 buffer为 4096字节
+
+
+### AT+IPSTATUS=0
+
+
+
+### +IPSTATUS: 0,CONNECT,UDP,0
+
+
+### 链路 0,已建 UDP连接
+
+
+### AT+IPSTATUS=1
+
+
+
+### +IPSTATUS: 1,DISCONNECT
+
+
+### 链路 1,未建立任何“TCP/UDP”连接
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 83
+
+
+
+### AT+IPSTATU
+
+
+
+### ERROR
+
+
+### AT指令格式错误,指令不完整
+
+
+### AT+IPSTATUS=6
+
+
+
+### ERROR
+
+指令链路编号错误
+
+
+UDP 链路上不支持查询<send-buffer-size>参数。
+
+
+### 6.16 AT+TCPACK–查询 TCP 链路发送数据状态
+
+
+### 查询TCP 链路发送成功的数据大小、接收方成功接收该链路的数据大小。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+TCPACK=<n><CR>
+
+<CR><LF>+TCPACK: <n>,<data_sent>,<acked_recv><CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+<CR><LF>+TCPACK: <n>,DISCONNECT<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPACK: NO TCP LINK<CR><LF>
+
+
+### 执行 AT+TCPACK<CR>
+
+<CR><LF>+TCPACK: <data_sent>,<acked_recv><CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+<CR><LF>+TCPACK: <n>,DISCONNECT<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPACK: NO TCP LINK<CR><LF>
+
+参数
+
+<n> 链路编号,只能为0~5。
+
+<data_sent> 该链路发送成功的链路数据大小,无符号64 位整型数,十进制ASCII 码表示,单位
+
+为字节。
+
+<acked_recv> 接收方成功接收的链路数据大小,无符号64 位整型数,十进制ASCII 码表示,单位
+
+为字节。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 84
+
+
+示例
+
+
+### AT+TCPACK=0
+
+
+
+### +TCPACK: 0,20,20
+
+链路 0,发送成功 20 个字节数据,接收方成功接收 20 个字节数据
+
+
+### AT+TCPACK=0
+
+
+
+### +TCPACK: 0,128,120
+
+链路 0,发送成功 128 个字节数据,接收方成功接收 120 个字节数据
+
+
+### AT+TCPACK=1
+
+
+
+### +TCPACK: 1,DISCONNECT
+
+链路 1,未建立任何连接
+
+
+### AT+TCPACK=2
+
+
+
+### +TCPACK: NO TCP LINK
+
+
+### 链路 2 建立的是 UDP 连接
+
+
+### AT+TCPACK=6
+
+
+
+### ERROR
+
+指令链路编号错误
+
+
+### 6.17 AT+DNSSERVER–设置 DNS 服务器
+
+
+### 查询/设置DNS 服务器。
+
+
+### 一般来说,用户可以不手动设置 DNS 服务器,在 PPP 协商阶段,基站控制器会给分配DNS 服
+
+务器。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+DNSSERVER=<n>,<dns-ip><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+DNSSERVER?<CR>
+
+
+### <CR><LF>+DNSSERVER:
+
+dns1:<dns-ip1>,dns2:<dns-ip2>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<n> DNS 服务器编号,取值服务器编号,取值 1-2,1 为首选DNS,2 为备选DNS。
+
+<dns-ip> DNS 服务器 IP 地址。
+
+示例
+
+
+### AT+DNSSERVER=1,114.114.114.114
+
+
+
+### 设置 DNS服务器
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 85
+
+
+```
+OK
+```
+
+
+### AT+DNSSERVER?
+
+```
++DNSSERVER: dns1:61.139.2.69,dns2:218.6.200.139
+```
+
+```
+OK
+```
+
+
+### 查询 DNS服务器
+
+
+### AT+XIIC?
+
+
+
+### +XIIC: 0,0.0.0.0
+
+
+### +XIIC: 0,0:0:0:0:0:0:0:0
+
+```
+OK
+```
+
+
+### AT+DNSSERVER=1,114.114.114.114
+
+
+
+### ERROR
+
+
+### 未建立 PPP连接返回 ERROR
+
+
+### 6.18 AT+PDPKEEPALIVE–设置 PDP 心跳
+
+
+### 设置PDP 保活心跳。
+
+
+### 若设置域名参数,需要先建立PPP 链接。
+
+
+### 需激活PDP,心跳起作用。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+PDPKEEPALIVE=<onoff>,<inerval><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+PDPKEEPALIVE?<CR>
+
+
+### <CR><LF>+PDPKEEPALIVE:
+
+<onoff>,<inerval>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<onoff> 心跳开关。
+
+0:关闭(默认)
+
+1:打开
+
+<inerval> 心跳间隔,单位s,范围1-65535。
+
+示例
+
+
+### AT+PDPKEEPALIVE?
+
+
+
+### +PDPKEEPALIVE: 1,5
+
+查询心跳设置
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 86
+
+
+```
+OK
+```
+
+
+### AT+PDPKEEPALIVE=1,60
+
+
+```
+OK
+```
+
+打开心跳,间隔为 60s
+
+
+### AT+PDPKEEPALIVE=3,10
+
+
+
+### ERROR
+
+参数超出范围
+
+
+### 6.19 AT+PDPSTATUS–查询 PDP 状态
+
+
+### 查询PDP 状态。
+
+
+### PDP 心跳打开时,查询状态可立即返回。
+
+PDP 心跳未打开时,查询状态会有一些延时,200ms~10000ms,与网络环境有关。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+PDPSTATUS<CR> <CR><LF>+PDPSTATUS: <status><CR><LF>
+
+参数
+
+<status> CONNECT<CR><LF>
+
+
+### DISCONNECT
+
+
+### PSEUDO_CONNECT<CR><LF>
+
+示例
+
+
+### AT+PDPSTATUS
+
+
+
+### +PDPSTATUS: CONNECT
+
+
+
+### PDP正常状态
+
+
+### AT+PDPSTATUS
+
+
+
+### +PDPSTATUS: DISCONNECT
+
+
+### AT+PDPSTATUS
+
+
+
+### +PDPSTATUS: PSEUDO_CONNECT
+
+
+### PDP未激活状态
+
+
+
+### PDP已激活,但处于假连接状态
+
+
+
+### 6.20 AT+TCPKEEPALIVE–TCP 心跳包设置
+
+
+### TCP 持续在线功能。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 87
+
+
+
+### 该指令参数掉电不保存。需要在TCP 建立之前设置,对所有链路均有效,不要在建立TCP 连接之
+
+后使用这条指令。
+
+
+该功能会额外产生一些流量,请谨慎使用。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+TCPKEEPALIVE=<mode>[,<time>[,
+
+<interval>[,<keepcount>]]]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+TCPKEEPALIVE? <CR>
+
+
+### <CR><LF>+TCPKEEPALIVE:
+
+<mode>,<time>,<interval>,<keepcount>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+TCPKEEPALIVE=?<CR>
+
+<CR><LF>+TCPKEEPALIVE: (range of
+
+supported <mode>),(range of supported
+
+<time>),(range of supported <interval>),(range of
+
+supported <keepcount>)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<mode> 开启/关闭模式,取值范围0~1,默认值为0。
+
+0:关闭
+
+1:开启
+
+<time> 空闲时间间隔(即TCP 空闲多久后发送KEEPALIVE 数据包给远端服务器),
+
+
+### 取值30S~7200S,默认值120。
+
+<interval> 重发间隔(即TCP 发送KEEPALIVE 数据包后多长时间内没有收到远端服
+
+
+### 务器的回复,则重新发送KEEPALIVE 数据包),取值1S~1800S,默认值75。
+
+<keepcount> 重发次数(重新发送KEEPALIVE 数据包的次数),取值1-15,默认值9
+
+
+⚫ 不同网络环境下对心跳包发送时间要求不同,请根据网络环境合理设置。若<time>设置时间过长,
+
+终端可能会出现假连接,<interval>时间超过< time>将不会重发;若<time>、<interval>设置时间太
+
+短,终端可能会断开连接,这是由于模组空口存在休眠机制,间隔太短时,若多个心跳包都在休眠期
+
+发送,心跳包会在唤醒后连在一起发送出去,接收侧认为粘包数据无效而不回复确认信息,多次收不
+
+到确认信息终端就认为连接已无效从而主动断开连接。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 6 章TCP/UDP 客户端指令
+
+
+深圳市有方科技股份有限公司版权所有 88
+
+
+⚫ 推荐设置范围:< time>:120 ~ 300,<interval>:40 ~ 100。
+
+示例
+
+
+### AT+TCPKEEPALIVE=1
+
+
+```
+OK
+```
+
+
+### 打开 KEEPALIVE 功能
+
+
+### AT+TCPKEEPALIVE=1,120,75,9
+
+
+```
+OK
+```
+
+
+### 打开并设置 KEEPALIVE 参数
+
+
+### AT+TCPKEEPALIVE=0
+
+
+```
+OK
+```
+
+
+### 关闭 KEEPALIVE 功能
+
+
+### AT+TCPKEEPALIVE?
+
+
+
+### +TCPKEEPALIVE: 1,120,75,9
+
+```
+OK
+```
+
+
+### 读取当前 KEEPALIVE 参数
+
+
+### AT+TCPKEEPALIVE=?
+
+
+
+### +TCPKEEPALIVE: (0-1),(30-7200),(1-1800),(0-15)
+
+```
+OK
+```
+
+
+
+### AT+TCPKEEPALIVE=2,10,100
+
+
+
+### ERROR
+
+参数超出范围
+
+
+
+### N706A AT 命令手册
+
+
+### 第 7 章TCP 服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 89
+
+
+
+## 7 TCP 服务器指令
+
+
+### 7.1 AT+TCPLISTENMODE-设置 TCP 侦听模式
+
+
+### 设置TCP 监听模式
+
+默认模式是多客户端模式
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+TCPLISTENMODE=<num><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+TCPLISTENMODE?<CR>
+
+
+### <CR><LF>+TCPLISTENMODE:
+
+<num><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+TCPLISTENMODE=?<CR>
+
+
+### <CR><LF>+TCPLISTENMODE:
+
+(range of <num>
+
+values)<CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<num> 1: 单客户端模式
+
+0: 多客户端模式
+
+示例
+
+
+### AT+TCPLISTENMODE=1
+
+
+```
+OK
+```
+
+
+### 设置 TCP监听为单客户端模式
+
+
+### AT+TCPLISTENMODE=0
+
+
+```
+OK
+```
+
+
+### 设置 TCP监听为多客户端模式
+
+
+### AT+TCPLISTENMODE?
+
+
+### 查询当前 TCP监听模式
+
+
+
+### N706A AT 命令手册
+
+
+### 第 7 章TCP 服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 90
+
+
+
+### +TCPLISTENMODE: 0
+
+
+```
+OK
+```
+
+
+### AT+TCPLISTENMODE=?
+
+
+
+### +TCPLISTENMODE:(0-1)
+
+
+```
+OK
+```
+
+查询参数范围
+
+
+### AT+TCPLISTENMODE=2
+
+
+
+### ERROR
+
+参数超出范围
+
+
+### 7.2 AT+TCPLISTEN–设置服务器侦听功能
+
+设置服务器侦听功能。
+
+使用联通卡或者移动的专网卡可以进行调试使用,移动的公网卡不能作为服务器调试。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+TCPLISTEN=<port><CR>
+
+<CR><LF>+TCPLISTEN: <socket>,OK<CR><LF>
+
+Or
+
+<CR><LF>+TCPLISTEN: <status><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPLISTEN: ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+TCPLISTEN?<CR> <CR><LF>+TCPLISTEN: <status><CR><LF>
+
+参数
+
+<port> 端口号
+
+<socket> socket 号
+
+<status> Listening…
+
+bind error
+
+not listening
+
+listening status
+
+
+
+### N706A AT 命令手册
+
+
+### 第 7 章TCP 服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 91
+
+
+示例
+
+
+### AT+TCPLISTEN=6800
+
+
+
+### +TCPLISTEN: 0,OK
+
+侦听端口号 6800
+
+服务器侦听开始启动
+
+
+### AT+TCPLISTEN=6800
+
+
+```
++TCPLISTEN: bind error
+```
+
+
+```
+OK
+```
+
+侦听端口号 6800
+
+绑定失败
+
+
+### AT+TCPLISTEN=6800
+
+
+```
++TCPLISTEN: Listening...
+```
+
+
+```
+OK
+```
+
+如果已经设置了侦听,再设置的话,会提示 Listening...
+
+
+### AT+TCPLISTEN?
+
+
+```
++TCPLISTEN: listening status
+```
+
+查询侦听状态,表示当前处于侦听。
+
+
+### AT+TCPLISTEN?
+
+
+```
++TCPLISTEN: not listening
+```
+
+查询侦听状态,表示当前没有侦听。
+
+Connect
+
+AcceptSocket=1,ClientAddr=119.123.77.133
+
+,ClientPort=8000
+
+收到主站连接请求,其 AcceptSocket是主站跟模组建立的 socket,
+
+
+### 119.123.77.133是主站的 IP地址,8000是主站的端口号。
+
+
+### AT+TCPLISTEN=65536
+
+
+
+### ERROR
+
+参数超出范围
+
+
+### AT+TCPLISTEN=6800,10
+
+
+
+### ERROR
+
+参数个数错误
+
+
+### AT+TCPLISTEN=6800
+
+
+
+### +TCPLISTEN: ERROR
+
+
+### 未激活 PPP连接
+
+
+### 7.3 AT+CLOSELISTEN–关闭侦听链接
+
+关闭侦听链接。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+CLOSELISTEN<CR>
+
+<CR><LF>+CLOSELISTEN: <socket_id>,local link
+
+closed<CR><LF>
+
+Or
+
+<CR><LF>+TCPSRVTRANS: <socket_id>,local link
+
+closed<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+
+### N706A AT 命令手册
+
+
+### 第 7 章TCP 服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 92
+
+
+<CR><LF>+CLOSECLIENT: All remote link
+
+closed<CR><LF>
+
+主动上报 <CR><LF>+CLOSELISTEN: <socket_id>,local link closed<CR><LF>
+
+参数
+
+<socket_id> socket 号
+
+示例
+
+```
++CLOSELISTEN: 0,local link closed
+```
+
+主站关闭链接或网络异常时,会主动上报该回码。
+
+
+### AT+CLOSELISTEN
+
+
+```
++CLOSELISTEN: 0,local link closed
+```
+
+如果有主站链接,会同时把主站链接关闭。
+
+
+### AT+CLOSELISTEN
+
+
+```
++CLOSECLIENT: All remote link closed
+```
+
+
+```
++CLOSELISTEN: 0,local link closed
+```
+
+如果有主站链接,会同时把主站链接关闭。
+
+
+### AT+TCPSRVTRANS?
+
+
+```
++TCPSRVTRANS: not listening
+```
+
+
+### AT+CLOSELISTEN
+
+
+
+### ERROR
+
+当前未侦听时,关闭返回失败。
+
+
+
+### AT+TCPSRVTRANS=6800
+
+
+
+### +TCPSRVTRANS: OK
+
+
+### AT+CLOSELISTEN
+
+
+```
++TCPSRVTRANS: 0,local link closed
+```
+
+
+### AT+TCPLISTEN=6800
+
+
+
+### +TCPLISTEN: 0,OK
+
+
+### AT+CLOSELISTEN
+
+
+```
++CLOSELISTEN: 0,local link closed
+```
+
+透传与非透传回码差异
+
+
+
+### 7.4 AT+CLOSECLIENT–关闭主站链接
+
+关闭主站链接。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 7 章TCP 服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 93
+
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CLOSECLIENT[=<socket>]<CR>
+
+
+### <CR><LF>+CLOSECLIENT:
+
+<socket>,remote link closed<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+<CR><LF>+CLOSECLIENT:accept
+
+socket over<CR><LF>
+
+Or
+
+<CR><LF>+CLOSECLIENT: All remote
+
+link closed<CR><LF>
+
+参数
+
+<socket> socket 号。
+
+示例
+
+
+### AT+CLOSECLIENT
+
+
+```
++CLOSECLIENT: 1,remote link closed
+```
+
+
+```
++CLOSECLIENT: 2,remote link closed
+```
+
+不带参数,多个关闭。
+
+
+### AT+CLOSECLIENT=1
+
+
+```
++CLOSECLIENT: 1,remote link closed
+```
+
+带参数,单个关闭。
+
+
+### AT+CLOSECLIENT=1
+
+
+
+### ERROR
+
+1链路不存在远程客户端。
+
+
+### AT+CLOSECLIENT
+
+
+```
++CLOSECLIENT: All remote link closed
+```
+
+所有远程客户端已关闭。
+
+
+```
++CLOSECLIENT:accept socket over
+```
+
+
+```
++CLOSECLIENT:2,remote link closed
+```
+
+
+单客户端模式下已有客户端接入
+
+
+
+### 7.5 +TCPRECV(S)–接收到主站的数据
+
+接收到主站的数据。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 7 章TCP 服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 94
+
+
+命令格式
+
+类型 命令
+
+主动上报 <CR><LF>+TCPRECV(S): <n>[,<length>,<data>]<CR><LF>
+
+参数
+
+<n> 链路编号,只能为0~5
+
+<length> 接收到的数据长度
+
+<data> 接收到的数据。尾部追加0x0d 0x0a。用户可根据<length>参数来判断结尾
+
+示例
+
+
+### +TCPRECV(S): 1,10,1234567899 链路 1接收到主站发过来的 10个字节的数据,接收字符格式为字符类型
+
+
+
+### 跟客户端模式的接收格式不同,多了符号“(S)”;
+
+跟客户端的参数有所区别,请注意。
+
+数据接收模式为缓存模式时,上报格式为+TCPRECV(S): <n><CR><LF>
+
+数据接收模式为直接从串口输出时,上报格式为
+
+```
++TCPRECV(S): <n>,<length>,<data><CR><LF>
+```
+
+
+### 7.6 AT+TCPREADS–读取到主站的数据
+
+读取到主站的数据。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+TCPREADS=<n>,<length><CR>
+
+<CR><LF> +TCPREADS:<n>,<length>,<content>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 7 章TCP 服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 95
+
+
+参数
+
+<n> 链路编号,只能为0~5。
+
+<length> 本次允许读取的最大数据长度,范围1-2048 字节。
+
+<content> 读取到的数据。
+
+示例
+
+
+### +TCPRECV(S): 1
+
+
+### AT+TCPREADS=1,100
+
+
+
+### +TCPREADS: 1,10,1234567890
+
+```
+OK
+```
+
+
+### RECVMODE=0
+
+链路 1 接收到主站发过来的 10 个字节的数据
+
+
+### 7.7 AT+TCPSENDS–发送给主站的数据
+
+发送给主站的数据。
+
+
+### 在发送TCP 数据之前,必须确保TCP 链路已经建立。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+TCPSENDS=<socket>[
+
+,<length>]<CR>
+
+
+### <CR><LF>>
+
+
+### <CR><LF>OK<CR><LF>
+
+<CR><LF>+TCPSENDS:<socket>[,<length>]<CR><LF>
+
+Or
+
+
+### <CR><LF>>
+
+<CR><LF>+TCPSENDS: Buffer not enough,439<CR><LF>
+
+Or
+
+<CR><LF>+TCPSENDS: <socket> is not link<CR><LF>
+
+Or
+
+<CR><LF>+TCPSENDS: <socket>, OPERATION
+
+
+### EXPIRED<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPSENDS: SOCKET ID OPEN FAILED
+
+
+### <CR><LF>
+
+参数
+
+<socket> 侦听到的AcceptSocket 值,即主站跟模组的建立的socket,参考AT+TCPLISTEN 指
+
+
+
+### N706A AT 命令手册
+
+
+### 第 7 章TCP 服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 96
+
+
+令的说明。
+
+<length> 要发送的数据长度,以字节为单位,取值范围1~4096。
+
+示例
+
+
+### AT+TCPSENDS=0,10
+
+
+>
+
+```
+OK
+```
+
+
+
+### +TCPSENDS: 0,10
+
+在 sokcet 0上发送 10字节的数据(如:1234567890,发送成功。
+
+
+### AT+TCPSENDS=0
+
+
+>
+
+```
+OK
+```
+
+
+
+### +TCPSENDS: 0,21
+
+在链路 0 上发送21字节的数据(如:012345678901234567890),发送成功。
+
+(不带数据长度时以Ctrl+Z为结束标志,最长不能超过 4096)
+
+
+### AT+TCPSENDS=0,5
+
+
+>
+
+
+### +TCPSENDS: 0,OPERATION
+
+
+### EXPIRED
+
+输入发送命令出现“>”后,不输入数据,30秒后提示超时。
+
+
+### 7.8 AT+CLIENTSTATUS–查询主站链路的状态
+
+查询主站链路的状态。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CLIENTSTATUS=<cid><CR>
+
+<CR><LF>+CLIENTSTATUS: <cid>,<CONNECT
+
+or DISCONNECT>[,<TCP or INVALID>[,
+
+<send-buffer-size>]]<CR><LF>
+
+参数
+
+<cid> 特定PDP 上下文定义的数字参数。
+
+<CONNECT or
+
+
+### DISCONNECT>
+
+
+### 该链路的状态,取值为CONNECT 或者DISCONNECT。
+
+<TCP or INVALID> 链路类型,取值为TCP 或者INVALID。
+
+<send-buffer-size> 模组内部可用的send buffer 的大小,十进制ASCII 码表示,单位为字节。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 7 章TCP 服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 97
+
+
+
+### 链路类型为INVALID 表示该链路不是侦听到的TCP 连接,可能为TCP/UDP 客户端或者服务器侦听
+
+链路。
+
+示例
+
+
+### AT+CLIENTSTATUS=0
+
+
+
+### +CLIENTSTATUS: 0,CONNECT,TCP,61440
+
+主站 socket 0,已建立 TCP连接,可用 buffer为 61440字节。
+
+
+### AT+CLIENTSTATUS=4
+
+
+
+### +CLIENTSTATUS: 4,DISCONNECT
+
+Socket 4,没有建立连接。
+
+
+### AT+CLIENTSTATUS=1
+
+
+
+### +CLIENTSTATUS: 1,CONNECT,INVALID
+
+Socket 1作为服务器侦听,链路类型返回 INVALID。
+
+
+### 7.9 AT+TCPACKS–查询 TCP 服务器发送数据状态
+
+
+### 查询TCP 服务器链路发送成功的数据大小、接收方成功接收该链路的数据大小。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+TCPACKS=<socket><CR>
+
+
+### <CR><LF>+TCPACKS:
+
+<socket>,<data_sent>,<acked_recv>
+
+Or
+
+<CR><LF>+TCPACKS: <socket>,<DISCONNECT>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<socket> 侦听到的AcceptSocket 值,即主站跟模组的建立的socket,只能为0~5。
+
+<data_sent> 模组给主站发送成功的数据大小。
+
+<acked_recv> 主站成功接收的数据大小。
+
+
+<data_sent>、<acked_recv>为无符号64 位整型数,十进制ASCII 码表示,单位为字节。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 7 章TCP 服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 98
+
+
+示例
+
+
+### AT+TCPACKS=0
+
+
+
+### +TCPACKS: 0,20,20
+
+模组给Socket 0主站发送成功 20个字节数据,主站成功接收 20个字节数据。
+
+
+### AT+TCPACKS=0
+
+
+
+### +TCPACKS:0,128,120
+
+模组给Socket 0主站发送成功 128个字节数据,主站成功接收 120个字节数据。
+
+
+### AT+TCPACKS=1
+
+
+
+### +TCPACKS: 1,DISCONNECT
+
+链路 1,未建立任何连接。
+
+
+### AT+TCPACKS=6
+
+
+
+### ERROR
+
+Socket错误。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 8 章TCP/UDP 透传指令
+
+
+深圳市有方科技股份有限公司版权所有 99
+
+
+
+## 8 TCP/UDP 透传指令
+
+
+### 8.1 AT+TCPTRANS–建立 TCP 透传连接
+
+
+### 建立TCP 透传连接。
+
+
+
+### ⚫ 建立TCP 透传链接成功后,向服务器发送数据,串口不显示发送的数据;
+
+
+### ⚫ 使用“+++”指令(不带回车换行)切换到命令模式;“ATO”指令切换到数据模式;
+
+⚫ 透传指令与其他非透传数据业务冲突,使用透传指令不要建立非透传数据业务。
+
+⚫ 来电、来短信会自动退出透传方式链接;
+
+⚫ 建议透传方式一次最多收发2048 字节数据;
+
+⚫ cfgt 与cfgp 需要同时设置,方可生效;
+
+
+### ⚫ 建立TCP 透传链接返回回码+TCPTRANS:OK 后,即可进行TCP 透传数据收发。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+TCPTRANS=<ip>,<port>[,<cfgt>,cf
+
+gp]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+<CR><LF>+TCPTRANS: <result><CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPTRANS: ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<ip> 目的IP 地址,必须是形如xx.xx.xx.xx 的输入,或者形如www.china.com(域名)。
+
+<port>
+
+<cfgt>
+
+<cfgp>
+
+
+### 目的端口号,必须是十进制的ASCII 码。
+
+没报数据发送等待时间,取值1-65535,默认100,单位ms
+
+数据包被发送门限值,取值1-2048,默认2048
+
+<result> 结果码
+
+
+### OK 建立成功
+
+
+
+### N706A AT 命令手册
+
+
+### 第 8 章TCP/UDP 透传指令
+
+
+深圳市有方科技股份有限公司版权所有 100
+
+
+
+### FAIL 建立失败
+
+示例
+
+
+#### `AT+TCPTRANS=neowayjsr.oicp.net,60010`
+
+
+```
+OK
+```
+
+
+
+### +TCPTRANS:OK
+
+建立到
+
+neowayjsr.oicp.net,60010的连接,成功。
+
+
+### AT+TCPTRANS=220.199.66.56,6800
+
+
+```
+OK
+```
+
+
+
+### +TCPTRANS:FAIL
+
+建立到
+
+
+### 220.199.66.56,6800的连接,失败。
+
+
+### AT+TCPTRANS=220.199.66.56,6800
+
+
+
+### ERROR
+
+
+### AT指令格式错误或若已建立透传(TCP、UDP、TCP服务器)链接,再发
+
+
+### 送该指令会返回:ERROR。
+
+
+### AT+TCPTRANS=220.199.66.56,
+
+
+
+### ERROR
+
+
+### AT指令必选参数缺省。
+
+
+### AT+TCPTRANS=123.139.59.166,65536
+
+
+
+### +TCPTRANS: ERROR
+
+
+### AT指令参数范围错误。
+
+```
++TCPTRANS: Link Closed 连接被动断开上报格式。
+```
+
+
+### 8.2 AT+UDPTRANS–建立 UDP 透传连接
+
+
+### 建立UDP 透传连接。
+
+
+
+### ⚫ 建立UDP 透传链接后,向服务器发送数据,串口不显示发送的数据;
+
+
+### ⚫ 使用“+++”指令(不带回车换行)切换到命令模式;“ATO”指令切换到数据模式;
+
+⚫ 透传指令与其他非透传数据业务冲突,使用透传指令不要建立非透传数据业务。
+
+⚫ 来电、来短信会自动退出透传方式链接;
+
+⚫ 建议透传方式一次最多收发2048 字节数据;
+
+⚫ cfgt 与cfgp 需要同时设置,方可生效;
+
+
+### ⚫ 建立UDP 透传链接返回回码+UDPTRANS:OK 后,即可进行UDP 透传数据收发。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+UDPTRANS=<ip>,<port>[,<cfgt> <CR><LF>OK<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 8 章TCP/UDP 透传指令
+
+
+深圳市有方科技股份有限公司版权所有 101
+
+
+,cfgp]<CR> <CR><LF>+UDPTRANS: <result><CR><LF>
+
+Or
+
+
+### <CR><LF>+UDPTRANS: ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<ip> 目的IP 地址,必须是形如xx.xx.xx.xx 的输入,或者形如www.china.com(域名)。
+
+<port>
+
+<cfgt>
+
+<cfgp>
+
+
+### 目的端口号,必须是十进制的ASCII 码。
+
+没报数据发送等待时间,取值1-65535,默认100,单位ms
+
+数据包被发送门限值,取值1-2048,默认2048
+
+<ip> 目的IP 地址,必须是形如xx.xx.xx.xx 的输入,或者形如www.china.com(域名)。
+
+<result> 结果码
+
+
+### OK 建立成功
+
+
+### FAIL 建立失败
+
+示例
+
+
+### AT+UDPTRANS=220.199.66.56,6800
+
+
+```
+OK
+```
+
+
+
+### +UDPTRANS: OK
+
+
+### 建立 UDP透传链接,成功。
+
+
+#### `AT+UDPTRANS=neowayjsr.oicp.net,60010`
+
+
+```
+OK
+```
+
+
+
+### +UDPTRANS:OK
+
+
+### 用域名建立 UDP透传链接,成功。
+
+
+### AT+UDPTRANS=220.199.66.56,6800
+
+
+
+### ERROR
+
+
+### 若已建立透传(TCP、UDP、TCP服务器)链接,再发送该指令会返回:
+
+
+### ERROR。
+
+
+### AT+UDPTRANS=220.199.66.56,
+
+
+
+### ERROR
+
+
+### AT指令参数必选参数缺省。
+
+
+### AT+UDPTRANS=123.139.59.166,65536
+
+
+
+### +UDPTRANS: ERROR
+
+
+### AT指令参数范围错误。
+
+
+### AT+UDPTRANS=123.139.59.166,10115
+
+
+
+### +UDPTRANS: FAIL
+
+
+### 建立 UDP透传链接,失败
+
+
+
+### N706A AT 命令手册
+
+
+### 第 8 章TCP/UDP 透传指令
+
+
+深圳市有方科技股份有限公司版权所有 102
+
+
+
+### 8.3 AT+TCPACK–查询 TCP 透传链路发送数据状态
+
+
+### 查询TCP 透传链路发送成功的数据大小、接收方成功接收该链路的数据大小。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+TCPACK=<n><CR>
+
+
+### <CR><LF>+TCPACK:
+
+<n>,<data_sent>,<acked_recv><CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPACK: DISCONNECT<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPACK: NO TCP LINK<CR><LF>
+
+
+### 执行 AT+TCPACK<CR>
+
+
+### <CR><LF>+TCPACK:
+
+<data_sent>,<acked_recv><CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPACK: DISCONNECT<CR><LF>
+
+Or
+
+
+### <CR><LF>+TCPACK: NO TCP LINK<CR><LF>
+
+参数
+
+<n> 链路编号,只能为0~5。
+
+<data_send> 该链路发送成功的透明传输数据大小, 为无符号64 位整型数, 十进制ASCII 码表示,
+
+单位为字节。
+
+<acked_recv> 接收方接收成功的透明传输数据大小, 为无符号64 位整型数, 十进制ASCII 码表示,
+
+单位为字节。
+
+示例
+
+
+### AT+TCPACK
+
+
+
+### +TCPACK: 1024,1024
+
+
+### TCP透明传输方式, 发送成功1024字节数据, 对方接收成功1024
+
+字节数据
+
+
+### AT+TCPACK
+
+
+
+### +TCPACK: DISCONNECT
+
+未建立任何透明传输方式连接
+
+
+### AT+TCPACK
+
+
+### 建立的是 UDP透明传输方式连接
+
+
+
+### N706A AT 命令手册
+
+
+### 第 8 章TCP/UDP 透传指令
+
+
+深圳市有方科技股份有限公司版权所有 103
+
+
+
+### +TCPACK: NO TCP LINK
+
+
+### AT+TCPACK=6
+
+
+
+### ERROR
+
+参数超出范围
+
+
+### 8.4 +IPSTATUS–查询 TCP/UDP 链路状态
+
+
+### 查询TCP/UDP 透传链路状态。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+IPSTATUS<CR>
+
+
+### <CR><LF>+IPSTATUS:
+
+<state>[,<type>,<send-buffer-size>]<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<state> 链路状态
+
+
+### CONNECT 链路为链接状态
+
+
+### DISCONNECT 链路为断开状态
+
+<type> 链路类型(可选)
+
+TCP
+
+UDP
+
+<send-buffer-size> 模组内部可用的send buffer 的大小,十进制ASCII 码表,单位为字节(可选)
+
+示例
+
+
+### AT+IPSTATU
+
+
+
+### ERROR
+
+
+### AT指令格式错误,指令不完整
+
+
+### AT+IPSTATUS
+
+
+
+### +IPSTATUS:CONNECT,TCP,61440
+
+已建立 TCP透明传输方式连接,可用 buffer为 61440字节
+
+
+### AT+IPSTATUS
+
+
+
+### +IPSTATUS:CONNECT,UDP,61440
+
+已建立 UDP透明传输方式连接,可用 buffer为 61440字节
+
+
+### AT+IPSTATUS
+
+
+
+### +IPSTATUS:DISCONNECT
+
+未建立任何透明传输方式连接
+
+
+
+### N706A AT 命令手册
+
+
+### 第 8 章TCP/UDP 透传指令
+
+
+深圳市有方科技股份有限公司版权所有 104
+
+
+
+### 8.5 AT+TRANSCLOSE–关闭透传方式链接
+
+关闭透明传输方式链接。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+TRANSCLOSE<CR>
+
+<CR><LF>+TRANSCLOSE: <n>,OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+主动上
+
+报
+
+<CR><LF>+TCPTRANS: Link Closed<CR><LF>
+
+Or
+
+<CR><LF>+UDPTRANS: Link Closed<CR><LF>
+
+参数
+
+<n> 0 主动关闭TCP 透传方式链接。
+
+
+### 1 主动关闭UDP 透传方式链接。
+
+示例
+
+
+### AT+TRANSCLOSE
+
+
+
+### +TRANSCLOSE: 0,OK
+
+
+### 客户端主动关闭 TCP透传方式链接,成功
+
+
+### AT+TRANSCLOSE
+
+
+
+### ERROR
+
+
+### 未建立 TCP/UDP透传方式链接,失败
+
+
+```
++TCPTRANS: Link Closed
+```
+
+
+
+### 被动关闭 TCP透传方式链接
+
+```
++UDPTRANS: Link Closed 被动关闭 UDP透传方式链接
+```
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 105
+
+
+
+## 9 SSL TCP 数据业务
+
+
+### 9.1 AT+SSLTCPCFG–SSL TCP 配置参数
+
+
+### 配置SSL 加密选项。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+SSLTCPCFG=<type>,<type_
+
+name><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+SSLTCPCFG?<CR>
+
+
+### <CR><LF>+SSLTCPCFG:
+
+<sslversion>,<authmode>,<cacert>,<clientcert>,<clie
+
+ntkey>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+SSLTCPCFG=?<CR> <CR><LF>+SSLTCPCFG: <type>,<type_name>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<type> 配置SSL 选项。
+
+sslversion: SSL 协议版本
+
+authmode: 安全认证模式
+
+cacert: 根证书
+
+clientcert: 客户端证书
+
+clientkey: 客户端密匙
+
+<type_name> <type>和<type_name>参数的取值,对应关系如下:
+
+⚫ sslversion
+
+
+### 3:TLS1.2(默认)
+
+
+### 4:TLS1.3
+
+⚫ authmode
+
+0:No authentication,不需要设置cacert、clientcert、clientkey 等内容。
+
+1:Manage server authentication
+
+2:Manage server and client authentication if requested by the remote server
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 106
+
+
+⚫ cacert 根证书文件名
+
+⚫ clientcert 客户端证书文件名
+
+⚫ clientkey 客户端密匙文件名
+
+示例
+
+
+#### `AT+SSLTCPCFG=”sslversion”,0`
+
+
+```
+OK
+```
+
+设置 ssl的版本为 ssl3.0。
+
+
+#### `AT+SSLTCPCFG=”authmode”,0`
+
+
+```
+OK
+```
+
+设置认证方式为不认证。
+
+
+### AT+SSLTCPCFG?
+
+
+```
++SSLTCPCFG: 3,1,ca.pem,cc.pem,ck.pem
+```
+
+```
+OK
+```
+
+
+### 查询 SSL的当前配置。
+
+
+### AT+SSLTCPCFG=?
+
+
+```
++SSLTCPCFG: <type>,<type_name>
+```
+
+```
+OK
+```
+
+查询指令配置的范围。
+
+
+#### `AT+CERTDEL=ca.crt`
+
+
+```
+OK
+```
+
+
+#### `AT+SSLTCPCFG="cacert",ca.crt`
+
+
+
+### ERROR
+
+证书不存在
+
+
+#### `AT+SSLTCPCFG="sslversion",5`
+
+
+
+### ERROR
+
+参数超出范围
+
+
+### 9.2 AT+SSLTCPSETUP–建立 SSLTCP 连接
+
+
+### 建立SSL TCP 连接。
+
+建立透传时会与其他非透传数据业务冲突,使用透传指令不要建立非透传数据业务。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+SSLTCPSETUP=<n>,<ip>,<p
+
+ort>,<mode><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+<CR><LF>+SSLTCPSETUP: <n>,<status><CR><LF>
+
+Or
+
+
+### <CR><LF>CONNECT<CR><LF>
+
+Or
+
+
+### <CR><LF>+SSLTCPSETUP: ERROR<CR><LF>
+
+Or
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 107
+
+
+
+### <CR><LF>+SSLTCPSETUP: GPRS
+
+
+### DISCONNECTION<CR><LF>
+
+
+### 查询 AT+SSLTCPSETUP?<CR>
+
+<CR><LF>+SSLTCPSETUP: <n>,<ip>,
+
+<port>,<mode>
+
+[<CR><LF>+SSLTCPSETUP: <n>,<ip>,
+
+<port>,<mode>]…
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+SSLTCPSETUP=?<CR> <CR><LF>+SSLTCPSETUP: (value range
+
+of<n>),ip,port,mode<CR><LF>
+
+参数
+
+<n> 链路号,范围0-5,用来区分与服务器的连接
+
+<ip> 服务器的IP 地址/域名
+
+<port> 服务器的端口
+
+<mode> 传输模式
+
+0:非透传
+
+1:透传
+
+<status> OK
+
+
+### ERROR
+
+
+### AUTHFAIL
+
+
+### TRNAS EXIST
+
+
+### FAIL
+
+示例
+
+
+### AT+SSLTCPSETUP=0,183.239.240.45,4451,0
+
+
+```
+OK
+```
+
+
+
+### +SSLTCPSETUP: 0,OK
+
+在 socket 0上连接服务器,服务器 IP为 183.239.240.45,端口
+
+为 4451,传输模式为非透传。
+
+
+### AT+SSLTCPSETUP=0,183.239.240.45,4451,1
+
+
+
+### CONNECT
+
+在 socket 0上连接服务器,服务器 IP为 183.239.240.45,端口
+
+为 4451,传输模式为透传。
+
+
+### AT+SSLTCPSETUP=0,183.239.240.45,4451,0
+
+
+```
+OK
+```
+
+
+
+### +SSLTCPSETUP: 0,FAIL
+
+在 socket 0上连接服务器,服务器 IP为 183.239.240.45,端口
+
+为 4451,传输模式为非透传。
+
+建立连接失败,失败原因是连接服务器超时。
+
+
+### AT+SSLTCPSETUP=0,183.239.240.45,4451,0
+
+
+```
+OK
+```
+
+
+
+### +SSLTCPSETUP: 0,AUTHFAIL
+
+在 socket 0上连接服务器,服务器 IP为 183.239.240.45,端口
+
+为 4451,传输模式为非透传。
+
+建立连接失败,失败原因是认证不通过。
+
+
+### AT+SSLTCPSETUP?
+
+
+查询连接情况。
+
+在 socket 0、socket1上有 TCP连接,传输方式为非透传。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 108
+
+
+
+### +SSLTCPSETUP: 0,183.239.240.45,4451,0
+
+
+### +SSLTCPSETUP: 1,183.239.240.45,4452,0
+
+```
+OK
+```
+
+
+
+### AT+SSLTCPSETUP=1,123.139.59.166,10137,1
+
+
+```
+OK
+```
+
+
+
+### +SSLTCPSETUP: 1,TRNAS EXIST
+
+
+在 socket 0 上已经建立 1路透传,在 socket 1再建立透传,提
+
+示透传连接已存在,不支持多路透传
+
+
+### AT+SSLTCPSETUP=?
+
+
+```
++SSLTCPSETUP: (0-5),ip,port,mode
+```
+
+查询发送指令参数设置范围。
+
+
+### AT+XIIC?
+
+
+
+### +XIIC: 0,0.0.0.0
+
+
+### +XIIC: 0,0:0:0:0:0:0:0:0
+
+```
+OK
+```
+
+
+### AT+SSLTCPSETUP=0,123.139.59.166,10138,0
+
+
+
+### +SSLTCPSETUP: GPRS DISCONNECTION
+
+
+### 未激活 PPP连接
+
+
+### AT+SSLTCPSETUP=6,123.139.59.166,10138,0
+
+
+
+### +SSLTCPSETUP: ERROR
+
+参数超出范围
+
+
+#### `AT+SSLTCPSETUP=1,www.afsdfafaef.com,10138,0`
+
+
+```
+OK
+```
+
+
+
+### +SSLTCPSETUP: ERROR
+
+
+### DNS解析失败
+
+
+### 9.3 AT+SSLTCPCLOSE–SSL TCP 关闭连接指令
+
+
+### 关闭SSL TCP 连接。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+SSLTCPCLOSE=<n><CR>
+
+
+### <CR><LF>+SSLTCPCLOSE:
+
+<n>,<result><CR><LF>
+
+Or
+
+
+### <CR><LF>+SSLTCPCLOSE: ERROR
+
+主动上报 <CR><LF>+SSLTCPCLOSE: <socket_id>,Link Closed<CR><LF>
+
+参数
+
+<n> 链路号 0~5
+
+<result> OK
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 109
+
+
+
+### ERROR
+
+Link Closed
+
+示例
+
+
+### AT+SSLTCPCLOSE=0
+
+
+
+### +SSLTCPCLOSE: 0,OK
+
+关闭 socket 0上的连接。
+
+
+### AT+SSLTCPCLOSE=0
+
+
+
+### +SSLTCPCLOSE: ERROR
+
+链路 0被动断开。
+
+```
++SSLTCPCLOSE: 0,Link Closed 链路 0被动断开。
+```
+
+
+### 9.4 AT+SSLTCPSEND–SSL TCP 数据发送
+
+
+### SSL TCP 数据发送。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+SSLTCPSEND=<n>,<data_length><
+
+CR>
+
+
+### <CR><LF>> <CR>
+
+
+### <CR><LF>+SSLTCPSEND:
+
+<n>,<result><CR><LF>
+
+Or
+
+<CR><LF>+SSLTCPSEND: Data length
+
+error<CR><LF>
+
+测试 AT+SSLTCPSEND=?<CR> <CR><LF>+SSLTCPSEND: (value range
+
+of<n>),(value range of<data_length>)<CR><LF>
+
+参数
+
+<n> 范围0-5,用来区分与服务器的连接,与SSLTCPSETUP 指令n 值保持一致。
+
+<data_length> 要发送的数据长度,取值范围 1-4096。
+
+<result> OK
+
+
+### FAIL
+
+示例
+
+
+#### `AT+SSLTCPSEND=0,20 通过 socket 0发送 20字节内容到服务器。`
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 110
+
+
+>
+
+
+### +SSLTCPSEND: 0,OK
+
+
+### AT+SSLTCPSEND=0,1024
+
+
+>
+
+
+### +SSLTCPSEND: 0,FAIL
+
+发送失败。
+
+
+### AT+SSLTCPSEND=0,4097
+
+
+```
++SSLTCPSEND: Data length error
+```
+
+通过 socket 0发送 4097字节内容到服务器,长度太大导致发送失败。
+
+
+### AT+SSLTCPSEND=?
+
+
+
+### +SSLTCPSEND: (0-5),(1-4096)
+
+```
+OK
+```
+
+查询发送指令参数设置范围。
+
+
+### 9.5 +SSLTCPRECV–接收到 SSL TCP 数据
+
+
+### SSL TCP 数据接收。
+
+命令格式
+
+类型 命令
+
+主动上报 <CR><LF>+SSLTCPRECV: <socket_id>,<data_length>,<data><CR><LF>
+
+参数
+
+<socket_id> 范围0-5,用来区分与服务器的连接,与SSLTCPSETUP 指令socket 值保持一致。
+
+<data_length> 接收到的数据长度。
+
+<data> 接收到的数据内容。
+
+示例
+
+
+### +SSLTCPRECV: 1,20,12345678901234567890 在链路 0上接收到 20个字节内容。
+
+
+### 9.6 AT+CERTADD–添加 SSL 证书
+
+向模组写入证书。
+
+写入过程可以通过“+++”中断。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 111
+
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CERTADD=<file_name>,<length>
+
+
+### <CR>
+
+
+### <CR><LF>CONNECT
+
+<CR><LF>+CERTADD: <length>,OK<CR><LF>
+
+Or
+
+
+### <CR><LF>+CERTADD:
+
+
+### ERROR<CR><LF><CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<file_name> 写入模组的证书名称
+
+<length> 写入的长度
+
+示例
+
+
+#### `AT+CERTADD=ca_cert.pem,1428`
+
+
+
+### CONNECT
+
+
+### +CERTADD: 1428,OK
+
+向模组写入 ca_cert.pem证书,长度1428。
+
+
+#### `AT+CERTADD=client_cert.pem,1938`
+
+
+
+### CONNECT
+
+
+### +CERTADD: 1938,OK
+
+向模组写入 client_cert.pem证书,长度 1938。
+
+
+#### `AT+CERTADD=client_key.pem,1097`
+
+
+
+### CONNECT
+
+
+### +CERTADD: 1097,OK
+
+向模组写入 client_key.pem证书,长度 1097。
+
+
+#### `AT+CERTADD=ca.crt,102400`
+
+
+
+### +CERTADD: ERROR
+
+参数超出范围或内存申请失败
+
+
+#### `AT+CERTADD=ca.crt,1188,0`
+
+
+
+### ERROR
+
+指令个数错误
+
+
+### 9.7 AT+CERTCHECK–SSL 证书确认
+
+检查证书。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 112
+
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CERTCHECK=<file_name><CR>
+
+
+### <CR><LF>+CERTCHECK:
+
+<file_name>,OK<CR><LF>
+
+Or
+
+
+### <CR><LF>+CERTCHECK:
+
+
+### ERROR<CR><LF>
+
+
+### 查询 AT+CERTCHECK?<CR>
+
+[<CR><LF><file_name>]
+
+[<CR><LF><file_name>]
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<file_name> 要确认的证书名称。
+
+示例
+
+
+#### `AT+CERTCHECK=ca_cert.pem`
+
+
+```
++CERTCHECK: ca_cert.pem,OK
+```
+
+检测 ca_cert.pem证书。
+
+
+#### `AT+CERTCHECK=client_cert.pem`
+
+
+```
++CERTCHECK: client_cert.pem,OK
+```
+
+检测 client_cert.pem证书。
+
+
+#### `AT+CERTCHECK=client_key.pem`
+
+
+
+### +CERTCHECK: ERROR
+
+client_key.pem证书不存在。
+
+
+### AT+CERTCHECKT?
+
+
+cacert.pem
+
+keycert.pem
+
+```
+OK
+```
+
+查询已添加的文件。
+
+
+### 9.8 AT+CERTDEL–删除 SSL 证书
+
+删除证书。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CERTDEL[=<file_name>]<CR> <CR><LF>OK<CR><LF>
+
+Or
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 113
+
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<file_name> 要删除的证书名称
+
+示例
+
+
+#### `AT+CERTDEL=ca_cert.pem`
+
+
+```
+OK
+```
+
+删除 ca_cert.pem证书。
+
+
+#### `AT+CERTDEL=client_cert.pem`
+
+
+```
+OK
+```
+
+删除 client_cert.pem证书。
+
+
+#### `AT+CERTDEL=client_key.pem`
+
+
+```
+OK
+```
+
+删除 client_key.pem证书。
+
+
+### AT+CERTDEL
+
+
+```
+OK
+```
+
+删除全部已添加文件。
+
+
+### AT+CERTDEL
+
+
+```
+OK
+```
+
+删除全部已添加文件。
+
+
+### AT+CERTDE
+
+
+
+### ERROR
+
+指令不完整
+
+
+#### `AT+CERTDEL=ca.crt`
+
+
+
+### +CERTDEL: ERROR
+
+证书已删除或未写入该证书
+
+
+### 9.9 AT+SSLTCPCFGA–SSL TCP 配置参数
+
+
+### 配置SSL 加密选项。
+
+
+### 证书需要提前导入才能设置,导入证书指令参见 AT+CERTADD;证书可设置为空。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+#### `AT+SSLTCPCFGA=<sslversion>,`
+
+<authmode>,<cacert>,<clientcert>
+
+,<clientkey><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+SSLTCPCFGA?<CR> <CR><LF>+SSLTCPCFGA:
+
+<sslversion>,<authmode>,<cacert>,<clientcert>,
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 114
+
+
+<clientkey>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+SSLTCPCFGA=?<CR>
+
+
+### <CR><LF>+SSLTCPCFGA:
+
+<sslversion>,<authmode>,<cacert>,<clientcert>,<cl
+
+ientkey>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<sslversion> ssl 协议版本
+
+
+### 3:TLS1.2(默认)
+
+
+### 4:TLS1.3
+
+安全认证模式
+
+0:不认证服务器
+
+1:需要认证服务器
+
+<authmode> 2:双向认证
+
+<cacert> 根证书文件名
+
+<clientcert> 客户端证书文件名
+
+<clientkey> 客户端密匙文件名
+
+示例
+
+
+#### `AT+SSLTCPCFGA=3,1,"ca.pem","",""`
+
+
+```
+OK
+```
+
+
+### 设置 TLS1.2。
+
+需要认证服务器。
+
+设置 CA证书为ca.pem。
+
+其它证书为空。
+
+
+
+### AT+SSLTCPCFGA?
+
+
+```
++SSLTCPCFGA: 0,1,ca.pem,cc.pem,ck.pem
+```
+
+```
+OK
+```
+
+
+### 查询 SSL的当前配置。
+
+
+### AT+SSLTCPCFGA=?
+
+
+
+### +SSLTCPCFGA:
+
+<sslversion>,<authmode>,<cacert>,<clientcert>,<clientkey>
+
+```
+OK
+```
+
+查询指令参数设置范围
+
+
+### AT+SSLTCPCFGA=3,0
+
+
+
+### ERROR
+
+参数个数不是 5个
+
+
+#### `AT+SSLTCPCFGA=5,0,"ca.crt","client.crt","client.key"`
+
+
+
+### ERROR
+
+参数范围错误
+
+
+#### `AT+SSLTCPCFGA=3,0,"ca.crt","client.crt","client.key"`
+
+
+
+### ERROR
+
+证书没有写入
+
+
+### 9.10 AT+SSLTCPREAD–SSL TCP 数据读取
+
+
+### 读取SSL TCP 数据。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 115
+
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+SSLTCPREAD=<n>,<length>
+
+
+### <CR><LF>
+
+<CR><LF>+SSLTCPREAD: <id>,<len>,<data>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+SSLTCPREAD: ERROR<CR><LF>
+
+
+### <CR><LF>+SSLTCPREAD: SOCKET ID OPEN
+
+
+### FAILED<CR><LF>
+
+参数
+
+<n> 链路编号,只能为0~5。
+
+<length> 读取数据长度,1-2048。
+
+<len> 读取到的数据长度。
+
+<data> 读取到的数据。
+
+示例
+
+
+### AT+SSLTCPSETUP=0,58.60.184.213,12004,0
+
+
+```
+OK
+```
+
+
+### +SSLTCPSETUP: 0,OK
+
+
+### AT+SSLTCPSEND=0,10
+
+
+>
+
+
+### +SSLTCPSEND: 0,OK
+
+
+
+### +SSLTCPRECV: 0
+
+
+### AT+SSLTCPREAD=0,2048
+
+
+
+### +SSLTCPREAD: 0,10,1111111111
+
+```
+OK
+```
+
+在链路 0上收到数据。
+
+读取数据。
+
+读取到 10个数据为 1234567890。
+
+
+### AT+SSLTCPREAD=0,2049
+
+
+
+### +SSLTCPREAD: ERROR
+
+指令参数超出范围
+
+
+### AT+SSLTCPREAD=0,0
+
+
+
+### +SSLTCPREAD: SOCKET ID OPEN FAILED
+
+链路未建立
+
+
+### AT+SSLTCPREA=0,2048
+
+
+
+### ERROR
+
+指令不完整
+
+
+### 9.11 AT+SSLCIPHERSET–SSLTCP 去除弱算法
+
+去除弱算法。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 9 章 SSL TCP 数据业务
+
+
+深圳市有方科技股份有限公司版权所有 116
+
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+SSLCIPHERSET=<enable><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+SSLCIPHERSET?<CR>
+
+
+### <CR><LF>+SSLTCPCFGA:
+
+<enable><CR><LF><CR><LF>OK<CR
+
+
+### ><LF>
+
+
+### 测试 AT+ SSLCIPHERSET=?<CR> <CR><LF>OK<CR><LF>
+
+参数
+
+<enable> 整数类型,取值0-1
+
+0:关闭去除弱算法开关(默认)
+
+1:使能去除弱算法开关
+
+示例
+
+
+### AT+SSLCIPHERSET=1
+
+
+```
+OK
+```
+
+使能去除弱算法开关成功。
+
+
+### AT+SSLCIPHERSET?
+
+
+
+### +SSLCIPHERSET: 1
+
+
+```
+OK
+```
+
+查询当前设置。
+
+
+### AT+SSLCIPHERSET=?
+
+
+```
+OK
+```
+
+测试指令
+
+
+### AT+SSLCIPHERSET=2
+
+
+
+### ERROR
+
+
+### AT+SSLCIPHERSET=1,0
+
+
+
+### ERROR
+
+参数超出范围或参数个数不为 1
+
+
+
+### ⚫ 跟客户端模式的接收格式不同,多了符号“(S)”;
+
+⚫ 跟客户端的参数有所区别,请注意。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 10 章TCP 透明传输服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 117
+
+
+
+## 10 TCP 透明传输服务器指令
+
+
+### 10.1 AT+TCPSRVTRANS–透传方式 TCP 侦听
+
+设置服务器透传方式侦听功能。
+
+
+服务器透传方式发送TCP 数据之前,必须先与主站建立socket 连接;
+
+
+### 使用“+++”指令,切换到命令模式;“ATO”指令切换到数据模式;
+
+使用联通卡或者移动的专网卡可以进行调试使用,移动的公网卡不能作为服务器调试;
+
+透传指令与其他非透传数据业务冲突,使用透传指令不要建立非透传数据业务。
+
+
+### 只允许一个TCP 客户端连接到以透传方式建立的服务器, 这个TCP 客户端可以是透传方式或非透传
+
+方式的;
+
+cfgt 与cfgp 需要同时设置,方可生效;
+
+来电、来短信会自动断开主站链接。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+TCPSRVTRANS=<port>[[,<cfgt>]
+
+[,cfgp]]<CR> <CR><LF>+TCPSRVTRANS: <status><CR><LF>
+
+
+### 查询 AT+TCPSRVTRANS?<CR> <CR><LF>+TCPSRVTRANS:
+
+<status><CR><LF><CR><LF>
+
+参数
+
+<port>
+
+<cfgt>
+
+<cfgp>
+
+端口号
+
+没报数据发送等待时间,取值1-65535,默认500,单位ms
+
+数据包被发送门限值,取值1-2048,默认2048
+
+<status> Listening…
+
+bind error
+
+not listening
+
+
+
+### N706A AT 命令手册
+
+
+### 第 10 章TCP 透明传输服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 118
+
+
+listening status
+
+
+### GPRS DISCONNECTION 数据未激活
+
+```
+OK
+```
+
+示例
+
+
+### AT+TCPSRVTRANS=6800
+
+
+
+### +TCPSRVTRANS: OK
+
+侦听端口号 6800
+
+服务器透传方式侦听开始启动
+
+
+### AT+TCPSRVTRANS=6800
+
+
+```
++TCPSRVTRANS: bind error
+```
+
+绑定失败
+
+
+### AT+TCPSRVTRANS=6800
+
+
+```
++TCPSRVTRANS: Listening...
+```
+
+如果已经设置了侦听,再设置的话,会提示
+
+```
++TCPSRVTRANS: Listening...
+```
+
+
+### AT+TCPSRVTRANS?
+
+
+```
++TCPSRVTRANS: listening status
+```
+
+查询侦听状态,表示当前处于侦听
+
+
+### AT+TCPSRVTRANS?
+
+
+```
++TCPSRVTRANS: not listening
+```
+
+查询侦听状态,表示当前没有侦听
+
+Connect
+
+AcceptSocket=1,ClientAddr=119.123.77.133,ClientPort=8000
+
+
+收到主站连接请求,其中 AcceptSocket是主站跟模组建立的 socket,
+
+
+### 119.123.77.133是主站的 IP地址,8000是主站的端口号
+
+
+
+### AT+TCPSRVTRANS=6800
+
+
+
+### +TCPSRVTRANS: GPRS DISCONNECTION
+
+数据未激活
+
+
+### 10.2 AT+CLIENTSTATUS–查询透传主站链路的状态
+
+查询透传主站链路的状态。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CLIENTSTATUS<CR> <CR><LF>+CLIENTSTATUS: <state>,<type>,
+
+<send-buffer-size><CR><LF>
+
+参数
+
+<state> 链路状态
+
+
+### CONNECT 该链路为链接状态
+
+
+### DISCONNECT 该链路为断开状态
+
+
+
+### N706A AT 命令手册
+
+
+### 第 10 章TCP 透明传输服务器指令
+
+
+深圳市有方科技股份有限公司版权所有 119
+
+
+<type> 链路类型
+
+
+### 链路类型,取值为TCP
+
+<send-buffer-size> 模组内部可用的send buffer 的大小,十进制ASCII 码表示,单位为字节
+
+示例
+
+
+### AT+CLIENTSTATUS
+
+```
++CLIENTSTATUS: CONNECT,TCP,61440 已建立 TCP透传方式连接,可用 buffer为 61440字节
+```
+
+
+### AT+CLIENTSTATUS
+
+
+### +CLIENTSTATUS: DISCONNECT,TCP,
+
+61440
+
+未建立 TCP透传方式连接,可用 buffer为 61440字节
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 120
+
+
+
+## 11 FTP 指令
+
+
+### 11.1 AT+FTPLOGIN–登陆 FTP 服务器
+
+
+### 登录 FTP 服务器。
+
+
+
+### ⚫ FTP 功能不能与内部协议栈 TCP/UDP 功能同时使用。
+
+
+### ⚫ FTP 的读、写操作都必须在登陆之后才能进行。
+
+
+### ⚫ FTP 默认被动模式。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+FTPLOGIN=<ip>,<port>,<user>,<
+
+pwd>[,<ftpmode>][,<ftptype>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+<CR><LF>+FTPLOGIN: <result><CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+主动上报 <CR><LF>+FTPLOGIN: <result><CR><LF>
+
+<CR><LF>+FTP: Server Control Link Disconnect<CR><LF>
+
+参数
+
+<ip> FTP 服务器地址。
+
+<port> FTP 服务器端口号,一般为21。
+
+<user> 登录 FTP 服务器所需的用户名,长度不能超过100 个 ASCII 码,用户名中不能有
+
+逗号(“,”)
+
+<pwd> 登录FTP服务器所需的密码, 长度不能超过100 个ASCII码, 密码中不能有逗号 ( “,”)
+
+<ftpmode>
+
+<ftptype>
+
+
+### FTP 的模式选择,0:被动模式(PASV), 1:主动模式(PORT),默认被动模式。
+
+
+### 是否使用FTPS,
+
+
+### 0:FTP(默认);
+
+
+### 1:FTPS,显式连接;
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 121
+
+
+
+### 2:FTPS,隐式连接。
+
+<result> 结果码:
+
+
+### 若指令参数范围错误或DNS 解析失败,则返回ERROR
+
+
+### 若连接服务器失败则返回FAIL
+
+若FTP 已处于登录状态,则返回Have Logged In
+
+若上一次与FTP 相关的AT 指令未执行完,则返回AT Busy
+
+若登录成功,则返回User logged in
+
+若用户名或密码错导致登录失败,则返回530 Not logged in
+
+
+### 未建立PPP 时登录FTP 服务器时提示GPRS DISCONNECTION
+
+
+### SSL 初始化不正确、认证失败或者握手失败时提示SSL HANDSHAKE FAIL
+
+示例
+
+
+#### `AT+FTPLOGIN=219.134.179.52,21,user1,pwd2009`
+
+
+```
+OK
+```
+
+
+```
++FTPLOGIN: User logged in
+```
+
+登录服务器。
+
+
+#### `AT+FTPLOGIN=183.239.240.40,12150,pp,123`
+
+
+```
+OK
+```
+
+
+```
++FTPLOGIN: 530 Not logged in
+```
+
+用户名或密码错误,登录失败。
+
+
+#### `AT+FTPLOGIN=58.60.184.213,21,neoway,neoway`
+
+
+```
+OK
+```
+
+
+
+### +FTPLOGIN: FAIL
+
+
+### 登录 FTP服务器,指令执行超时,登录失败。
+
+```
++FTP: Server Control Link Disconnect FTP控制链路断开提示。
+```
+
+```
++FTP: Server Data Link Disconnect FTP数据链路断开。
+```
+
+
+### 11.2 AT+FTPLOGOUT–从 FTP 服务器注销
+
+
+### 从FTP 服务器注销。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+FTPLOGOUT<CR>
+
+<CR><LF>+FTPLOGOUT:User logged out
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>+CME ERROR: INVALID SOCKET ID<CR><LF>
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 122
+
+
+示例
+
+
+### AT+FTPLOGOUT
+
+
+```
++FTPLOGOUT:User logged out
+```
+
+```
+OK
+```
+
+
+### 退出 FTP服务器。
+
+
+### AT+FTPLOGOUT
+
+
+
+### +CME ERROR: INVALID SOCKET ID
+
+
+
+### ERROR
+
+
+### FTP不在线时退出 FTP服务器提示。
+
+
+### 11.3 AT+FTPGET–从 FTP 服务器下载数据
+
+
+### 从FTP 服务器下载数据。
+
+命令格式
+
+类型 命令 响应格式
+
+执行
+
+
+#### `AT+FTPGET=<dir&filenam`
+
+e>,<type>,<Content or
+
+Info>[,offset[,lenth]] <CR>
+
+
+### CR><LF>OK<CR><LF>
+
+Or
+
+<CR><LF>+FTPGET: <length>,<data>
+
+<CR><LF>+FTPGET: OK.total length is <n><CR><LF>
+
+Or
+
+<CR><LF>+FTPGET: Error Not Login<CR><LF>
+
+Or
+
+<CR><LF>+FTPGET: File Not Found<CR><LF>
+
+Or
+
+
+### <CR><LF>+FTPGET: DATA TRANS ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+主动上报 +FTPSTATE: <result>
+
+参数
+
+<dir&filename> 需要读取的文件路径和文件名,文件路径是相对于FTP 的根路径而言的。
+
+<type> 文件传输的模式。
+
+
+### 1:ASCII
+
+2:Binary
+
+<Content or Info> 指明需要得到的是文件内容还是文件(指定路径)的信息:
+
+1:获取文件内容
+
+2:获取文件长度
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 123
+
+
+<offset> 文件内容的偏移量
+
+<lenth> 本次读取文件内容的长度,取值范围1~8192 字节。
+
+<length> 数据长度
+
+<data> 数据内容
+
+<n> 数据读取成功,读取数据长度为n。
+
+示例
+
+
+### AT+FTPGET=,1,2
+
+
+```
+OK
+```
+
+
+```
++FTPGET: 446,drw-rw-rw- 1 user group
+```
+
+
+### 0 Apr 14 15:55 .
+
+drw-rw-rw- 1 user group 0
+
+Apr 14 15:55 ..
+
+-rw-rw-rw- 1 user group 1238528
+
+Jan 14 10:36 1M.doc
+
+-rw-rw-rw- 1 user group 10
+
+Jan 15 15:01 test.txt
+
+```
++FTPGET: OK.total length is 446
+```
+
+
+```
++FTP: Server Data Link Disconnect
+```
+
+获取根目录下的信息。
+
+
+#### `AT+FTPGET=test.txt,1,2`
+
+
+```
+OK
+```
+
+
+```
++FTPGET: 65,-rw-rw-rw- 1 user group
+```
+
+
+## 10 Jan 15 15:01 test.txt
+
+```
++FTPGET: OK.total length is 65
+```
+
+
+```
++FTP: Server Data Link Disconnect
+```
+
+获取文件 test.txt的信息。
+
+
+#### `AT+FTPGET=123.txt,1,1`
+
+
+```
++FTPGET: File Not Found
+```
+
+文件不存在。
+
+
+#### `AT+FTPPUT=test.txt,1,2,10`
+
+
+>
+
+
+### +FTPPUT: OK,10
+
+上传 10字节数据。
+
+
+#### `AT+FTPGET=test.txt,1,1`
+
+
+
+### +FTPGET: 10,0123456789
+
+```
++FTPGET: OK.total length is 10
+```
+
+
+```
++FTP: Server Data Link Disconnect
+```
+
+读取全部数据。
+
+
+#### `AT+FTPGET=test.txt,1,1,2`
+
+
+
+### +FTPGET: 8,23456789
+
+```
++FTPGET: OK.total length is 8
+```
+
+
+```
++FTP: Server Data Link Disconnect
+```
+
+从第二个字节开始,读取后面的全部数据。
+
+
+#### `AT+FTPGET=test.txt,1,1,2,4`
+
+
+
+### +FTPGET: 4,2345
+
+从第二个字节开始,读取 4个字节数据。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 124
+
+
+```
++FTPGET: OK.total length is 4
+```
+
+
+
+#### `AT+FTPGET="test_2M.txt",1,1,1024000,1000`
+
+
+### +FTPGET: DATA TRANS ERROR
+
+
+服务器拒绝文件下载
+
+
+### 11.4 AT+FTPPUT–向 FTP 服务器上传数据
+
+
+### 向FTP 服务器上传数据。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+FTPPUT=<filename>,<type>,
+
+<mode>[,<size>]<CR>
+
+非透传模式返回值
+
+<CR><LF>+FTPPUT: OK,<size><CR><LF>
+
+透传模式返回值
+
+
+### <CR><LF>CONNECT
+
+<CR><LF>+FTPPUT: OK,<size><CR><LF>
+
+Or
+
+<CR><LF>+FTPPUT:Error Not Login<CR><LF>
+
+Or
+
+<CR><LF>+FTPPUT:AT Busy<CR><LF>
+
+Or
+
+<CR><LF>+FTPPUT:SIZE Error(非透传模式)
+
+Or
+
+<CR><LF>+FTPPUT:OK,<n><CR><LF>
+
+Or
+
+<CR><LF>+FTPPUT: Delete File OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+⚫ 透传模式中,数据传输完成后,通过输入+++(不带回车换行),结束本次上传流程
+
+⚫ 透传模式中,可以通过输入+++(不带回车换行),随时结束本次上传流程
+
+参数
+
+<filename> 需要上传文件的文件名
+
+
+### 文件路径是相对于FTP 的根路径而言的。
+
+<type> 文件传输模式
+
+
+### 1:ASCII
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 125
+
+
+2:Binary
+
+<mode> 操作模式
+
+
+### 1:STOR 模式。在服务器上创建文件将数据写入,如果文件已存在,则覆盖原文件
+
+
+### 2:APPE 模式。在服务器上创建文件将数据写入,如果文件已存在,则将数据附件在
+
+文件尾部。
+
+
+### 3:DELE 模式。删除一个文件
+
+<size> 数据长度,最大长度不得超过8192 最小不能小于1,省略后为透传模式。
+
+<n> 发送文件的长度。
+
+
+⚫ 若上一次与 FTP 相关的 AT 指令未执行完,则返回+FTPPUT:AT Busy
+
+⚫ +++(不带回车换行)指令退出透传模式,结束上传流程;
+
+⚫ 若上传文件较大,采用透传模式,会导致端口一直被占用。影响其他命令的收发。建议采用 buffer
+
+
+### 模式进行传输,大文件情况下,采用APPE 模式,进行分包上传。
+
+示例
+
+
+#### `AT+FTPPUT=test.txt,1,1,10`
+
+
+> 1234567890
+
+
+### +FTPPUT:OK,10
+
+说明:上传文件 test.txt,长度 10,文件传输模式为 ASCII 方式,操作模
+
+
+### 式为 STOR模式。
+
+
+
+#### `AT+FTPPUT=test.txt,1,2,10`
+
+
+> 1234567890
+
+
+### +FTPPUT:OK,10
+
+上传文件 test.txt,长度 10,文件传输模式为 ASCII 方式,操作模
+
+
+### 式为 APPE模式。
+
+
+
+#### `AT+FTPPUT=test.txt,1,3,0`
+
+
+```
++FTPPUT: Delete File OK
+```
+
+删除 test.txt文件。
+
+
+
+#### `AT+FTPPUT=test.txt,1,1`
+
+
+
+### CONNECT
+
+1234567890
+
+
+### +FTPPUT:OK,10
+
+透传模式,上传文件 test.txt,长度 10,文件传输模式为 ASCII 方式,操作模式
+
+
+### 为 STOR模式。
+
+
+#### `AT+FTPPUT=test.txt,1,2`
+
+
+
+### CONNECT
+
+1234567890
+
+
+### +FTPPUT:OK,10
+
+透传模式,上传文件 test.txt,长度 10,文件传输模式为 ASCII 方式,操作模式
+
+
+### 为 APPE模式。
+
+
+#### `AT+FTPPUT=test.txt,1,3`
+
+
+```
++FTPPUT: Delete File OK
+```
+
+透传模式,删除 test.txt文件。
+
+
+### 11.5 AT+FTPSIZE–获取 FTP 文件大小
+
+
+### 查询FTP 服务器上的指定文件的大小。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 126
+
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+FTPSIZE=<filename><CR>
+
+<CR><LF>+FTPSIZE: <size>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+<CR><LF>+FTPSIZE: File Not Found<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<filename>
+
+<size>
+
+需要上传文件的文件名。
+
+文件实际大小。
+
+示例
+
+
+#### `AT+TPSIZE=test_500k.txt`
+
+
+
+### +FTPSIZE:512000
+
+```
+OK
+```
+
+查询到文件大小为 512000字节。
+
+
+#### `AT+FTPSIZE =test.txt`
+
+
+```
++FTPSIZE:File Not Found
+```
+
+需要查询的文件不存在。
+
+
+#### `AT+FTPSIZE=test_500.txt,100`
+
+
+
+### ERROR
+
+指令格式不正确。
+
+
+### 11.6 AT+FTPSTATUS–查询 FTP 链路状态
+
+
+### 查询FTP 链路状态。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+FTPSTATUS<CR> <CR><LF>+FTPSTATUS: <status>,<ip>,<port><CR><LF>
+
+参数
+
+<status> 0:表示未连接FTP
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 127
+
+
+
+### 1:表示连接了FTP
+
+<ip> FTP 服务器IP
+
+<port> FTP 服务器端口
+
+示例
+
+
+### AT+FTPSTATUS
+
+
+
+### +FTPSTATUS:1,119.139.221.66,21
+
+
+### 查询 FTP链路状态
+
+
+### 建立了 FTP的连接,显示服务器的 IP和端口号
+
+
+### AT+FTPSTATUS
+
+
+
+### +FTPSTATUS:0,0.0.0.0,21
+
+
+### 查询 FTP链路状态
+
+
+### 未建立 FTP的连接
+
+
+### 11.7 AT+FTPSCFG–FTPS 配置参数
+
+
+### 配置SSL 加密选项
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+FTPSCFG=<type>,<type_name><
+
+CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>+FTPCFG: ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+FTPSCFG?<CR>
+
+<CR><LF>+FTPSCFG:<sslversion>,<authmode>,<c
+
+acert>,<clientcert>,<clientkey>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+FTPSCFG=?<CR> <CR><LF>+FTPSCFG:<type>,<type_name>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<type> 配置SSL 选项。
+
+sslversion: SSL 协议版本
+
+authmode: 安全认证模式
+
+cacert: CA 证书
+
+clientcert:客户端证书
+
+clientkey:客户端密匙
+
+<type_name> <type>和<type_name>参数的取值,对应关系如下
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 128
+
+
+sslversion
+
+
+### 3:TLS1.2
+
+
+### 4:TLS1.3
+
+authmode
+
+0:No authentication
+
+1:Manage server authentication
+
+2:Manage server and client authentication if requested by the remote server
+
+cacert string,CA 证书
+
+clientcert string,客户端证书文件名
+
+clientkey string,客户端密匙文件名
+
+
+如果authmode 为0,则不需要设置cacert、clientcert、clientkey 等内容。
+
+示例
+
+
+#### `AT+FTPSCFG=”sslversion”,0`
+
+```
+OK
+```
+
+设置 SSL的版本为 ssl3.0。
+
+
+#### `AT+FTPSCFG=”authmode”,0`
+
+```
+OK
+```
+
+设置认证方式为不认证。
+
+
+#### `AT+FTPSCFG=”cacert”,ca.pem`
+
+```
+OK
+```
+
+
+### 设置 CA证书名称(需提前添加证书)。
+
+
+### AT+FTPSCFG?
+
+```
++FTPSCFG:0,1,ca.pem,cc.pem,ck.pem
+```
+
+```
+OK
+```
+
+
+### 查询 SSL的当前配置。
+
+
+### AT+FTPSCFG=?
+
+```
++FTPSCFG: <type>,<type_name>
+```
+
+```
+OK
+```
+
+查询指令配置的范围。
+
+
+### 11.8 AT+FILEFTPGET–文件系统内下载文件
+
+下载文件到文件系统,支持偏移量下载。
+
+
+### 下载时,需确保文件系统内有足够空间,可使用AT+FSLS命令,查询剩余空间大小。
+
+
+### 下载前,先通过+FTPLOGIN 指令建立FTP 链接。
+
+
+### 下载后,可通过+FTPLOGOUT 指令断开FTP 链接。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 129
+
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+FILEFTPGET=<dir&filename>[,<local_na
+
+me>][,<offset>][,<length>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### <CR><LF>+FILEFTPSTAT:
+
+1,<total><CR><LF>
+
+Or
+
+
+### <CR><LF>OK<CR><LF>
+
+<CR><LF>+FILEFTPGET: File Not
+
+Found<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+FILEFTPGET?<CR> <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+FILEFTPGET=?<CR> <CR><LF>OK<CR><LF>
+
+
+
+### ⚫ 若执行指令格式不正确或未登录,则返回<CR><LF>ERROR<CR><LF>。
+
+
+### ⚫ 执行指令格式无误,则先返回<CR><LF>OK<CR><LF
+
+参数
+
+<dir&filename> 需要读取的文件路径和文件名。
+
+
+### 文件路径是相对于 FTP 的根路径而言的
+
+<local_name> 本地缓存文件的名称
+
+缺省时本地缓存的文件名为<dir&filename>参数中的文件名不包含路径
+
+<offset> 文件内容的偏移量
+
+0-2097152
+
+缺省时默认值为0
+
+<length> 本次读取文件内容的长度,字节,取值范围1~20480
+
+<lenth>缺省时下载offset 到文件末尾的所有内容
+
+省略<offset>和<lenth>参数,为全文件下载
+
+<total> 文件总大小
+
+示例
+
+
+#### `AT+FILEFTPGET="777.txt"`
+
+
+```
+OK
+```
+
+
+
+### +FILEFTPSTAT: 1,2059
+
+下载 777.txt文件
+
+
+#### `AT+FILEFTPGET="test.txt"`
+
+
+```
+OK
+```
+
+
+文件不存在
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 130
+
+
+
+### 11.9 AT+FILEFTPPUT–向 FTP 服务器上传文件
+
+
+### 向FTP 服务器上传本地文件。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+FILEFTPPUT=<filename>[,<of
+
+fset> [,<length>]]<CR>
+
+```
+OK
+```
+
+<CR><LF>+FILEFTPSTAT:<result>,<len><CR><L
+
+F>
+
+Or
+
+
+### ERROR<CR><CF>
+
+
+上传文件需确认本地文件是否存在。
+
+
+### 可用AT+FSLIST?查看本地文件列表。
+
+响应时间
+
+```
+OK 与ERRER 返回时间300ms。上传结果异步上报,根据文件大小和网络状态返回时间不定。
+```
+
+参数
+
+<filename> 需要上传文件的本地文件名
+
+<offset> 文件偏移量
+
+0-2097152
+
+<length> 发送文件长度
+
+1-8192
+
+<result> 上传结果
+
+0:失败
+
+1:成功
+
+<len> 已上传的文件长度
+
+```
++FILEFTPGET: File Not Found
+```
+
+
+### AT+FILEFTPGET=""
+
+
+
+### ERROR
+
+
+### 参数错误返回 ERROR
+
+
+
+### N706A AT 命令手册
+
+
+### 第 11 章FTP 指令
+
+
+深圳市有方科技股份有限公司版权所有 131
+
+
+示例
+
+
+#### `AT+FILEFTPPUT="test.txt"`
+
+```
+OK
+```
+
+
+
+### +FILEFTPSTAT: 1,51000
+
+上传本地的 test.txt文件
+
+
+上传成功,共计 51000字节
+
+
+#### `AT+FILEFTPPUT="test.bin"`
+
+```
+OK
+```
+
+
+
+### +FILEFTPSTAT: 0,1024
+
+上传 test.bin文件,上传失败,已上传 1024字节
+
+
+### AT+FILEFTPPUT="1111"
+
+
+### ERROR 上传失败,本地文件不存在或者参数错误,FTP未登录等
+
+
+#### `AT+FILEFTPPUT=test.txt,100,100`
+
+```
+OK
+```
+
+
+
+### +FILEFTPSTAT: 1,100
+
+上传偏移量为 100,大小为 100的 test.txt文件
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 132
+
+
+
+## 12 HTTP/HTTPS 指令
+
+
+### 12.1 AT+HTTPPARA–HTTP 参数设置
+
+
+### 设置HTTP 命令参数。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+HTTPPARA=<para>,<para_value><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<para> http 参数,支持以下参数设置。
+
+url:目标路径
+
+port:目标端口号(未设置缺省值)
+
+keepalive:设置长连接,HTTP 协议长连接,para_value 默认值为0,para_value 为
+
+1 时为长连接。
+
+recvmode: 接收模式,para_value=0 默认接收模式,一个 HTTP 响应只包含一个
+
+```
++HTTPRECV:头表示;para_value=1,数据以+HTTPRECV: <length>,<data>形
+```
+
+式呈现。
+
+<para_value> 对应<para 的值,其中url 参数值最大为2048 个字节,url 支持域名解析。
+
+示例
+
+
+#### `AT+HTTPPARA=url,”www.neoway.com.cn/en/index.aspx”`
+
+
+```
+OK
+```
+
+设置 URL为 neoway主页,URL支持域名解析.
+
+
+
+#### `AT+HTTPPARA=url,”121.15.200.97/Service1.asmx/GetNote”`
+
+
+```
+OK
+```
+
+
+### 设置 URL.
+
+
+
+#### `AT+HTTPPARA=url,`
+
+
+
+### ERROR
+
+
+### AT指令格式错误,参数不完整.
+
+
+
+#### `AT+HTTPPARA=port,80`
+
+
+设置目标端口号为 80.
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 133
+
+
+```
+OK
+```
+
+
+#### `AT+HTTPPARA=port,8080`
+
+
+```
+OK
+```
+
+设置目标端口号为 8080.
+
+
+
+### 12.2 AT+HTTPSETUP–HTTP 链路建立
+
+
+### 建立HTTP 链接。
+
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+HTTPSETUP<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>+HTTPSETUP: FAIL<CR><LF>
+
+Or
+
+
+### <CR><LF>+HTTPSETUP: ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+HTTPSETUP: OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+无
+
+示例
+
+
+### AT+HTTPSETUP
+
+
+```
+OK
+```
+
+
+### 建立 HTTP链接成功.
+
+
+### AT+HTTPSETUP
+
+
+
+### +HTTPSETUP: FAIL
+
+
+### 建立 HTTP链接失败.
+
+
+### AT+HTTPSETUP
+
+
+### HTTP连接已建立
+
+
+⚫ 正确设置目标地址和端口号才能链接成功。
+
+
+### ⚫ HTTP 链路建立之前要确保PPP 拨号(AT+XIIC=1)成功。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 134
+
+
+
+### +HTTPSETUP: OK
+
+
+### AT+HTTPSETUP
+
+
+
+### ERROR
+
+
+### 无网状态上报 ERROR
+
+
+### AT+HTTPSETUP
+
+
+
+### +HTTPSETUP: ERROR
+
+
+### DNS解析失败上报+HTTPSETUP: ERROR
+
+
+### 12.3 AT+HTTPACTION–HTTP 发送请求
+
+
+### 执行HTTP 请求。
+
+命令格式
+
+类型 命令 响应格式
+
+执行
+
+⚫ AT+HTTPACTION=<mode>[,<len
+
+gth>[,<type>]]<CR>
+
+⚫ AT+HTTPACTION=<mode>[,<off
+
+set>,<size>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+HTTPACTION:SOCKET ID OPEN
+
+
+### FAILED<CR><LF>
+
+Or
+
+
+### <CR><LF>+HTTPSEND: ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+HTTPACTION: OPERATION
+
+
+### EXPIRED<CR><LF>
+
+Or
+
+
+### <CR><LF>+ HTTPACTION: ERROR<CR><LF>
+
+参数
+
+<mode> HTTP 请求方式,可取值为0,1,2,99.
+
+
+### 0:GET
+
+
+### 1:HEAD
+
+
+### 2:POST
+
+
+### 99:OPEN_MODE,用户自己定义报文模式
+
+<length> POST 内容长度或自定义报文长度,在<mode>为POST 和OPEN_MODE 时必须
+
+设置,最大长度为2048
+
+<type> POST 请求的数据类型
+
+0:x-www-form-urlencoded
+
+1:text
+
+2:json
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 135
+
+
+3:xml
+
+4:html
+
+<offset> 偏移量,通过GET 方式下载文件时,可以指定下载起始位置
+
+<size> 下载长度,通过GET 方式下载文件时,可以指定下载长度
+
+
+
+### ⚫ 用户自定义报文时需遵循HTTP 协议;
+
+
+### ⚫ HTTP 请求方式设置为自定义报文模式时,输入报文结尾需要加一个回车换行。
+
+示例
+
+
+#### `AT+HTTPPARA=url,”www.neoway.com.cn/en/index.aspx”`
+
+
+```
+OK
+```
+
+
+### AT+HTTPSETUP
+
+
+```
+OK
+```
+
+
+### AT+HTTPACTION=0
+
+
+```
+OK
+```
+
+
+
+### +HTTPRECV:
+
+
+### HTTP/1.1 200 OK
+
+Cache-Control: private
+
+Content-Type: text/html; charset=utf-8
+
+Server: Microsoft-IIS/7.5
+
+Set-Cookie: ASP.NET_SessionId=rh3fjg554ufzb145aevgzz45;
+
+path=/; HttpOnly
+
+X-AspNet-Version: 2.0.50727
+
+X-Powered-By: ASP.NET
+
+X-UA-Compatible: IE=EmulateIE7
+
+Date: Thu, 28 Nov 2013 03: 06: 57 GMT
+
+Connection: close
+
+Content-Length: 13842
+
+
+/*neoway主页内容,html格式,13842个字节*/
+
+……..
+
+/* neoway主页内容*/
+
+
+```
++HTTPCLOSED: HTTP Link Closed
+```
+
+设置目标路径,默认端口为 80.
+
+
+
+### 建立 HTTP链接.
+
+
+
+### GET方式请求.
+
+
+
+### 收到 HTTP服务器的响应.
+
+
+主动上报,服务器响应完毕,断开链接.
+
+
+#### `AT+HTTPPARA=url,”www.neoway.com.cn/en/index.aspx”`
+
+
+```
+OK
+```
+
+
+### AT+HTTPSETUP
+
+
+```
+OK
+```
+
+
+### AT+HTTPACTION=1
+
+
+```
+OK
+```
+
+
+
+### +HTTPRECV:
+
+设置目标路径,默认端口为 80.
+
+
+
+### 建立 HTTP链接.
+
+
+
+### HEAD方式请求.
+
+
+
+### HTTP服务器响应.
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 136
+
+
+
+### HTTP/1.1 200 OK
+
+Cache-Control: private
+
+Content-Length: 13842
+
+Content-Type: text/html; charset=utf-8
+
+Server: Microsoft-IIS/7.5
+
+Set-Cookie: ASP.NET_SessionId=znt4fqabqsuclz55pvfufn55;
+
+path=/; HttpOnly
+
+X-AspNet-Version: 2.0.50727
+
+X-Powered-By: ASP.NET
+
+X-UA-Compatible: IE=EmulateIE7
+
+Date: Thu, 28 Nov 2013 03: 32: 35 GMT
+
+Connection: close
+
+
+```
++HTTPCLOSED: HTTP Link Closed
+```
+
+
+
+#### `AT+HTTPPARA=url,”121.15.200.97/Service1.asmx/GetNote”`
+
+```
+OK
+```
+
+
+#### `AT+HTTPPARA=port,8080`
+
+
+```
+OK
+```
+
+
+### AT+HTTPSETUP
+
+
+```
+OK
+```
+
+
+### AT+HTTPACTION=2,25
+
+
+
+### >MAC=NEOWAY&DATA=0123456
+
+
+```
+OK
+```
+
+
+
+### +HTTPRECV:
+
+
+### HTTP/1.1 200 OK
+
+Cache-Control: private, max-age=0
+
+Content-Type: text/xml; charset=utf-8
+
+Server: Microsoft-IIS/7.5
+
+X-AspNet-Version: 4.0.30319
+
+X-Powered-By: ASP.NET
+
+Date: Thu, 28 Nov 2013 03: 41: 52 GMT
+
+Connection: close
+
+Content-Length: 98
+
+
+<?xml version="1.0" encoding="utf-8"?>
+
+<string xmlns="http: //wsliu.cn/">NEOWAY+0123456
+
+</string>
+
+
+```
++HTTPCLOSED: HTTP Link Closed
+```
+
+
+### 设置 URL.
+
+
+设置目标端口号为 8080.
+
+
+
+### 建立 HTTP链接.
+
+
+
+### POST方式请求,POST发送 25个字节;“>”出现
+
+后,输入需要上传的内容.
+
+
+收到服务器响应.
+
+
+
+### 服务器回复包含上传内容 NEOWAY和 0123456
+
+的 xml文件.
+
+
+服务器响应完毕主动断开.
+
+
+#### `AT+HTTPPARA=url,”www.neoway.com.cn/en/index.aspx”`
+
+
+```
+OK
+```
+
+
+### AT+HTTPSETUP
+
+
+```
+OK
+```
+
+
+### AT+HTTPACTION=99,76
+
+
+>HEAD /en/index.aspx HTTP/1.1
+
+connection: close
+
+```
+HOST: www.neoway.com.cn
+```
+
+
+```
+OK
+```
+
+
+### 设置 URL.
+
+
+
+### 默认端口 80进行 HTTP链接.
+
+
+用户自定义报文方式请求发送 76个字节的报文.
+
+
+收到服务器响应.
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 137
+
+
+
+### +HTTPRECV:
+
+
+### HTTP/1.1 200 OK
+
+Cache-Control: private
+
+Content-Length: 13842
+
+Content-Type: text/html; charset=utf-8
+
+Server: Microsoft-IIS/7.5
+
+Set-Cookie: ASP.NET_SessionId=pvlaai3fizxg44eyvyqsyenk;
+
+path=/; HttpOnly
+
+X-AspNet-Version: 2.0.50727
+
+X-Powered-By: ASP.NET
+
+X-UA-Compatible: IE=EmulateIE7
+
+Date: Thu, 28 Nov 2013 05: 40: 24 GMT
+
+Connection: close
+
+
+```
++HTTPCLOSED: HTTP Link Closed
+```
+
+
+服务器响应完毕主动关闭链路.
+
+
+### AT+HTTPACTION=0
+
+
+
+### +HTTPACTION:SOCKET ID OPEN FAILED
+
+
+### PPP未打开或 SOC链路出错.
+
+
+### AT+HTTPACTION=0
+
+
+
+### +HTTPSEND: ERROR
+
+数据发送失败.
+
+
+#### `AT+HTTPACTION=2,adasd`
+
+
+
+### ERROR
+
+其他错误.
+
+
+### AT+HTTPACTION=99,70
+
+
+>
+
+
+
+### +HTTPACTION: OPERATION EXPIRED
+
+输入超时
+
+
+### 12.4 AT+HTTPCLOSE–HTTP 链路主动关闭
+
+
+### 关闭HTTP 链接。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+HTTPCLOSE<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+主动上报 +HTTPCLOSE: <result>
+
+参数
+
+<result> HTTP Link Closed 链路已关闭
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 138
+
+
+
+### ⚫ 执行+HTTPCLOSE 命令,在关闭HTTP 链路的同时,会清除+HTTPPARA 命令设置的参数;
+
+
+### ⚫ 当HTTP 链路处于未连接状态执行关闭仅返回 OK,无主动上报关闭回码。
+
+示例
+
+
+### AT+HTTPCLOSE
+
+
+```
+OK
+```
+
+
+```
++HTTPCLOSE: HTTP Link Closed
+```
+
+
+### 关闭 HTTP链路.
+
+
+### AT+HTTPCLOSE
+
+
+### OK 执行命令返回 OK.
+
+
+### 12.5 +HTTPRECV–HTTP 数据接收
+
+
+### 主动上报HTTP 链路接收的数据。
+
+命令格式
+
+类型 命令
+
+主动上报 <CR><LF>+HTTPRECV: <datas>
+
+<CR><LF>+HTTPRECV: <length>,<datas>
+
+参数
+
+<length> 数据长度。
+
+<datas> HTTP 链路接收到的数据。
+
+示例
+
+
+### +HTTPRECV: HTTP/1.1 200 OK
+
+Cache-Control: private
+
+Content-Length: 13842
+
+Content-Type: text/html; charset=utf-8
+
+Server: Microsoft-IIS/7.5
+
+Set-Cookie: ASP.NET_SessionId=pvlaai3fizxg44eyvyqsyenk; path=/;
+
+HttpOnly
+
+X-AspNet-Version: 2.0.50727
+
+X-Powered-By: ASP.NET
+
+X-UA-Compatible: IE=EmulateIE7
+
+Date: Thu, 28 Nov 2013 05:40:24 GMT
+
+Connection: close
+
+
+### 主动上报 HTTP链路接收到数据。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 139
+
+
+```
++HTTPCLOSED: HTTP Link Closed
+```
+
+```
++HTTPRECV: 803,HTTP/1.1 206 Partial Content
+```
+
+Cache-Control: no-cache
+
+Connection: Keep-Alive
+
+Content-Length: 10
+
+Content-Range: bytes 0-9/14615
+
+Content-Type: text/html
+
+Date: Tue, 10 Jul 2018 00:55:30 GMT
+
+Etag: "5b3c3650-3917"
+
+Last-Modified: Wed, 04 Jul 2018 02:52:00 GMT
+
+P3p: CP=" OTI DSP COR IVA OUR IND COM "
+
+Pragma: no-cache
+
+Server: BWS/1.1
+
+Set-Cookie: BAIDUID=F18E6894A34321D8CF9AAF28C14FACC9:FG=1;
+
+expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/;
+
+domain=.baidu.com
+
+Set-Cookie: BIDUPSID=F18E6894A34321D8CF9AAF28C14FACC9; expires=Thu,
+
+31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com
+
+Set-Cookie: PSTM=1531184130; expires=Thu, 31-Dec-37 23:55:55 GMT;
+
+max-age=2147483647; path=/; domain=.baidu.com
+
+Vary: Accept-Encoding
+
+X-Ua-Compatible: IE=Edge,chrome=1
+
+
+
+### <!DOCTYPE
+
+
+### RECVMODE设为 1时,接收数据的格
+
+式。
+
+
+### 12.6 AT+HTTPGET–HTTP 下载文件
+
+
+### HTTP 下载文件。
+
+
+
+### ⚫ 该命令为异步命令,执行完后返回OK,下载、解压、校验过程均为后台进行;
+
+⚫ 当省略<check_type>,<check_value>两个参数时,下载完成后,不进行任何校验动作;
+
+
+### ⚫ 下载、校验、解压结果上报,通过+HTTPGETSTAT命令上报,详情见该命令定义。
+
+⚫ 为了节省模组空间,使用该指令会删除上一次使用该指令下载到 flash 的文件。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+HTTPGET=<type>[,<check_ty
+
+pe>,<check_value>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 140
+
+
+参数
+
+<type> 解压方式
+
+0:不解压(默认)
+
+1:zip(暂不支持)
+
+2~99 预留
+
+<check_type> 压缩包完整性校验类型
+
+
+### 0: MD5 (默认)
+
+1~99 预留
+
+<check_value> 校验码,配合<check_type>中选定的校验类型一起使用。
+
+示例
+
+
+#### `AT+HTTPPARA=url, mybank.icbc.com.cn/icbc/perbank/index.jsp`
+
+
+```
+OK
+```
+
+
+### AT+HTTPGET=0
+
+
+```
+OK
+```
+
+
+
+### +HTTPGETRPT: 10
+
+
+
+### AT+HTTPGET=1
+
+
+```
+OK
+```
+
+
+
+### +HTTPGETRPT: 20
+
+
+
+#### `AT+HTTPGET=1,0,eaf84487e190bc79af55c972bbc63e3f`
+
+
+```
+OK
+```
+
+
+
+### +HTTPGETRPT: 30,303
+
+
+#### `AT+HTTPGET=1,0,eaf84487e190bc79af55c972bbc63e3f`
+
+
+```
+OK
+```
+
+
+
+### +APHTTPGETRPT: 31
+
+下载文件。
+
+
+### 12.7 +HTTPGETRPT–主动上报下载结果
+
+
+### 主动上报HTTP GET 结果。
+
+
+
+### ⚫ 该命令指示AT+HTTPGET 命令的运行结果,根据命令的不同阶段,进行结果指示主动上报。
+
+⚫ 下载、校验、解压,不同的阶段,上报不同的结果码。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 141
+
+
+命令格式
+
+类型 命令
+
+主动上报 <CR><LF>+ HTTPGETRPT: <state_type>[,<err_code>]<CR><LF>
+
+参数
+
+<state_type> 状态类型
+
+10:下载成功
+
+11:下载失败
+
+20:解压成功
+
+21:解压失败
+
+30:校验成功
+
+31:校验失败
+
+<err_code> HTTP GET 过程中遇到的错误响应。
+
+301 永久地传送
+
+302 找到
+
+303 参见其他
+
+304 未改动
+
+305 使用代理
+
+307 暂时重定向
+
+400 错误请求
+
+401 未授权
+
+402 要求付费
+
+403 禁止
+
+404 未找到
+
+405 不允许的方法
+
+406 不被采纳
+
+407 要求代理授权
+
+408 请求超时
+
+409 冲突
+
+410 过期的
+
+411 要求的长度
+
+412 前提不成立
+
+413 请求实例太大
+
+
+### 414 请求URI 太大
+
+415 不支持的媒体类型
+
+416 无法满足的请求范围
+
+417 失败的预期
+
+500 内部服务器错误
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 142
+
+
+501 未被使用
+
+502 网关错误
+
+503 不可用的服务
+
+504 网关超时
+
+
+## 505 HTTP 版本未被支持
+
+示例
+
+
+#### `AT+HTTPPARA=url, mybank.icbc.com.cn/icbc/perbank/index.jsp`
+
+
+
+### AT+HTTPGET=0
+
+
+```
+OK
+```
+
+
+
+### +HTTPGETRPT: 10
+
+
+### AT+HTTPGET=0
+
+
+
+### AT+HTTPGET=0
+
+
+```
+OK
+```
+
+
+
+### ERROR
+
+
+### +HTTPGETRPT: 11
+
+
+```
++HTTPCLOSE: HTTP Link Closed
+```
+
+
+### AT+HTTPGET=1
+
+
+```
+OK
+```
+
+
+
+### +HTTPGETRPT: 20
+
+
+
+#### `AT+HTTPGET=1,0,eaf84487e190bc79af55c972bbc63e3f`
+
+
+```
+OK
+```
+
+
+### +HTTPGETRPT: 30,303
+
+
+
+#### `AT+APHTTPGET=1,0,eaf84487e190bc79af55c972bbc63e3f`
+
+
+```
+OK
+```
+
+
+
+### +APHTTPGETRPT: 31
+
+下载文件
+
+
+下载失败
+
+
+
+### 12.8 AT+HTTPGETSTAT?–查询下载结果
+
+
+### 查询HTTP GET 过程与结果。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 143
+
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 查询 AT+HTTPGETSTAT?<CR> <CR><LF><CR><LF>+HTTPGETSTAT:
+
+<state_type>[,<err_code>]<CR><LF>
+
+参数
+
+<state_type> 状态类型
+
+0:未知结果
+
+10:下载成功
+
+11:下载失败
+
+20:解压成功
+
+21:解压失败
+
+30:校验成功
+
+31:校验失败
+
+<err_code> HTTP GET 过程中遇到的错误响应。
+
+301 永久地传送
+
+302 找到
+
+303 参见其他
+
+304 未改动
+
+305 使用代理
+
+307 暂时重定向
+
+400 错误请求
+
+401 未授权
+
+402 要求付费
+
+403 禁止
+
+404 未找到
+
+405 不允许的方法
+
+406 不被采纳
+
+407 要求代理授权
+
+408 请求超时
+
+409 冲突
+
+410 过期的
+
+411 要求的长度
+
+412 前提不成立
+
+413 请求实例太大
+
+
+### 414 请求URI 太大
+
+415 不支持的媒体类型
+
+416 无法满足的请求范围
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 144
+
+
+417 失败的预期
+
+500 内部服务器错误
+
+501 未被使用
+
+502 网关错误
+
+503 不可用的服务
+
+504 网关超时
+
+
+## 505 HTTP 版本未被支持
+
+示例
+
+
+### AT+HTTPGET=0
+
+
+```
+OK
+```
+
+
+### AT+HTTPGETSTAT?
+
+
+
+### +HTTPGETSTAT: 10
+
+```
+OK
+```
+
+
+### AT+APHTTPGET=1
+
+
+
+### +HTTPGETSTAT: 30
+
+```
+OK
+```
+
+
+
+### 12.9 +HTTPCLOSED–HTTP 链路被动关闭
+
+
+### 关闭HTTP 链接。
+
+命令格式
+
+类型 命令
+
+主动上报 <CR><LF>+HTTPCLOSED: HTTP Link Closed<CR><LF>
+
+参数
+
+无
+
+示例
+
+```
++HTTPCLOSED: HTTP Link Closed 主动上报HTTP链路断开。
+```
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 145
+
+
+
+### 12.10 AT+HTTPSCFG–HTTPS 配置参数
+
+
+### 配置SSL 加密选项
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+HTTPSCFG=<type>,<type_name
+
+
+### ><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+HTTPSCFG?<CR>
+
+<CR><LF>+HTTPSCFG:<sslversion>,<authmode>,
+
+<cacert>,<clientcert>,<clientkey>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+HTTPSCFG=?<CR> <CR><LF>+HTTPSCFG:<type>,<type_name>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<type> 配置SSL 选项。
+
+sslversion: SSL 协议版本
+
+authmode: 安全认证模式
+
+cacert: CA 证书
+
+clientcert:客户端证书
+
+clientkey:客户端密匙
+
+<type_name> <type>和<type_name>参数的取值,对应关系如下
+
+sslversion
+
+
+### 3:TLS1.2
+
+
+### 4:TLS1.3
+
+authmode
+
+0:No authentication
+
+1:Manage server authentication
+
+2:Manage server and client authentication if requested by the remote server
+
+cacert string,CA 证书
+
+clientcert string,客户端证书文件名
+
+clientkey string,客户端密匙文件名
+
+
+如果authmode 为0,则不需要设置cacert、clientcert、clientkey 等内容。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 146
+
+
+示例
+
+
+#### `AT+HTTPSCFG=”sslversion”,0`
+
+
+```
+OK
+```
+
+设置 SSL的版本为 ssl3.0。
+
+
+#### `AT+HTTPSCFG =”authmode”,0`
+
+
+```
+OK
+```
+
+设置认证方式为不认证。
+
+
+#### `AT+HTTPSCFG=”cacert”,ca.pem`
+
+
+```
+OK
+```
+
+
+### 设置 CA证书名称(需提前添加证书)。
+
+
+### AT+HTTPSCFG?
+
+
+```
++HTTPSCFG: 0,1,ca.pem,cc.pem,ck.pem
+```
+
+```
+OK
+```
+
+
+### 查询 SSL的当前配置。
+
+
+### AT+HTTPSCFG=?
+
+
+```
++HTTPSCFG: <type>,<type_name>
+```
+
+```
+OK
+```
+
+查询指令配置的范围。
+
+
+### 12.11 AT+HTTPSPARA–HTTPS 参数设置
+
+
+### 设置HTTPS 命令参数。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+HTTPSPARA=<para>,<para_value><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<para> https 参数,支持两个参数设置。
+
+url:目标路径
+
+port:目标端口号
+
+keepalive: 设置长连接
+
+recvmode: 接收模式,para_value=0 默认接收模式,一个 HTTP 响应只包含一个
+
+```
++HTTPRECV:头表示;para_value=1,数据以+HTTPRECV: <length>,<data>形
+```
+
+式呈现。
+
+<para_value> 对应<para>的值,其中URL 参数值最大为512 个字节,URL 支持域名解析。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 147
+
+
+
+### ⚫ 新的HTTPS 请求需要设置新的HTTPS PARAMETER。
+
+
+### ⚫ 若执行+HTTPSCLOSE,链路关闭的同时,HTTPS 参数不会被清空。
+
+示例
+
+
+#### `AT+HTTPSPARA=url,mybank.icbc.com.cn/icbc/perbank/index.jsp`
+
+
+```
+OK
+```
+
+设置目标路径为工商银行网银登陆,
+
+url支持域名解析。
+
+
+#### `AT+HTTPSPARA=url,132.188.73.13/prodreg/beginRegistration.action`
+
+
+```
+OK
+```
+
+设置目标路径为 132.188.73.13。
+
+
+#### `AT+HTTPSPARA=port,443`
+
+
+```
+OK
+```
+
+设置目标端口号为 443。
+
+
+### 12.12 AT+HTTPSSETUP–HTTPS 链路建立
+
+
+### 建立HTTPS 链接。
+
+
+⚫ 正确设置目标地址和端口号才能连接成功;
+
+
+### ⚫ HTTPS 链路建立之前要确保PPP 拨号(AT+XIIC=1)成功。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+HTTPSSETUP<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+无。
+
+示例
+
+
+### AT+HTTPSSETUP
+
+
+```
+OK
+```
+
+
+### 建立 HTTPS链接
+
+成功
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 148
+
+
+
+### AT+HTTPSSETUP
+
+
+
+### +HTTPSSETUP: OK
+
+
+### HTTPS连接已建立
+
+
+### AT+HTTPSSETUP
+
+
+
+### ERROR
+
+
+### 建立 HTTPS链接
+
+成功
+
+
+### 12.13 AT+HTTPSACTION–HTTPS 发送请求
+
+
+### 执行HTTPS 请求。
+
+命令格式
+
+类型 命令 响应格式
+
+执行
+
+⚫ AT+HTTPSACTION=<mode>[,<length>[,<type>]<CR>
+
+⚫ AT+HTTPSACTION=<mode>[,<offset>,<size>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<mode> HTTP 请求方式,可取值为0,1,2,99。
+
+
+### 0:GET
+
+
+### 1:HEAD
+
+
+### 2:POST
+
+
+### 99:OPEN_MODE,用户自己定义报文模式
+
+<length> POST 内容长度或自定义报文长度,在<mode>为POST 和OPEN_MODE 时必须
+
+设置,最大长度为2048。
+
+<type> POST 请求的数据类型。
+
+0:x-www-form-urlencoded
+
+1:text
+
+2:json
+
+3:xml
+
+4:html
+
+<offset> 偏移量,通过GET 方式下载文件时,可以指定下载起始位置。
+
+<size> 下载长度,通过GET 方式下载文件时,可以指定下载长度。
+
+
+
+### ⚫ 用户自定义报文时需遵循HTTP 协议;
+
+⚫ 用户在自定义报文的时候注意使用的工具里头是否会自带回车和换行这些字符。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 149
+
+
+示例
+
+
+#### `AT+HTTPSPARA=url,support.cdmatech.com/login/`
+
+
+```
+OK
+```
+
+
+#### `AT+HTTPSPARA=port,443`
+
+
+```
+OK
+```
+
+
+### AT+HTTPSSETUP
+
+
+```
+OK
+```
+
+
+### AT+HTTPSACTION=0
+
+
+```
+OK
+```
+
+
+
+### +HTTPSRECV:
+
+
+### HTTP/1.1 200 OK
+
+Server: QUALCOMM
+
+X-Powered-By: Servlet/2.5 JSP/2.1
+
+Content-Type: text/html; charset=ISO-8859-1
+
+Date: Sat, 15 Feb 2014 05:58:54 GMT
+
+Content-Length: 7630
+
+Connection: close
+
+Set-Cookie:
+
+JSESSIONID=8V1dS1CpzlPcyNl2LzJZLQgDxWclpMJzP3FHZhVhpGb83G
+
+VM02sn!1955538012; path=/; HttpOnly
+
+/*主页内容,html 格式*/
+
+……..
+
+/*主页内容*/
+
+```
++HTTPSCLOSED: HTTPS Link Closed
+```
+
+设置目标路径。
+
+
+设置目标端口为 443。
+
+
+
+### 建立 HTTPS链接。
+
+
+
+### GET方式请求。
+
+
+
+### 收到 HTTPS服务器的响应。
+
+
+主动上报,服务器响应完毕,断开链接。
+
+
+#### `AT+HTTPSPARA=url,support.cdmatech.com/login/`
+
+
+```
+OK
+```
+
+
+#### `AT+HTTPSPARA=port,443`
+
+
+```
+OK
+```
+
+
+### AT+HTTPSSETUP
+
+
+```
+OK
+```
+
+
+### AT+HTTPSACTION=1
+
+
+```
+OK
+```
+
+
+
+### +HTTPSRECV:
+
+
+### HTTP/1.1 200 OK
+
+Server: QUALCOMM
+
+X-Powered-By: Servlet/2.5 JSP/2.1
+
+Content-Type: text/html; charset=ISO-8859-1
+
+Date: Sat, 15 Feb 2014 06:05:39 GMT
+
+Content-Length: 0
+
+Connection: close
+
+Set-Cookie:
+
+JSESSIONID=qyNVS1DSmnjS9cvh72yW1xz1jtjBBRj0yv0zTmMy2LVyBG
+
+7HK02b!1955538012; path=/; HttpOnly
+
+
+```
++HTTPSCLOSED: HTTPS Link Closed
+```
+
+设置目标路径。
+
+
+设置目标端口为 443。
+
+
+
+### 建立 HTTPS链接。
+
+
+
+### HEAD方式请求。
+
+
+
+### HTTPS服务器响应。
+
+
+#### `AT+HTTPSPARA=url,mybank.icbc.com.cn/icbc/perbank/index.js OPEN_MODE,用户自己定义报文模式,注意长度`
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 150
+
+
+p
+
+
+```
+OK
+```
+
+
+#### `AT+HTTPSPARA=port,443`
+
+
+```
+OK
+```
+
+
+### AT+HTTPSSETUP
+
+
+```
+OK
+```
+
+
+### AT+HTTPSACTION=99,500
+
+
+>POST /icbc/perbank/index.jsp HTTP/1.1<CRLF> /*自定义头信息
+
+*/
+
+Connection: close<CRLF> /*自定义头信息*/
+
+Host: mybank.icbc.com.cn<CRLF> /*自定义头信息*/
+
+Content-Length: 10<CRLF> /*自定义头信息*/
+
+Content-Type: application/x-www-form-urlencoded<CRLF> /*自
+
+定义头信息*/
+
+
+### <CRLF><CRLF>
+
+/*要发送的内容*/
+
+……
+
+
+
+### +HTTPSRECV:
+
+/*主页内容,html 格式*/
+
+……..
+
+/*主页内容*/
+
+```
++HTTPSCLOSED: HTTPS Link Closed
+```
+
+包括用户自定义的头部内容。
+
+
+### 12.14 AT+HTTPSCLOSE–HTTPS 链路主动关闭
+
+
+### 关闭HTTPS 链接。
+
+
+
+### 执行AT+HTTPSCLOSE 命令,在关闭HTTPS 链路的同时,AT+HTTPSPARA 命令设置的参数会保
+
+留。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+HTTPSCLOSE<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+主动上报 +HTTPSCLOSE: <state>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 151
+
+
+参数
+
+<state> HTTPS Link Closed HTTPS 链路关闭
+
+示例
+
+
+### AT+HTTPSCLOSE
+
+
+```
+OK
+```
+
+
+```
++HTTPSCLOSE: HTTPS Link Closed
+```
+
+
+### 关闭 HTTPS链路。
+
+
+### 12.15 +HTTPSRECV–HTTPS 数据接收
+
+
+### 主动上报HTTPS 链路接收的数据。
+
+命令格式
+
+类型 命令
+
+主动上报
+
+⚫ <CR><LF>+HTTPSRECV: <CR><LF><datas>
+
+⚫ <CR><LF>+HTTPSRECV: <length>,<datas>
+
+参数
+
+<datas> HTTP 链路接收到的数据。
+
+<length> 接收到的数据长度。
+
+示例
+
+
+### +HTTPSRECV:
+
+
+### HTTP/1.1 200 OK
+
+Cache-Control: private
+
+Content-Length: 13842
+
+Content-Type: text/html; charset=utf-8
+
+Server: Microsoft-IIS/7.5
+
+Set-Cookie: ASP.NET_SessionId=pvlaai3fizxg44eyvyqsyenk; path=/;
+
+HttpOnly
+
+X-AspNet-Version: 2.0.50727
+
+X-Powered-By: ASP.NET
+
+X-UA-Compatible: IE=EmulateIE7
+
+Date: Thu, 28 Nov 2013 05:40:24 GMT
+
+Connection: close
+
+
+```
++HTTPSCLOSED: HTTPS Link Closed
+```
+
+
+### 上报HTTPS 链路接收的数据。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 152
+
+
+```
++HTTPSRECV: 832,HTTP/1.1 206 Partial Content
+```
+
+Server: Tengine/2.1.0
+
+Date: Tue, 10 Jul 2018 01:09:25 GMT
+
+Content-Type: text/html; charset=utf-8
+
+Content-Length: 10
+
+Connection: keep-alive
+
+x-server-id: 40-5005
+
+request-id: 0bea4b2215311849654971530e6674
+
+Accept-Ranges: bytes
+
+set-cookie: ctoken=MBHI38pHhdL6q0ltGFqjkviz; path=/;
+
+domain=.alipay.com; secure
+
+set-cookie:
+
+ALIPAYJSESSIONID=jMi6e4Q2JmIN8HRk68wm53KXisfnB5H0homeproxy;
+
+path=/; domain=.alipay.com
+
+x-frame-options: SAMEORIGIN
+
+x-xss-protection: 1; mode=block
+
+x-content-type-options: nosniff
+
+x-download-options: noopen
+
+strict-transport-security: max-age=31536000
+
+Content-Range: bytes 0-9/21651
+
+x-readtime: 2
+
+Set-Cookie: ssl_upgrade=0;path=/;secure;
+
+Set-Cookie:
+
+spanner=aGuTtGMbvBcOy1dCyZ/e4JI97JSiPcR1Xt2T4qEYgj0=;path=/;se
+
+cure;
+
+Via: spanner-internet-g2-35.em14[206]
+
+
+### RECVMODE 设为 1 时,接收数据
+
+的格式。
+
+
+### 12.16 AT+HTTPSGET–HTTPS 下载文件
+
+
+### HTTPS 下载文件。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+HTTPSGET=<type>[,<check_type>
+
+,<check_value>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<type> 解压方式
+
+0:不解压(默认)
+
+1:zip(暂不支持)
+
+2~99 预留
+
+<check_type> 压缩包完整性校验类型
+
+
+### 0: MD5 (默认)
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 153
+
+
+1~99 预留
+
+<check_value> 校验码,配合<check_type>中选定的校验类型一起使用。
+
+
+
+### ⚫ 该命令为异步命令,执行完后返回OK,下载、解压、校验过程均为后台进行。
+
+⚫ 当省略<check_type>,<check_value>两个参数时,下载完成后,不进行任何校验动作。
+
+
+### ⚫ 下载、校验、解压结果上报,通过+HTTPSGETSTAT命令上报,详情见该命令定义。
+
+⚫ 为了节省模组空间,使用该指令会删除上一次使用该指令下载到 flash 的文件。
+
+示例
+
+
+#### `AT+HTTPSPARA=url, mybank.icbc.com.cn/icbc/perbank/index.jsp`
+
+
+```
+OK
+```
+
+
+### AT+HTTPSGET=0
+
+
+```
+OK
+```
+
+
+### +HTTPSGETRPT: 10
+
+
+
+### AT+HTTPSGET=1
+
+
+```
+OK
+```
+
+
+### +HTTPSGETRPT: 20
+
+
+
+#### `AT+HTTPSGET=1,0,eaf84487e190bc79af55c972bbc63e3f`
+
+
+```
+OK
+```
+
+
+### +HTTPSGETRPT: 30,303
+
+
+
+#### `AT+HTTPSGET=1,0,eaf84487e190bc79af55c972bbc63e3f`
+
+
+```
+OK
+```
+
+
+### +APHTTPSGETRPT: 31
+
+下载文件。
+
+
+### 12.17 +HTTPSGETRPT–主动上报下载结果
+
+
+### 主动上报HTTPS GET 结果。
+
+
+
+### ⚫ 该命令指示AT+HTTPSGET 命令的运行结果,根据命令的不同阶段,进行结果指示主动上报。
+
+⚫ 下载、校验、解压,不同的阶段,上报不同的结果码。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 154
+
+
+命令格式
+
+类型 命令
+
+主动上报 <CR><LF>+ HTTPSGETRPT: <state_type>[,<err_code>]<CR><LF>
+
+参数
+
+<state_type> 状态类型
+
+10:下载成功
+
+11:下载失败
+
+20:解压成功
+
+21:解压失败
+
+30:校验成功
+
+31:校验失败
+
+<err_code> HTTP GET 过程中遇到的错误响应。
+
+413 请求实例太大
+
+示例
+
+
+#### `AT+HTTPSPARA=url, mybank.icbc.com.cn/icbc/perbank/index.jsp`
+
+
+```
+OK
+```
+
+
+
+### AT+HTTPSGET=0
+
+
+```
+OK
+```
+
+
+
+### +APHTTPSGETRPT: 10
+
+
+
+### AT+HTTPSGET=1
+
+
+```
+OK
+```
+
+
+### +HTTPSGETRPT: 20
+
+
+
+#### `AT+HTTPSGET=1,0,eaf84487e190bc79af55c972bbc63e3f`
+
+
+```
+OK
+```
+
+
+### +HTTPSGETRPT: 30,303
+
+
+
+#### `AT+HTTPSGET=1,0,eaf84487e190bc79af55c972bbc63e3f`
+
+
+```
+OK
+```
+
+
+### +HTTPSGETRPT: 31
+
+下载文件。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 155
+
+
+
+### 12.18 AT+HTTPSGETSTAT?–查询下载结果
+
+
+### 查询HTTPS GET 过程与结果。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+HTTPSGETSTAT?<CR> <CR><LF>+HTTPSGETSTAT:
+
+<state_type>[,<err_code>]<CR><LF>
+
+参数
+
+<state_type> 状态类型
+
+0:未知结果
+
+10:下载成功
+
+11:下载失败
+
+20:解压成功
+
+21:解压失败
+
+30:校验成功
+
+31:校验失败
+
+<err_code> HTTP GET 过程中遇到的错误响应。
+
+301 永久地传送
+
+302 找到
+
+303 参见其他
+
+304 未改动
+
+305 使用代理
+
+307 暂时重定向
+
+400 错误请求
+
+401 未授权
+
+402 要求付费
+
+403 禁止
+
+404 未找到
+
+405 不允许的方法
+
+406 不被采纳
+
+407 要求代理授权
+
+408 请求超时
+
+409 冲突
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 156
+
+
+410 过期的
+
+411 要求的长度
+
+412 前提不成立
+
+413 请求实例太大
+
+
+### 414 请求URL 太大
+
+415 不支持的媒体类型
+
+416 无法满足的请求范围
+
+417 失败的预期
+
+500 内部服务器错误
+
+501 未被使用
+
+502 网关错误
+
+503 不可用的服务
+
+504 网关超时
+
+
+## 505 HTTP 版本未被支持
+
+示例
+
+
+### AT+HTTPSGET=0
+
+
+```
+OK
+```
+
+
+
+### AT+HTTPSGETSTAT?
+
+
+
+### +HTTPSGETSTAT: 10,303
+
+```
+OK
+```
+
+
+
+### AT+APHTTPSGET=1
+
+
+```
+OK
+```
+
+
+
+### +HTTPSGETSTAT: 30,303
+
+```
+OK
+```
+
+
+
+### 12.19 AT+FILEHTTPACTION–文件系统内 HTTP 请求
+
+
+### 文件系统内HTTP 请求。
+
+
+
+### ⚫ 执行前,需要先建立HTTP 连接。
+
+
+### ⚫ HTTP GET 前,需要先确定文件系统内有足够的剩余空间。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 157
+
+
+命令格式
+
+类型 命令 响应格式
+
+执行
+
+
+#### `AT+FILEHTTPACTION=<mode>,<len`
+
+gth>,<type>,<dir&filename><CR>
+
+
+#### `AT+FILEHTTPACTION=<mode>,<offs`
+
+et>,<size>[,dir&filename]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<mode> HTTP 请求方式,可取值为0,1。
+
+
+### 0:GET
+
+
+### 1:POST
+
+<length> POST 内容长度最大支持2048 字节。
+
+<type> POST 请求数据类型
+
+0:x-www-form-urlencoded
+
+1:text
+
+2:json
+
+3:xml
+
+4:html
+
+<offset> 偏移量,通过GET 方式下载文件时,可以指定下载起始位置。
+
+<size> 下载长度,通过 GET 方式下载文件时,可以指定下载长度,最大2166720 字节,
+
+
+### 仅在外挂FLASH 的情况下支持2166720 字节,一般情况为524288 字节。
+
+<dir&filename> ⚫ 需要的文件路径和文件名。
+
+⚫ 当mode=0 时,可以指定本地保存的文件名。
+
+<errcode> 取值<errcode>与<errtext>对应关系如下:
+
+49 -- The execute command not support 操作不支持
+
+51 -- no memory 申请内存失败
+
+53 -- parameters are invalid 参数错误
+
+66 -- file too large 文件名太长
+
+300 -- netif is error 网络异常
+
+301 -- HTTPACTION is needed first HTT 链路未建立
+
+303 -- HTTPPARA CID invalid CID无效
+
+303 -- HTTPPARA CID invalid CID无效
+
+
+### ⚫ 1001 -- PDP NOT ACTIVE PDP 未激活
+
+<errtext> 见<errcode>说明。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 158
+
+
+示例
+
+
+### AT+FILEHTTPACTION=0,0,524288
+
+
+```
+OK
+```
+
+
+
+### +FILEHTTPSTAT: 0,1,524288
+
+
+### 从第一个字节开始,下载 512KB数据。
+
+
+
+### HTTP GET成功,文件长度 512KB。
+
+
+#### `AT+FILEHTTPACTION=1,2048,0,text.txt`
+
+
+```
+OK
+```
+
+
+
+### +FILEHTTPSTAT: 1,1,2048
+
+采用 x-www-form-urlencoded类型,POST text.txt文件,命令执行
+
+
+### 成功,开始 POST。
+
+
+
+### POST成功,文件长度 2048。
+
+
+### AT+FILEHTTPACTION=0,0,524288
+
+
+
+### +CME ERROR: 1001
+
+下载文件,命令执行失败,错误码 1001,代表 pdpnot active。
+
+
+### 12.20 AT+FILEHTTPSACTION–文件系统内 HTTPS 请求
+
+
+### 文件系统内HTTPS 请求。
+
+
+
+### ⚫ 执行前,需要先建立HTTP 连接。
+
+
+### ⚫ HTTP GET 前,需要先确定文件系统内有足够的剩余空间。
+
+命令格式
+
+类型 命令 响应格式
+
+执行
+
+
+#### `AT+FILEHTTPSACTION=<mode>,<le`
+
+ngth>,<type>,<dir&filename><CR>
+
+
+#### `AT+FILEHTTPSACTION=<mode>,<of`
+
+fset>,<size><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<mode> HTTP 请求方式,可取值为0,1。
+
+
+### 0:GET
+
+
+### 1:POST
+
+<length> POST 内容长度最大支持2048 字节。
+
+<type> POST 请求数据类型
+
+0:x-www-form-urlencoded
+
+1:text
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 159
+
+
+2:json
+
+3:xml
+
+4:html
+
+<offset> 偏移量,通过GET 方式下载文件时,可以指定下载起始位置。
+
+<size> 下载长度,通过GET 方式下载文件时,可以指定下载长度,最大size 524288 字节。
+
+size 最大可设置为524288,能否下载到524288 字节取决于剩余空间。
+
+<dir&filename>
+
+<errcode>
+
+
+<errtext>
+
+⚫ 需要的文件路径和文件名。文件路径是相对于文件系统的根路径而言的。
+
+取值<errcode>与<errtext>对应关系如下:
+
+49 -- The excute command not support 操作不支持
+
+51 -- no memory 申请内存失败
+
+53 -- parameters are invalid 参数错误
+
+66 -- file too large 文件名太长
+
+300 -- netif is error 网络异常
+
+301 -- HTTPACTION is needed first HTT 链路未建立
+
+303 -- HTTPPARA CID invalid CID无效
+
+
+### ⚫ 1001 -- PDP NOT ACTIVE PDP 未激活
+
+⚫ 见<errcode>说明。
+
+示例
+
+
+### AT+FILEHTTPSACTION=0,0,524288
+
+
+```
+OK
+```
+
+
+
+### +FILEHTTPSTAT: 0,1,524288
+
+
+### 从第一个字节开始,下载 512KB数据。
+
+
+
+### HTTPS GET成功,文件长度 512KB。
+
+
+#### `AT+FILEHTTPSACTION=1,2048,0,text.txt`
+
+
+```
+OK
+```
+
+
+
+### +FILEHTTPSTAT: 1,1,2048
+
+采用 x-www-form-urlencoded类型,POST text.txt文件,
+
+
+### 命令执行成功,开始 POST。
+
+
+
+### POST成功,文件长度 2048。
+
+
+### AT+FILEHTTPSACTION=0,0,524288
+
+
+
+### +CME ERROR: 1001
+
+下载文件,命令执行失败,错误码 1001,代表 pdpnot active。
+
+
+### 12.21 +FILEHTTPSTAT–文件系统内 HTTP(S)结果状态上
+
+报
+
+
+### 主动上报文件系统HTTP(S)上传/下载结果状态。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 160
+
+
+命令格式
+
+类型 命令
+
+主动上报
+
+⚫ <CR><LF>+FILEHTTPSTAT: <mode>,<stat>[,<length>]<CR><LF>
+
+⚫ <CR><LF>+FILEHTTPSTAT: <stat>,<errcode><CR><LF>
+
+参数
+
+<mode> HTTP(S)请求类型
+
+
+### 0:HTTP(S) GET
+
+
+### 1:HTTP(S) POST
+
+<stat> 下载/上传结果码
+
+0:下载/上传失败
+
+1:下载/上传成功
+
+<length> 下载/上传长度,单位字节
+
+<errcode> 51:内存申请失败
+
+62:文件系统错误
+
+1416 服务器文件不存在
+
+1413 服务器文件内容太大
+
+示例
+
+
+### AT+FILEHTTPSACTION=0,0,524288
+
+
+```
+OK
+```
+
+
+
+### +FILEHTTPSTAT: 0,1,524288
+
+
+
+### 从第一个字节开始,下载 512KB数据。
+
+
+
+### HTTPS GET成功,文件长度 512KB。
+
+
+#### `AT+FILEHTTPSACTION=1,2048,0,text.txt`
+
+
+```
+OK
+```
+
+
+
+### +FILEHTTPSTAT: 1,1,2048
+
+采用 x-www-form-urlencoded类型,POST text.txt文件,命令执
+
+
+### 行成功,开始 POST。
+
+
+
+### POST成功,文件长度 2048。
+
+
+### 12.22 +HTTPSCLOSED–HTTPS 链路被动关闭
+
+
+### 关闭HTTPS 链接。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 12 章 HTTP/HTTPS 指令
+
+
+深圳市有方科技股份有限公司版权所有 161
+
+
+命令格式
+
+类型 命令
+
+主动上报 <CR><LF>+HTTPSCLOSE: HTTPS Link Closed<CR><LF>
+
+参数
+
+无
+
+示例
+
+```
++HTTPSCLOSE: HTTPS Link Closed 主动上报HTTPS链路断开
+```
+
+
+
+### N706A AT 命令手册
+
+第 13 章 Wi-Fi 功能
+
+
+深圳市有方科技股份有限公司版权所有 162
+
+
+
+## 13 Wi-Fi 功能
+
+
+### 13.1 AT+WIFIAPSCAN–Wi-Fi 热点扫描
+
+该指令用于扫描模组周围的Wi-Fi 热点。
+
+
+WiFi 扫描的优先级很低,lte 必现处于idle 状态才允许执行。电话和数据业务都可以打断WiFi 扫描,
+
+在modem 侧处于数据业务连接态或者搜网状态等其他非待机状态,都是不能执行 WiFi 扫描。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+WIFIAPSCAN<CR>
+
+
+### <CR><LF>+WIFIAPSCAN: <MAC
+
+Address>,<rssi>,<channel>
+
+…
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<MAC Address> 物理地址
+
+<rssi> 信号强度
+
+<channel> 通道号
+
+示例
+
+
+### AT+WIFIAPSCAN
+
+
+
+### +WIFIAPSCAN: 28:11:EC:B6:C5:C2,-72,2
+
+
+### +WIFIAPSCAN: 94:D9:B3:23:F6:6C,-75,6
+
+
+### +WIFIAPSCAN: 8C:A6:DF:14:92:32,-76,6
+
+
+### +WIFIAPSCAN: 58:B3:8F:9F:39:50,-77,6
+
+
+### +WIFIAPSCAN: A2:36:79:D9:C2:3C,-81,1
+
+
+### +WIFIAPSCAN: EC:6C:9F:4B:E8:83,-85,1
+
+
+### +WIFIAPSCAN: 08:00:33:34:40:4F,-85,1
+
+开始扫描,并输出所有的扫描结果。
+
+
+
+### N706A AT 命令手册
+
+第 13 章 Wi-Fi 功能
+
+
+深圳市有方科技股份有限公司版权所有 163
+
+
+
+### +WIFIAPSCAN: 88:00:33:77:69:11,-88,6
+
+```
+OK
+```
+
+
+### AT+WIFIAPSCAN
+
+
+
+### ERROR
+
+modem侧处于搜网状态无法进行 wifi扫描返回 ERROR
+
+
+### 13.2 AT+WIFIGSMLOC–Wi-Fi 定位
+
+该指令用于Wi-Fi 定位。
+
+
+先进行Wi-Fi 扫描,拨号。再进行定位。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+WIFIGSMLOC=<n><CR>
+
+<CR><LF><fail_string><CR><LF>
+
+Or
+
+<CR><LF>+WIFIGSMLOC: <fail_string><CR><LF>
+
+Or
+
+<CR><LF>+WIFIGSMLOC: {<result_string>}
+
+
+### <CR><LF>+WIFIGSMLOC: OK<CR><LF>
+
+Or
+
+<CR><LF><code>
+
+
+### <CR><LF>+WIFIGSMLOC: FAIL<CR><LF>
+
+Or
+
+
+### <CR><LF>OK
+
+
+### <CR><LF>+WIFIGSMLOC: TIMEOUT<CR><LF>
+
+参数
+
+<n> 0:关闭wifi 定位
+
+1:打开wifi 定位
+
+<fail_string> GPRS DISCONNECTION
+
+
+### ERROR
+
+
+### LINK FAIL
+
+
+### LINK NOT FREE
+
+<result_string> 包含经纬度的字符串
+
+<code> 302:请求的资源暂时被移动到另一个位置
+
+
+
+### N706A AT 命令手册
+
+第 13 章 Wi-Fi 功能
+
+
+深圳市有方科技股份有限公司版权所有 164
+
+
+401:没有权限访问
+
+400:请求在解析过程中出错
+
+403:服务器拒绝执行
+
+404:请求合法,但是所查基站未被收录,因此无法计算出结果
+
+408:服务器解析超时
+
+500:服务器内部错误
+
+示例
+
+
+### AT+WIFIGSMLOC=1
+
+
+
+### +WIFIGSMLOC:
+
+{"location":{"lat":34.2058450,"lng":108.8359280},"accuracy":30.0}
+
+
+### +WIFIGSMLOC: OK
+
+输出定位结果。
+
+
+### AT+WIFIGSMLOC=1
+
+
+
+### GPRS DISCONNECTION
+
+未拨号 wifi 定位
+
+
+### AT+WIFIGSMLOC=1
+
+
+
+### +WIFIGSMLOC: ERROR
+
+未进行 wifi 扫描执行 wifi 定位
+
+
+### AT+WIFIGSMLOC=1
+
+
+
+### +WIFIGSMLOC: LINK NOT FREE
+
+```
+OK
+```
+
+重复请求 wifi 定位
+
+
+### AT+WIFIGSMLOC=1
+
+
+403
+
+
+### +WIFIGSMLOC: FAIL
+
+服务器拒绝执行
+
+
+### AT+WIFIGSMLOC=0
+
+
+```
+OK
+```
+
+关闭 wifi 定位
+
+
+
+### N706A AT 命令手册
+
+
+### 第 14 章阿里MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 165
+
+
+
+### 14 阿里 MQTT 指令
+
+
+### 14.1 AT+CLOUDAUTHMODE–设备鉴权模式
+
+⚫ 不设置该指令时,默认为一机一密的认证方式。
+
+该指令在鉴权连接之前设置有效。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CLOUDAUTHMODE=<mode><CR>
+
+
+### <CR><LF>OK
+
+Or
+
+
+### <CR><LF>+CMDERROR <CR><LF>
+
+查询 AT+CLOUDAUTHMODE?<CR> <CR><LF>+CLOUDAUTHMODE:<mode>
+
+
+### <CR><LF>OK
+
+参数
+
+<mode>:设备认证方式
+
+0:一机一密(默认)
+
+1:一型一密
+
+2:x509 加密连接需要添加证书
+
+3:直连
+
+4~99:预留
+
+示例
+
+
+### AT+ CLOUDAUTHMODE=1
+
+
+```
+OK
+```
+
+
+
+### AT+CLOUDAUTHMODE?
+
+
+
+### +CLOUDAUTHMODE: 1
+
+```
+OK
+```
+
+设置为一型一密
+
+
+查询参数
+
+
+
+### N706A AT 命令手册
+
+
+### 第 14 章阿里MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 166
+
+
+
+### 14.2 AT+CLOUDCFG–阿里MQTT 证书配置
+
+
+### 配置SSL 加密选项,目前只有在X509 连接时需要设置此指令。
+
+配置证书前,需要添加证书。
+
+
+### 通过AT+CERTADD 导入证书。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 设置 AT+CLOUDCFG
+
+=<type>,<type_name><CR>
+
+
+### <CR><LF>OK
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+CLOUDCFG?<CR>
+
+<CR><LF>+CLOUDCFG:<sslversiontype_name>,
+
+<authmodetype_name>,<clientcerttype_name>,<cl
+
+ientkeytype_name><CR><LF>OK
+
+测试 AT+CLOUDCFG=?<CR> <CR><LF>+CLOUDCFG:<type>,<type_name><C
+
+
+### R><LF>OK
+
+参数
+
+<type> 配置SSL 选项。
+
+sslversion: SSL 协议版本
+
+authmode: 安全认证模式
+
+clientcert: 客户端证书
+
+clientkey: 客户端密匙
+
+<type_name> <type>和<type_name>参数的取值,对应关系如下:
+
+⚫ sslversion
+
+
+### 1:TLS1.0(暂不支持)
+
+
+### 2:TLS1.1(暂不支持)
+
+
+### 3:TLS1.2
+
+⚫ authmode
+
+1:一型一密认证
+
+
+### 2:X509 认证
+
+⚫ clientcert 客户端证书文件名
+
+⚫ clientkey 客户端密匙文件名
+
+
+
+### N706A AT 命令手册
+
+
+### 第 14 章阿里MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 167
+
+
+示例
+
+
+#### `AT+CLOUDCFG=”sslversion”,0`
+
+
+```
+OK
+```
+
+
+设置 SSL的版本为 ssl3.0。
+
+
+#### `AT+CLOUDCFG=”authmode”,2`
+
+
+```
+OK
+```
+
+
+
+### 设置 X509认证方式认证。
+
+
+### AT+CLOUDCFG?
+
+
+```
++CLOUDCFG: 1,2,ca.pem,cc.pem,ck.pem
+```
+
+```
+OK
+```
+
+
+
+### 查询 SSL的当前配置。
+
+
+### AT+CLOUDCFG=?
+
+
+```
++SSLTCPCFG: <type>,<type_name>
+```
+
+```
+OK
+```
+
+
+查询指令配置的范围。
+
+
+#### `AT+CLOUDCFG="clientkey","key.pm"`
+
+
+```
+OK
+```
+
+配置证书。
+
+
+### 14.3 AT+CLOUDSETSRVURL–设置 MQTT 鉴权站点
+
+
+### 设置MQTT 鉴权链接站点。
+
+需连接之前设置该参数。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CLOUDSETSRVURL=<”url”><CR>
+
+
+### <CR><LF>OK
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CLOUDSETSRVURL?<CR> <CR><LF>+CLOUDSETSRVURL: <”url”>
+
+
+### <CR><LF>OK
+
+
+### 执行 AT+CLOUDSETSRVURL<CR>
+
+
+### <CR><LF>OK
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<”url”>:站点地址,字符串类型,长度最大支持512 字节。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 14 章阿里MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 168
+
+
+示例
+
+
+#### `AT+CLOUDSETSRVURL="iot-cn-nif1y7hvl13.mqtt.iothub.aliyuncs.com"`
+
+
+```
+OK
+```
+
+
+
+### AT+CLOUDSETSRVURL?
+
+
+```
++CLOUDSETSRVURL: "iot-cn-nif1y7hvl13.mqtt.iothub.aliyuncs.com"
+```
+
+```
+OK
+```
+
+
+
+### AT+CLOUDSETSRVURL
+
+
+```
+OK
+```
+
+设置站点地址。
+
+
+查询当前设置。
+
+
+重置回默认上海华东 2站点。
+
+
+### 14.4 AT+CLOUDHDAUTH–设备鉴权信息(华东 2 站点)
+
+设备鉴权信息。
+
+使用参数鉴权成功后,<productKey>,<deviceName>,<deviceSecret>三组参数保存在 NV 区域,
+
+
+### 下次可直接使用AT+CLOUDHDAUTH进行鉴权。
+
+一型一密时,参数<deviceSecret>改填为ProductSecret。
+
+三个参数同事为空时,会清除掉本地保存的信息。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+#### `AT+CLOUDHDAUTH=<productKey`
+
+>,<deviceName>,<deviceSecret>]<
+
+CR>
+
+
+### <CR><LF>OK
+
+
+### <CR><LF>+CLOUDHDAUTH:OK<CR><LF>
+
+Or
+
+
+### <CR><LF>OK
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### <CR><LF>+CLOUDHDAUTH:FAIL <CR><LF>
+
+
+### 查询 AT+CLOUDHDAUTH?<CR>
+
+<CR><LF>ProductKey=产品key
+
+<CR><LF>DeviceName=设备名字
+
+<CR><LF>DeviceSecret=设备秘钥<CR><LF>
+
+
+### <CR><LF>OK
+
+参数
+
+<productKey> 产品key,必需,字符串类型,最大长度11Byte
+
+
+
+### N706A AT 命令手册
+
+
+### 第 14 章阿里MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 169
+
+
+<deviceName> 设备名字,必需,字符串类型,最大长度32Byte
+
+<deviceSecret> 设备秘钥,必需,字符串类型,最大长度32Byte(一型一密此参数填ProductSecret)
+
+示例
+
+
+#### `AT+CLOUDHDAUTH=kfOZFbrf,Ndevice_T1,BdPNgkKXcMP6WnCQucnLXigThPn5i9fr`
+
+
+```
+OK
+```
+
+
+
+### +CLOUDHDAUTH: OK
+
+
+
+### AT+CLOUDHDAUTH?
+
+
+ProductKey=J5VSBJMed74
+
+DeviceName=TEST_0
+
+DeviceSecret=AchwwtoDacnYdyq5hoi21fO6IQXYke10
+
+
+```
+OK
+```
+
+鉴权成功。
+
+
+设置鉴权成功后,鉴权参数将保存至
+
+
+### NV,查询时返回鉴权参数。
+
+
+
+### AT+CLOUDHDAUTH="","",""
+
+
+```
+OK
+```
+
+清除保存的鉴权信息。
+
+
+### 14.5 AT+CLOUDCONN–配置 MQTT 连接参数命令
+
+配置MQTT 连接参数,包括MQTT 和服务端的保活时间、cleansession 信息、MQTT 版本信息。
+
+连接成功后, 可以直接调用+CLOUDSUB 指令去注册每个设备默认的topic:/pk/${deviceName}/get
+
+及其他自定义topic。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CLOUDCONN=<keepAlive>,<clean>,<version><CR>
+
+
+### <CR><LF>OK
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<keepAlive> keepAlive 时间设置,必需指定,范围60~180 秒。
+
+<clean> 是否清除session,数字类型,0-不清除 1-清除
+
+<version> MQTT 版本3 = 3.1;4 = 3.1.1。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 14 章阿里MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 170
+
+
+示例
+
+
+### AT+CLOUDCONN=60,0,4
+
+
+```
+OK
+```
+
+
+### 连接 MQTT服务器成功.
+
+
+### 14.6 AT+CLOUDSUB–订阅消息命令
+
+订阅消息,目前只支持一次增加一个订阅。
+
+订阅失败时, 返回+CMD ERROR: <code>, 会自动断开MQTT 连接, 需要重新使用+CLOUDCONN
+
+建立新的连接。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CLOUDSUB=<topic>,<qos><CR>
+
+
+### <CR><LF>OK
+
+
+### <CR><LF>+CLOUDSUBACK:<OK><CR><LF>
+
+Or
+
+
+### <CR><LF>OK
+
+<CR><LF>+CMD ERROR: <code><CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<topic> 申请订阅的topic,字符串类型,长度应不超过128 Byte。
+
+<qos> 该topic 对应的qos 等级,数字类型,0-1。
+
+<code> Code: -1 MQTT 设备指针不存在
+
+Code: -2 MQTT SUB/PUB/UNSUB 失败
+
+Code: -3 MQTT 等待ACK 超时 (Qos>0)
+
+Code: -4 MQTT 发布无效topic 的消息
+
+Code: -5 接收的MQTT publish 报文过大
+
+示例
+
+
+#### `AT+CLOUDSUB=”/1000146090/Ndevice_T1/neo001”,1`
+
+
+```
+OK
+```
+
+
+
+### +CLOUDSUBACK: <OK>
+
+订阅 topic成功。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 14 章阿里MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 171
+
+
+
+#### `AT+CLOUDSUB=”/1000146090/Ndevice_T1/neo001”,1`
+
+
+```
+OK
+```
+
+
+
+### +CMD ERROR: <-3>
+
+订阅 topic失败,ACK返回超时。
+
+
+#### `AT+CLOUDSUB=”/1000146090/Ndevice_T1/neo001”`
+
+
+
+### ERROR
+
+参数个数错误。
+
+
+### 14.7 +CLOUDPUBLISH–PUBLISH 数据接收
+
+订阅之后的topic 收到publish 数据的上报。
+
+命令格式
+
+类型 命令
+
+主动上报 +CLOUDPUBLISH:<packId>,<”topic”>,<msg_len>,<msg>
+
+参数
+
+<packId> 数据包id
+
+<topic> 接收到的topic 名字
+
+<msg_len> 接收到的消息长度
+
+<msg> 接收到的消息内容
+
+示例
+
+```
++CLOUDPUBLISH:24761,”/1000146090/Ndevice_T1/neo001”,5,hello 收到 publish消息(使用+CLOUDSUB订阅
+```
+
+topic后)。
+
+
+### 14.8 AT+CLOUDPUB–发布消息命令
+
+发布消息,指定topic,qos,message 内容。
+
+Pub 消息失败时,返回 +CMD ERROR: <code> ,会自动断开 MQTT 连接,需要重新使用
+
+
+### +CLOUDCONN 建立新的连接。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 14 章阿里MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 172
+
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CLOUDPUB=<topic>,<qos>,<message><CR>
+
+
+### <CR><LF>OK
+
+
+### <CR><LF>+CLOUDPUBACK: <OK>
+
+Or
+
+
+### <CR><LF>OK
+
+
+### <CR><LF>+CMD ERROR:
+
+<code><CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<topic> 发布的主题。
+
+<qos> 发布消息的QoS 等级,取值为0-1,暂不支持QoS2。
+
+<msg> 消息体内容,长度最大1024 字节。
+
+示例
+
+
+#### `AT+CLOUDPUB=“/1000146090/Ndevice_T1/neo001”,1,hello`
+
+
+```
+OK
+```
+
+
+
+### +CLOUDPUBACK: <OK>
+
+Pub消息成功。
+
+
+#### `AT+CLOUDPUB=“/1000146090/Ndevice_T1/neo001”,1,hello`
+
+
+```
+OK
+```
+
+
+
+### +CMD ERROR: <-3>
+
+Pub消息失败,ACK返回超时。
+
+
+#### `AT+CLOUDPUB=“/1000146090/Ndevice_T1/neo001”,1`
+
+
+
+### ERROR
+
+参数个数错误。
+
+
+### 14.9 AT+CLOUDPUBMSG–发布长消息命令
+
+发布长消息或者非字符串消息,指定topic,qos,message length。
+
+Pub 消息失败时,返回 +CMD ERROR: <code> ,会自动断开 MQTT 连接,需要重新使用
+
+
+### +CLOUDCONN 建立新的连接。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 14 章阿里MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 173
+
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CLOUDPUBMSG=<”topic”>,<qos>,<m
+
+sg_length><CR>
+
+
+### <CR><LF>><CR><LF>OK
+
+
+### <CR><LF>+CLOUDPUBACK: <OK>
+
+Or
+
+
+### <CR><LF>>
+
+
+### <CR><LF>OK
+
+<CR><LF>+CMD ERROR: <code><CR><LF>
+
+Or
+
+
+### <CR><LF>>
+
+
+### <CR><LF>+CLOUDPUBMSG:
+
+Timeout!<CR><LF>
+
+参数
+
+<topic> 发布的主题。
+
+<qos> 发布消息的QoS 等级。
+
+<msg_length> 消息体长度,最大10240 字节,提示>后输入<length>指定的长度的消息内容。
+
+示例
+
+
+#### `AT+CLOUDPUBMSG=”/J5VSBJMed74/TEST_0/neo00”,1,10`
+
+
+>
+
+```
+OK
+```
+
+
+### +CLOUDPUBACK: <OK>
+
+```
++CLOUDPUBLISH: 42069,”/J5VSBJMed74/TEST_0/neo00”,10,7777777777
+```
+
+Pub消息成功。
+
+
+#### `AT+CLOUDPUBMSG=”/J5VSBJMed74/TEST_0/neo00”,1,10`
+
+
+>
+
+```
++CLOUDPUBMSG: Timeout!
+```
+
+Pub消息失败,写入超时。
+
+
+### 14.10 AT+CLOUDUNSUB–取消订阅命令
+
+取消订阅,目前只支持一次取消一个订阅。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CLOUDUNSUB=<topic><CR> <CR><LF>OK
+
+
+### <CR><LF>+CLOUDNSUBACK:<OK>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 14 章阿里MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 174
+
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<topic> 申请取消订阅的topic,字符串类型。
+
+示例
+
+
+#### `AT+CLOUDUNSUB=”/1000146090/Ndevice_T1/neo001”`
+
+
+```
+OK
+```
+
+
+
+### +CLOUDUNSUBACK: <OK>
+
+取消订阅 topic成功。
+
+
+### AT+CLOUDUNSUB
+
+
+
+### ERROR
+
+参数个数错误。
+
+
+### 14.11 AT+CLOUDDISCONN–断开 MQTT 连接并做资源释
+
+放
+
+
+### 关闭MQTT 连接。
+
+终端主动断开和服务端的连接,然后做MQTT 资源释放。断开连接后,如果需要pub 消息,需要
+
+重新做设备连接操作。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+CLOUDDISCONN<CR> <CR><LF>OK<CR><LF>
+
+参数
+
+无
+
+示例
+
+
+### AT+CLOUDDISCONN
+
+
+```
+OK
+```
+
+
+### 关闭 MQTT链路并释放资源。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 14 章阿里MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 175
+
+
+
+### 14.12 AT+CLOUDSTATE–MQTT 连接状态查询
+
+
+### 查询MQTT 连接状态。
+
+终端默认会发送ping 包保持连接在线,如果检测到服务器未回复ping 包的ACK,则会启用自动重
+
+连的机制,客户也可以使用该指令定时检测连接状态,当查询到连接断开时可自行决定是否重连。
+
+
+### 客户在查询到MQTT 的连接状态为断开想手动重连时, 则需要先使用+CLOUDDISCONN 做资源释
+
+
+### 放,并重新使用+CLOUDCONN 建立新的连接。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CLOUDSTATE?<CR> <CR><LF>+CLOUDSTATE:<n>
+
+
+### <CR><LF>OK
+
+参数
+
+<n> 状态
+
+
+### 0:当前MQTT 为断开状态
+
+
+### 1:当前MQTT 为在线状态
+
+示例
+
+
+### AT+CLOUDSTATE?
+
+
+
+### +CLOUDSTATE: 1
+
+```
+OK
+```
+
+
+### 查询到当前 MQTT连接为在线状态。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 176
+
+
+
+### 15 标准 MQTT 指令
+
+
+### 15.1 AT+MQTTMUX–允许 MQTT支持多路
+
+
+### 允许MQTT 支持多路。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+MQTTMUX=<n><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+MQTTMUX?<CR> <CR><LF>+MQTTMUX:<n>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+MQTTMUX=?<CR> <CR><LF>+MQTTMUX:<n>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<n> 0:使用单路MQTT(默认)
+
+
+### 1:使用多路MQTT
+
+示例
+
+
+### AT+MQTTMUX=1
+
+
+```
+OK
+```
+
+
+### 设置为使用多路 MQTT
+
+
+开启多路MQTT 后, 其他标准MQTT 相关指令需要在AT 指令的第一个参数添加<sid>参数,
+
+范围0-5。
+
+示例:
+
+
+### 单路MQTT(AT+MQTTMUX=0)
+
+
+### 设置MQTT 参数
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 177
+
+
+
+#### `AT+MQTTCONNPARAM=”1”,"neoway","password"(没有sid 参数)`
+
+
+### 多路MQTT(AT+MQTTMUX=1)
+
+
+### 设置MQTT 参数
+
+
+#### `AT+MQTTCONNPARAM=0,"1","neoway","password"(有sid 参数,sid 为0)`
+
+
+### 15.2 AT+MQTTTLS–TLS 参数配置
+
+
+### MQTT TLS 参数配置。
+
+
+### 通过AT+CERTADD 导入证书。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+### 当MQTTMUX=0 时
+
+
+#### `AT+MQTTTLS=<type>,<typ`
+
+e_name><CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+#### `AT+MQTTTLS=<sid><type>`
+
+,<type_name><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询
+
+
+### 当MQTTMUX=0 时
+
+
+### AT+MQTTTLS?<CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### AT+MQTTTLS?<CR>
+
+
+### 当MQTTMUX=0 时
+
+<CR><LF>+MQTTTLS:<sslmode>,<authmode>,
+
+<rootca_name>,<clientcert_name>,<clientkey_name>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### 当MQTTMUX=1 时
+
+<CR><LF>+MQTTTLS:<sid>,<sslmode>,<authmode>,
+
+<rootca_name>,<clientcert_name>,<clientkey_name>
+
+测试
+
+
+### 当MQTTMUX=0 时
+
+
+### AT+MQTTTLS=?<CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### AT+MQTTTLS=?<CR>
+
+
+### 当MQTTMUX=0 时
+
+<CR><LF>+MQTTTLS: <type>,<value>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### 当MQTTMUX=1 时
+
+<CR><LF>+MQTTTLS: <sid>,<type>,<value>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 178
+
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5
+
+<type> 配置参数类型。
+
+sslmode: 是否开启认证模式
+
+authmode: 安全认证模式
+
+rootca: CA 证书
+
+clientcert: 客户端证书
+
+clientkey:客户端秘钥
+
+sslversion: SSL 协议版本
+
+<type_name> 配置参数值。
+
+<type>和<type_name>参数的取值,对应关系如下:
+
+⚫ sslmode
+
+0:不开启认证模式
+
+1:开启认证模式
+
+⚫ authmode
+
+0:verify optional(单向认证)
+
+1:verify required(双向认证)
+
+注意:在sslmode=1 时设置此参数生效
+
+⚫ rootca:string: CA 证书
+
+⚫ clientcert:string,客户端证书文件名
+
+⚫ clientkey: string,客户端密匙文件名
+
+⚫ sslversion: 默认为3
+
+
+### 0:SSL3.0(暂不支持)
+
+
+### 1:TLS1.0(暂不支持)
+
+
+### 2:TLS1.1(暂不支持)
+
+
+### ⚫ 3:TLS1.2
+
+示例
+
+
+#### `AT+MQTTTLS=authmode,1`
+
+
+```
+OK
+```
+
+设置认证方式为必须认证。
+
+
+### AT+MQTTTLS?
+
+
+```
++MQTTTLS: 1,1,ca.pem,cc.pem,ck.pem,3
+```
+
+```
+OK
+```
+
+
+### 查询 SSL的当前配置。
+
+
+### AT+MQTTTLS=?
+
+
+```
++MQTTTLS: <type>,<type_name>
+```
+
+```
+OK
+```
+
+查询指令配置的范围。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 179
+
+
+
+### 15.3 AT+MQTTCONNPARAM–用户参数设置
+
+
+### 设置ID、用户名、密码参数。
+
+没有用户名密码时可以为空,该指令设置字符串可不带引号。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+### 当MQTTMUX=0 时
+
+
+#### `AT+MQTTCONNPARAM=<”clientdID”>,<”`
+
+username”>,<”password”><CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+#### `AT+MQTTCONNPARAM=<sid>,<”clientdI`
+
+D”>,<”username”>,<”password”><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询
+
+
+### 当MQTTMUX=0 时
+
+
+### AT+MQTTCONNPARAM?<CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### AT+MQTTCONNPARAM?<CR>
+
+
+### 当MQTTMUX=0 时
+
+<CR><LF>+MQTTCONNPARAM:<cliendid>,<
+
+username>,<password><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### 当MQTTMUX=1 时
+
+<CR><LF>+MQTTCONNPARAM:<sid><clien
+
+did>,<username>,<password><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试
+
+
+### 当MQTTMUX=0 时
+
+
+### AT+MQTTCONNPARAM=?<CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### AT+MQTTCONNPARAM=?<CR>
+
+
+### 当MQTTMUX=0 时
+
+<CR><LF>+MQTTCONNPARAM:<cliendid>,<
+
+username>,<password>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### 当MQTTMUX=1 时
+
+<CR><LF>+MQTTCONNPARAM:<sid>,<clien
+
+did>,<username>,<password>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5
+
+<clientID> 设备ID,最大长度256。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 180
+
+
+<username> 用户名,最大长度512。
+
+<password> 密码,最大长度256。
+
+示例
+
+
+#### `AT+MQTTCONNPARAM="C_201801021127","lixytest/thing01","0`
+
+lSoY/eYnlSqUeAsbAKKQ/ACmipZwEw9H7Ff0h1kOps="
+
+
+```
+OK
+```
+
+参数设置成功
+
+
+### 15.4 AT+MQTTWILLPARAM–遗嘱设置
+
+设置遗嘱信息,该指令设置字符串可不带引号。。
+
+
+### 在MQTT 已经连接的情况下设置参数无效,掉电后参数需重新设置。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+### 当MQTTMUX=0 时
+
+
+#### `AT+MQTTWILLPARAM=<retained>,<qos>,<”`
+
+topicname”>,<”message”><CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+#### `AT+MQTTWILLPARAM=<sid>,<retained>,<q`
+
+os>,<”topicname”>,<”message”><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+查询
+
+
+### 当MQTTMUX=0 时
+
+
+### AT+MQTTWILLPARAM?<CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### AT+MQTTWILLPARAM?<CR>
+
+
+### 当MQTTMUX=0 时
+
+<CR><LF>+MQTTWILLPARAM:<retained>,
+
+<qos>,<topicname>,<message>
+
+
+### <CR><LF><CR><LF>OK<CR><LF>
+
+
+
+### 当MQTTMUX=1 时
+
+<CR><LF>+MQTTWILLPARAM:<sid>,<retai
+
+ned>,<qos>,<topicname>,<message>
+
+
+### <CR><LF><CR><LF>OK<CR><LF>
+
+测试
+
+
+### 当MQTTMUX=0 时
+
+
+### AT+MQTTWILLPARAM=?<CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### AT+MQTTWILLPARAM=?<CR>
+
+
+### 当MQTTMUX=0 时
+
+<CR><LF>+MQTTWILLPARAM:<retained>,
+
+<qos>,<topicname>,<message>
+
+
+### <CR><LF><CR><LF>OK<CR><LF>
+
+
+
+### 当MQTTMUX=1 时
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 181
+
+
+<CR><LF>+MQTTWILLPARAM:<sid>,<retai
+
+ned>,<qos>,<topicname>,<message>
+
+
+### <CR><LF><CR><LF>OK<CR><LF>
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5
+
+<retained> 保留标志,数字类型 0,1。
+
+<qos> 服务质量,Qos=0,1,2。
+
+<”topicname”> 遗嘱主题,最大长度128。
+
+<”message”> 遗嘱消息,最大长度1024。
+
+示例
+
+
+#### `AT+MQTTWILLPARAM=0,1,"neoway02",”byby”`
+
+
+```
+OK
+```
+
+遗嘱设置成功。
+
+
+### 15.5 AT+MQTTWILLMSG–长遗嘱消息设置
+
+设置长遗嘱或者非字符串遗嘱消息,指定retained、qos、topic、message length,该指令设置字
+
+符串可不带引号。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+### 当MQTTMUX=0 时
+
+
+#### `AT+MQTTWILLMSG=<retained>,<qos>,<”topic”>,<msg`
+
+_length><CR>
+
+
+### 当MQTTMUX=1 时
+
+
+#### `AT+MQTTWILLMSG=<sid>,<retained>,<qos>,<”topic”>,`
+
+<msg_length><CR>
+
+
+### <CR><LF>>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5
+
+<retained> 保留标志,数字类型,0 和1。
+
+<qos> 发布消息的QoS 等级,Qos=0,1,2。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 182
+
+
+<”topic”> 发布的主题。
+
+<willmsg_length> 消息体长度,最大10240 字节,提示>后输入<length>指定的长度的消息内容。
+
+示例
+
+
+#### `AT+MQTTWILLMSG =1,1,"neoway02",10`
+
+
+>
+
+
+```
+OK
+```
+
+遗嘱消息设置成功。
+
+
+#### `AT+MQTTWILLMSG=1,1,"neoway02",10`
+
+
+>
+
+
+```
++MQTTWILLMSG: Timeout!
+```
+
+遗嘱消息设置失败,写入超时。
+
+
+### 15.6 AT+MQTTCONN–连接命令
+
+
+### 连接MQTT 服务器。
+
+在连接的过程中等待连接返回值,没有返回值的情况下,不能再次进行连接操作,该指令设置字符
+
+串可不带引号。
+
+当连接成功后,没有主动断开情况下如果模组主动上报+MQTTDISCONNED: Link Closed,需手动
+
+进行连接。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+### 当MQTTMUX=0 时
+
+
+#### `AT+MQTTCONN=<"host">,<clean>,`
+
+<keep_alive><CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+#### `AT+MQTTCONN=<sid>,<"host">,<cl`
+
+ean>,<keep_alive><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询
+
+
+### 当MQTTMUX=0 时
+
+
+### AT+MQTTCONN?<CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### AT+MQTTCONN?<CR>
+
+
+### 当MQTTMUX=0 时
+
+
+### <CR><LF>+MQTTCONN:
+
+<ip:port>,<clean>,<keep_alive><CR><LF>OK<C
+
+
+### R><LF>
+
+
+
+### 当MQTTMUX=1 时
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 183
+
+
+
+### <CR><LF>+MQTTCONN:
+
+<sid>,<ip:port>,<clean>,<keep_alive><CR><LF>
+
+
+### OK<CR><LF>
+
+
+测试
+
+
+### 当MQTTMUX=0 时
+
+
+### AT+MQTTCONN=?<CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### AT+MQTTCONN=?<CR>
+
+
+### 当MQTTMUX=0 时
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5
+
+<"host"> 服务器地址(url:port)。
+
+<clean> 是否清除session,数字类型
+
+0-不清除(默认)
+
+1-清除
+
+<keep_alive> keepAlive 时间设置,取值范围[20,180],单位s。
+
+示例
+
+
+### AT+MQTTCONN="121.43.166.63:1883",0,60
+
+
+```
+OK
+```
+
+连接成功。
+
+
+### 15.7 AT+MQTTSUB–订阅命令
+
+订阅主题。
+
+
+### 当SUB 失败后,查询MQTT 和网络状态再进行操作。当网络不佳的情况下,返回值较慢,该指令
+
+设置字符串可不带引号。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+### 当MQTTMUX=0 时
+
+
+#### `AT+MQTTSUB=<"topicname">,`
+
+<qos><CR>
+
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 184
+
+
+
+### 当MQTTMUX=1 时
+
+
+#### `AT+MQTTSUB=<sid>,<"topicna`
+
+me">,<qos><CR>
+
+查询
+
+
+### 当MQTTMUX=0 时
+
+
+### AT+MQTTSUB?<CR>
+
+
+### 当MQTTMUX=1 时
+
+
+### AT+MQTTSUB?<CR>
+
+
+### 当MQTTMUX=0 时
+
+<CR><LF>+MQTTSUB: <topicname>,<qos>
+
+
+### <CR><LF><CR><LF>OK<CR><LF>
+
+
+### 当MQTTMUX=1 时
+
+<CR><LF>+MQTTSUB: <sid>,<topicname>,<qos>
+
+
+### <CR><LF><CR><LF>OK<CR><LF>
+
+测试
+
+
+### 当MQTTMUX=0 时
+
+
+### AT+MQTTSUB=?<CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### AT+MQTTSUB=?<CR>
+
+
+### 当MQTTMUX=0 时
+
+<CR><LF><CR><LF>+MQTTSUB:<topicname>,<qos>
+
+
+### <CR><LF><CR><LF>OK<CR><LF>
+
+
+
+### 当MQTTMUX=1 时
+
+<CR><LF><CR><LF>+MQTTSUB:<sid>,<topicname>,<
+
+qos>
+
+
+### <CR><LF><CR><LF>OK<CR><LF>
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5
+
+<"topicname"> 订阅的主题,最大长度128。
+
+<qos> 服务质量,目前支持Qos=0,1 和2
+
+示例
+
+
+#### `AT+MQTTSUB="neoway02",1`
+
+
+```
+OK
+```
+
+
+```
++MQTTSUB:9,"neoway02",11,neoway mqtt
+```
+
+主题订阅成功,同时服务器下发上次保留的 topic。
+
+
+#### `AT+MQTTSUB= neoway02,1`
+
+
+```
+OK
+```
+
+主题订阅成功。
+
+
+### 15.8 AT+MQTTUNSUB–取消订阅
+
+取消订阅,指定topicname 内容,取消“未订阅的topic”,也应返回ok。
+
+
+### UNSUB 取消订阅失败,查询网络状态。当网络不佳的情况下,返回值较慢,该指令设置字符串可
+
+不带引号。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 185
+
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+### 当MQTTMUX=0 时
+
+
+#### `AT+MQTTUNSUB=<"topicname"><CR>`
+
+
+
+### 当MQTTMUX=1 时
+
+
+#### `AT+MQTTUNSUB=<sid>,<"topicname"><CR>`
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5
+
+<"topicname"> 取消订阅的主题,最大长度128。
+
+示例
+
+
+#### `AT+MQTTUNSUB="neoway02"`
+
+
+```
+OK
+```
+
+取消订阅。
+
+
+### 15.9 AT+MQTTPUB–发布主题
+
+主题发布。
+
+当网络不佳的情况下,返回值较慢。
+
+
+### 字符反斜杠‘\’是转义字符,建议使用长消息 AT+MQTTPUBS 发送带有转移符‘\’的消息,该
+
+指令设置字符串可不带引号。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+### 当MQTTMUX=0 时
+
+
+#### `AT+MQTTPUB=<retained>,<qos>,<"topic`
+
+name">,<"message"><CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+#### `AT+MQTTPUB=<sid>,<retained>,<qos>,<`
+
+"topicname">,<"message"><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 186
+
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5
+
+<retained> 保留标志,数字类型,0 和1。
+
+<qos> 服务质量,目前仅支持Qos=0,1 和2。
+
+<"topicname"> 发布的主题,最大长度128。
+
+<"message"> 发布的消息,最大长度1024。
+
+示例
+
+
+#### `AT+MQTTPUB=1,1,"neoway02",”neoway mqtt”`
+
+
+```
+OK
+```
+
+topic发布成功。
+
+
+#### `AT+MQTTPUB=1,1,"neoway02",”neoway mqtt”`
+
+
+```
+OK
+```
+
+
+```
++MQTTSUB:5,"neoway02",11, neowaymqtt
+```
+
+topic发布成功,同时服务器下发该 topic。
+
+
+### 15.10 AT+MQTTPUBS–发布长消息命令
+
+发布长消息或者非字符串消息,指定retained,qos,topic,message length,该指令设置字符串
+
+可不带引号。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+### 当MQTTMUX=0 时
+
+
+#### `AT+MQTTPUBS=<retained>,<qos>,<”topic`
+
+”>,<msg_length><CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+#### `AT+MQTTPUBS=<sid>,<retained>,<qos>,`
+
+<”topic”>,<msg_length><CR>
+
+
+
+### <CR><LF>>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>><CR><LF>
+
+<CR><LF>+MQTTPUBS: Timeout!<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5
+
+<retained> 保留标志,数字类型,0 和1
+
+<qos> 发布消息的QoS 等级
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 187
+
+
+<”topic”> 发布的主题
+
+<msg_length> 消息体长度,最大10240 字节,提示>后输入<length>指定的长度的消息内容
+
+示例
+
+
+#### `AT+MQTTPUBS=1,1,"lixytopic",10`
+
+
+>
+
+```
+OK
+```
+
+Pub消息成功。
+
+
+#### `AT+MQTTPUBS=0,1,"lixytopic",12`
+
+
+>
+
+```
++MQTTPUBS: Timeout!
+```
+
+Pub消息失败,写入超时。
+
+
+### 15.11 AT+MQTTDISCONN–关闭 MQTT 连接
+
+
+### 关闭MQTT 连接。
+
+终端主动断开和服务端的连接,然后释放MQTT 资源,参数设置也会释放,如果需要pub 消息,
+
+需要重新发起参数设置再连接设备。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 当MQTTMUX=0 时
+
+
+### AT+MQTTDISCONN<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 设置 当MQTTMUX=1 时
+
+
+#### `AT+MQTTDISCONN=<sid><CR>`
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5,参数仅在当MQTTMUX=1 时生效
+
+示例
+
+
+### AT+MQTTDISCONN
+
+
+```
+OK
+```
+
+
+### 关闭 MQTT 连接。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 188
+
+
+
+### 15.12 +MQTTSUB–接收主题内容
+
+收到服务器发过来的主题内容。 当网络不佳的情况下, 返回值较慢, 该指令设置字符串可不带引号。
+
+命令格式
+
+类型 命令
+
+主动上报
+
+
+### 当MQTTMUX=0 时
+
+```
++MQTTSUB:<message_id>,<topicname>,<message_len>,<message><CR>
+```
+
+
+
+### 当MQTTMUX=1 时
+
+```
++MQTTSUB:<sid>,<message_id>,<topicname>,<message_len>,<message><CR>
+```
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5
+
+<message_id> 消息ID。
+
+<"topicname"> 主题,使用双引号括起来。
+
+<message_len> 接收到的数据长度。
+
+<message> 接收到的数据。
+
+示例
+
+```
++MQTTSUB:1,"neoway02",5,12345 收到主题。
+```
+
+
+### 15.13 AT+MQTTSTATE–MQTT 连接状态查询
+
+
+### 查询MQTT 连接状态。
+
+
+### 设置指令掉电不保存,每次建立MQTT 后,需要进行主动上报开启设置。
+
+命令格式
+
+类型 命令 响应格式
+
+查询
+
+
+### 当MQTTMUX=0 时
+
+
+### AT+MQTTSTATE?<CR>
+
+
+
+### 当MQTTMUX=0 时
+
+<CR><LF>+MQTTSTATE: <state><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 189
+
+
+
+### 当MQTTMUX=1 时
+
+
+### AT+MQTTSTATE?<CR>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### <CR><LF>+MQTTSTATE:
+
+<sid>,<state><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+设置
+
+
+### 当MQTTMUX=0 时
+
+
+#### `AT+MQTTSTATE=<sid><CR>`
+
+
+
+### 当MQTTMUX=1 时
+
+
+#### `AT+MQTTSTATE=<sid><CR>`
+
+
+### 当MQTTMUX=0 时
+
+
+### <CR><LF>+MQTTSTATE:
+
+<state><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### 当MQTTMUX=1 时
+
+
+### <CR><LF>+MQTTSTATE:
+
+<sid>,<state><CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<sid> 对应的MQTT 链路,范围0-5
+
+<state> 重连状态。
+
+
+## 0 MQTT 已断开
+
+
+## 1 MQTT 已连接
+
+示例
+
+
+### AT+MQTTSTATE?
+
+
+
+### +MQTTSTATE: 1
+
+```
+OK
+```
+
+
+### MQTT连接状态查询。
+
+
+### 1表示当前 MQTT已连接上。
+
+
+### AT+MQTTSTATE?
+
+
+
+### +MQTTSTATE: 0
+
+```
+OK
+```
+
+
+### MQTT连接状态查询。
+
+
+### 0表示当前 MQTT已断开连接。
+
+
+### AT+MQTTSTATE=0
+
+
+
+### +MQTTSTATE: 0
+
+```
+OK
+```
+
+
+### MQTT连接状态查询。
+
+
+### 0表示当前 MQTT已断开连接。
+
+
+### AT+MQTTMUX=1
+
+
+```
+OK
+```
+
+
+### AT+MQTTSTATE=2
+
+
+
+### +MQTTSTATE: 2,0
+
+```
+OK
+```
+
+
+### MQTT连接状态查询。
+
+
+### 0表示第 2路 MQTT已断开连接。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 15 章标准MQTT 指令
+
+
+深圳市有方科技股份有限公司版权所有 190
+
+
+当MQTTMUX=0 时,AT+MQTTMUX=<sid>的sid 只能设置为0。
+
+
+### 当MQTTMUX=1 时,AT+MQTTMUX?只能查询第0 路MQTT 的连接状态。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 191
+
+
+
+## 16 GPS 功能
+
+
+### 16.1 AT$MYGPSPWR–GPS 开关指令
+
+
+### 开启GPS 服务会占用模组较多资源,如果不需要GPS 服务,可以关闭掉GPS 服务。
+
+
+### 请求成功后,模组从开启GPS 到GPS 定位需要一段时间,具体时间和环境因素有关,请注意天线
+
+匹配。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT$MYGPSPWR=<n><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<n> 请求选择
+
+
+### 0:关闭GPS 服务
+
+
+### 1:开启GPS 服务
+
+示例
+
+
+### AT$MYGPSPWR=1
+
+
+```
+OK
+```
+
+
+### 开启 GPS服务
+
+
+### AT$MYGPSPWR=0
+
+
+```
+OK
+```
+
+
+### 关闭 GPS服务
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 192
+
+
+
+### 16.2 AT$MYGPSSTATE–查询 GPS 开关状态
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 查询 AT$MYGPSSTATE<CR>
+
+<CR><LF>$MYGPSSTATE: gps opened <CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+<CR><LF>$MYGPSSTATE: gps closed<CR><LF>
+
+
+### <CR><LF>OK<CR><LF>
+
+示例
+
+
+### AT$MYGPSPWR=1
+
+
+```
+OK
+```
+
+
+### AT$MYGPSSTATE
+
+
+$MYGPSSTATE: gps opened
+
+```
+OK
+```
+
+
+### 开启 GPS服务后查询
+
+
+### AT$MYGPSPWR=0
+
+
+```
+OK
+```
+
+
+### AT$MYGPSSTATE
+
+
+$MYGPSSTATE: gps closed
+
+```
+OK
+```
+
+
+### 关闭 GPS服务后查询
+
+
+### 16.3 AT$MYGPSPOS–获取 NMEA 数据
+
+
+### 获取NMEA 数据。
+
+
+
+### ⚫ 获取的是GPS 坐标。
+
+
+### ⚫ 开启GPS 服务后的第一次定位需要较长时间。
+
+
+### ⚫ 示例以单GPS 模式为例,其他定位系统的关键字不同,北斗(BD/GB)、GLONASS(GL)、
+
+
+### GALILEO(GA),多模系统(GN),其语句的格式及意义相同。
+
+
+### ⚫ 如已经打开GPS 数据的循环上报,在进行透传等相关业务时,需要先关闭GNSS 循环上报,等待数
+
+据完成后再重新打开。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 193
+
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT$MYGPSPOS=<TYPE>,
+
+<Mode><CR>
+
+
+### 0:NMEA$GPGGA 格式
+
+
+### <CR><LF>$MYGPSPOS: $GPGGA,<1>,<2>,<3>,<4>,<5>,
+
+<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>*<hh>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 1:NMEA$GPGSA 格式
+
+
+### <CR><LF>$MYGPSPOS: $GPGSA,<1>,<2>,<3>,<4>,<5>,
+
+<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>,<15>,<16>,<1
+
+7>,*<hh><CR><LF>OK<CR><LF>
+
+
+### 2:NMEA$GPGSV 格式
+
+
+### <CR><LF>$MYGPSPOS: $GPGSV, <1>,<2>,<3>,<4>,<5>,
+
+<6>,<7>[,<4>,<5>,<6>,<7>...]*<hh>
+
+
+### <CR><LF>$GPGSV, <1>,<2>,<3>,<4>,<5>,<6>,<7>[,<4>,
+
+<5>,<6>,<7>...]*<hh>
+
+
+### <CR><LF>...
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 3:NMEA$GPRMC 格式
+
+
+### <CR><LF>$MYGPSPOS: $GPRMC,<1>,<2>,<3>,<4>,<5>,
+
+<6>,<7>,<8>,<9>,<10>,<11>,<12>*<hh>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 4:NMEA$GPVTG 格式
+
+
+### <CR><LF>$MYGPSPOS: $GPVTG,<1>,T,<2>,M,<3>,N,
+
+<4>,K,<5>*<hh>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 5:NMEA$GPGLL 格式
+
+
+### <CR><LF>$MYGPSPOS: $GPGLL,<1>,<2>,<3>,<4>,<5>,
+
+<6>*<hh>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+
+### <TYPE> GPS 数据类型,整数类型。
+
+
+### 0:NMEA$GPGGA 格式
+
+
+### 1:NMEA$GPGSA 格式
+
+
+### 2:NMEA$GPGSV 格式
+
+
+### 3:NMEA$GPRMC 格式
+
+
+### 4:NMEA$GPVTG 格式
+
+
+### 5:NMEA$GPGLL 格式
+
+
+### 6:输出全部GPS 信息
+
+<Mode> 输出方式
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 194
+
+
+0:只输出一次(默认)
+
+
+### 1:循环输出定位信息,通过TYPE 参数指定循环输出的内容
+
+2:关闭定位信息循环输出
+
+
+### ⚫ 0:NMEA$GPGGA 格式
+
+<1> UTC 时间,hh mm ss
+
+<2> 纬度,dd mm mmmm
+
+<3> 纬度方向
+
+
+### N:北纬
+
+
+### S:南纬
+
+<4> 经度ddd mm mmmm
+
+<5> 经度方向
+
+
+### E:东经
+
+
+### W:西经
+
+
+### <6> GPS 状态指示
+
+0:未定位
+
+1:无差分定位信息
+
+2:带差分定位信息
+
+
+### 3:无效GPS
+
+6:正在估算
+
+<7> 正在使用的卫星数
+
+
+### <8> HDOP 水平精度因子
+
+<9> 海平面高度
+
+<10> 海平面高度单位
+
+M:米
+
+<11> 大地水准面的高度
+
+<12> 水准面高度单位
+
+
+### <13> 差分GPS 信息,即差分时间
+
+<14> 差分参考基站标号
+
+<hh> 校验和
+
+
+### ⚫ 1:NMEA$GPGSA 格式
+
+<1> 定位模式
+
+
+### A:自动手动
+
+
+### M:手动
+
+<2> 定位类型
+
+1:未定位
+
+
+### 2:2D 定位
+
+
+### 3:3D 定位
+
+
+### <3> PRN 码,第1 信道正在使用的卫星PRN 码编号
+
+
+### <4> PRN 码,第2 信道编号
+
+
+### <5> PRN 码,第3 信道编号
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 195
+
+
+
+### <6> PRN 码,第4 信道编号
+
+
+### <7> PRN 码,第5 信道编号
+
+
+### <8> PRN 码,第6 信道编号
+
+
+### <9> PRN 码,第7 信道编号
+
+
+### <10> PRN 码,第8 信道编号
+
+
+### <11> PRN 码,第9 信道编号
+
+
+### <12> PRN 码,第10 信道编号
+
+
+### <13> PRN 码,第11 信道编号
+
+
+### <14> PRN 码,第12 信道编号
+
+
+### <15> PDOP 综合位置精度因子(0.5 - 99.9)
+
+
+### <16> HDOP 水平精度因子(0.5 - 99.9)
+
+
+### <17> VDOP 垂直精度因子(0.5 - 99.9)
+
+<hh> 校验和
+
+
+### ⚫ 2:NMEA$GPGSV 格式
+
+
+### <1> GSV 语句的总数
+
+
+### <2> 本句GSV 的编号
+
+<3> 可见卫星的总数,00 至 12。
+
+<4> 星编号,01 至 32。
+
+<5> 卫星仰角,00 至 90 度。
+
+<6> 卫星方位角,000 至 359 度。实际值。
+
+<7> 讯号噪声比(C/No),00 至 99 dB;无表示未接收到讯号。
+
+<hh> 校验和
+
+第<4>,<5>,<6>,<7>个可能会重复出现,每行最多有四颗卫星。若未使用,这些字段会
+
+空白。
+
+
+### $GPGSV 的条数与<1>的值相同
+
+
+### ⚫ 3:NMEA$GPRMC 格式
+
+<1> UTC 时间,hhmmss(时分秒)格式
+
+<2> 定位状态
+
+
+### A:有效定位
+
+
+### V:无效定位
+
+<3> 纬度ddmm.mmmm(度分)格式(前面的0 也将被传输)
+
+<4> 纬度方向
+
+
+### N:北纬
+
+
+### S:南纬
+
+<5> 经度dddmm.mmmm(度分)格式(前面的0 也将被传输)
+
+<6> 经度方向
+
+
+### E:东经
+
+
+### W:西经
+
+<7> 地面速率(000.0~999.9 节,前面的0 也将被传输)
+
+<8> 地面航向(000.0~359.9 度,以真北为参考基准,前面的0 也将被传输)
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 196
+
+
+<9> UTC 日期,ddmmyy(日月年)格式
+
+<10> 磁偏角(000.0~180.0 度,前面的0 也将被传输)
+
+<11> 磁偏角方向
+
+E:东
+
+W:西
+
+<12> 模式指示
+
+
+### A:自主定位
+
+
+### D:差分
+
+
+### E:估算
+
+
+### N:数据无效
+
+<hh> 校验和
+
+
+### ⚫ 4:NMEA$GPVTG 格式
+
+<1> 以真北为参考基准的地面航向
+
+<2> 以磁北为参考基准的地面航向
+
+<3> 地面速率
+
+<4> 地面速率
+
+<5> 模式指示
+
+
+### A:自主定位
+
+
+### D:差分
+
+
+### E:估算
+
+
+### N:数据无效
+
+<hh> 校验和
+
+
+### ⚫ 5:NMEA$GPGLL 格式
+
+<1> 纬度ddmm.mmmm
+
+<2> 纬度方向
+
+
+### N:北纬
+
+
+### S:南纬
+
+<3> 经度dddmm.mmmm
+
+<4> 经度方向
+
+
+### E:东经
+
+
+### W:西经
+
+<5> UTC 时间,hhmmss.sss 格式
+
+<6> 状态
+
+
+### A:定位
+
+
+### V:未定位
+
+<hh> 校验和
+
+示例
+
+
+### AT$MYGPSPOS=0 获取到定位信息。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 197
+
+
+
+### $MYGPSPOS:
+
+
+### $GPGGA,062436.000,3412.447338,N,10849.876157,E,1,13,0.767,399.321,
+
+
+### M,0,M,,*75
+
+
+```
+OK
+```
+
+
+
+### AT$MYGPSPOS=1
+
+
+
+### $MYGPSPOS:
+
+
+### $GPGSA,A,3,196,195,30,29,24,23,20,18,15,13,11,5,1.297,0.767,1.046*
+
+0E
+
+
+```
+OK
+```
+
+
+### 获取 GPGSA格式数据。
+
+
+### AT$MYGPSPOS=2
+
+
+
+### $MYGPSPOS:
+
+
+### $GPGSV,4,1,16,196,69,82,42,195,39,153,41,30,11,48,35,29,47,238,44*
+
+7B
+
+
+### $GPGSV,4,2,16,24,14,171,34,23,17,279,38,20,22,77,37,18,39,318,42*4
+
+2
+
+
+### $GPGSV,4,3,16,15,77,232,46,13,64,57,44,11,16,126,36,5,50,47,43*4D
+
+
+### $GPGSV,4,4,16,2,44,131,43,40,40,222,39,193,1,,,194,1,,*47
+
+
+```
+OK
+```
+
+
+### 获取 GPGSV格式数据。
+
+
+### AT$MYGPSPOS=3
+
+
+
+### $MYGPSPOS:
+
+
+### $GPRMC,062600.000,A,3412.447338,N,10849.876157,E,0.000,0.000,16082
+
+
+### 2,,E,A*23
+
+
+```
+OK
+```
+
+
+### 获取 GPRMC格式数据。
+
+
+### AT$MYGPSPOS=4
+
+
+
+### $MYGPSPOS: $GPVTG,0.000,T,,M,0.000,N,0.000,K,A*0D
+
+
+```
+OK
+```
+
+
+### 获取 GPVTG格式数据。
+
+
+### AT$MYGPSPOS=5
+
+
+
+### $MYGPSPOS: $GPGLL,3412.447338,N,10849.876157,E,062659.000,A,A*52
+
+
+```
+OK
+```
+
+
+### 获取 GPGLL格式数据。
+
+
+### 16.4 AT$MYGNSSSEL–选择定位系统
+
+⚫ 选择定位系统
+
+⚫
+
+
+
+### ⚫ 定位信息通过$MYGNSSMSG 查询
+
+
+### ⚫ 需要在打开GPS 开关之后设置
+
+
+### ⚫ 默认是GPS+BD+QZSS 定位模式
+
+
+### ⚫ QZSS 使用的GPS 的L1 频点,如下的定位模式中 GPS 中默认包含QZSS 系统。
+
+⚫ 系统默认支持(0,1,2,3,4)的五种定位模式,其他模式可根据需求定制,非全部支持。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 198
+
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT$MYGNSSSEL =<n><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT$MYGNSSSEL?<CR> <CR><LF>$MYGNSSSEL:<n>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT$MYGNSSSEL?<CR> <CR><LF>$MYGNSSSEL: (0-14)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<n> 定位系统选择
+
+
+### 0:GPS+ BD
+
+
+### 1:GPS+GLONASS
+
+
+### 2:GPS+GALILEO
+
+
+### 3:GPS
+
+
+### 4:BD
+
+
+### 5:BD+GLONASS
+
+
+### 6:BD+GALILEO
+
+
+### 7:GLONASS+GALILEO
+
+
+### 8:GLONASS
+
+
+### 9:GALILEO
+
+
+### 10:GPS+BD+GLONASS
+
+
+### 11:GPS+BD+GALILEO
+
+
+### 12:GPS+GLONASS+GALILEO
+
+
+### 13:BD+GLONASS+GALILEO
+
+
+### 14:GPS+BD+GLONASS+GALILEO
+
+示例
+
+
+### AT$MYGNSSSEL=0
+
+
+```
+OK
+```
+
+
+### 选择 GPS+BEIDOU 定位模式
+
+
+### AT$MYGNSSSEL=3
+
+
+```
+OK
+```
+
+
+### 选择 GPS定位模式
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 199
+
+
+
+### 16.5 AT$MYGNSSMSG–获取 GPS 辅助定位信息
+
+
+### ⚫ 获取GPS 辅助定位信息
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 设置 AT$MYGNSSMSG<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+示例
+
+
+### AT$MYGNSSMSG
+
+
+```
+OK
+```
+
+
+### $GNRMC,103734.000,A,3412.44440,N,10849.87438,E,0.061,316.789,191224,,,A,S*05
+
+
+### $GNGGA,103734.000,3412.44440,N,10849.87438,E,1,30,0.521,417.9,M,-29.4,M,,*6C
+
+
+### $GNGLL,3412.44440,N,10849.87438,E,103734.000,A,A*45
+
+
+### $GNGSA,A,3,14,30,195,21,2,194,17,7,19,199,8,3,0.964,0.521,0.810,1*00
+
+
+### $GNGSA,A,3,13,,,,,,,,,,,,0.964,0.521,0.810,1*37
+
+
+### $GNGSA,A,3,40,27,39,10,7,16,28,6,9,36,37,60,0.964,0.521,0.810,4*08
+
+
+### $GNGSA,A,3,1,59,2,5,4,,,,,,,,0.964,0.521,0.810,4*3E
+
+
+### $GPGSV,4,1,14,2,66,73,46,7,45,189,45,14,46,317,44,17,37,265,45,1*57
+
+
+### $GPGSV,4,2,14,21,47,52,45,30,59,250,47,194,55,91,44,195,60,104,44,1*60
+
+
+### $GPGSV,4,3,14,3,8,138,35,8,22,58,39,13,9,294,30,22,,,42,1*6F
+
+
+### $GPGSV,4,4,14,19,10,251,37,199,45,149,37,1*52
+
+
+### $GBGSV,6,1,23,6,43,186,43,7,73,331,47,9,55,201,45,10,64,299,45,1*43
+
+
+### $GBGSV,6,2,23,16,40,183,45,27,67,35,50,30,56,240,50,28,21,45,43,1*70
+
+
+### $GBGSV,6,3,23,29,3,231,43,36,36,314,47,37,30,140,44,38,11,158,40,1*49
+
+
+### $GBGSV,6,4,23,39,30,179,43,40,67,356,48,56,,,48,59,35,134,46,1*4C
+
+
+### $GBGSV,6,5,23,1,33,129,43,60,37,222,46,2,39,217,41,3,,,45,1*71
+
+
+### $GBGSV,6,6,23,4,22,114,39,5,22,243,38,58,,,47,1*78
+
+
+### $GNVTG,316.789,T,,M,0.061,N,0.113,K,A*15
+
+
+### $GNZDA,103734.000,19,12,2024,00,00*45
+
+
+### $GNRMC,103735.000,A,3412.44401,N,10849.87441,E,0.056,30.351,191224,,,A,S*3D
+
+
+### $GNGGA,103735.000,3412.44401,N,10849.87441,E,1,30,0.512,418.8,M,-29.4,M,,*68
+
+
+### $GNGLL,3412.44401,N,10849.87441,E,103735.000,A,A*4F
+
+
+### $GNGSA,A,3,195,30,21,7,17,2,194,19,199,14,8,3,0.923,0.512,0.767,1*0C
+
+
+### $GNGSA,A,3,13,,,,,,,,,,,,0.923,0.512,0.767,1*3B
+
+
+### $GNGSA,A,3,9,36,27,40,28,39,10,30,7,16,6,60,0.923,0.512,0.767,4*03
+
+
+### $GNGSA,A,3,1,2,59,4,5,,,,,,,,0.923,0.512,0.767,4*32
+
+
+### $GPGSV,4,1,14,2,66,73,46,7,45,189,45,14,46,317,44,17,37,265,45,1*57
+
+
+### $GPGSV,4,2,14,21,47,52,45,30,59,250,47,194,55,91,44,195,60,104,44,1*60
+
+
+### $GPGSV,4,3,14,3,8,138,35,8,22,58,39,13,9,294,30,22,,,42,1*6F
+
+
+### $GPGSV,4,4,14,19,10,251,37,199,45,149,37,1*52
+
+
+### $GBGSV,6,1,23,6,43,186,43,7,73,331,47,9,55,201,45,10,64,299,45,1*43
+
+
+### $GBGSV,6,2,23,16,40,183,44,27,67,35,50,30,56,240,50,28,21,45,43,1*71
+
+
+### $GBGSV,6,3,23,29,3,231,43,36,36,314,47,37,30,140,44,38,11,158,40,1*49
+
+
+### $GBGSV,6,4,23,39,30,179,43,40,67,356,48,56,,,48,59,35,134,46,1*4C
+
+
+### 开启 BD辅助定位系
+
+统获取到的循环上报
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 200
+
+
+
+### $GBGSV,6,5,23,1,33,129,43,60,37,222,45,2,39,217,41,3,,,45,1*72
+
+
+### $GBGSV,6,6,23,4,22,114,39,5,22,243,38,58,,,47,1*78
+
+
+### $GNVTG,30.351,T,,M,0.056,N,0.104,K,A*21
+
+
+### $GNZDA,103735.000,19,12,2024,00,00*44
+
+
+
+### AT$MYGNSSMSG
+
+
+```
+OK
+```
+
+
+### $GNRMC,104017.000,A,3412.44590,N,10849.87495,E,0.066,49.083,191224,,,A,S*3C
+
+
+### $GNGGA,104017.000,3412.44590,N,10849.87495,E,1,17,0.719,420.4,M,-29.4,M,,*63
+
+
+### $GNGLL,3412.44590,N,10849.87495,E,104017.000,A,A*4F
+
+
+### $GNGSA,A,3,14,21,30,2,17,7,194,8,195,199,19,13,1.188,0.719,0.946,1*31
+
+
+### $GNGSA,A,3,3,,,,,,,,,,,,1.188,0.719,0.946,1*06
+
+
+### $GNGSA,A,3,78,77,76,88,,,,,,,,,1.188,0.719,0.946,2*38
+
+
+### $GPGSV,4,1,14,2,66,70,46,3,9,138,35,7,44,188,46,8,21,58,38,1*5C
+
+
+### $GPGSV,4,2,14,14,47,318,44,17,38,266,45,19,11,251,37,21,46,51,45,1*5B
+
+
+### $GPGSV,4,3,14,22,,,41,30,59,247,47,194,55,91,43,195,61,103,44,1*65
+
+
+### $GPGSV,4,4,14,199,45,149,37,13,9,293,25,1*6D
+
+
+### $GLGSV,2,1,6,78,44,333,48,76,20,133,36,77,65,111,38,88,65,230,38,1*4A
+
+
+### $GLGSV,2,2,6,,,,34,,,,31,1*4B
+
+
+### $GNVTG,49.083,T,,M,0.066,N,0.122,K,A*24
+
+
+### $GNZDA,104017.000,19,12,2024,00,00*44
+
+
+### $GNRMC,104018.000,A,3412.44611,N,10849.87459,E,0.067,9.529,191224,,,A,S*09
+
+
+### $GNGGA,104018.000,3412.44611,N,10849.87459,E,1,17,0.719,420.7,M,-29.4,M,,*65
+
+
+### $GNGLL,3412.44611,N,10849.87459,E,104018.000,A,A*4A
+
+
+### $GNGSA,A,3,30,7,21,14,2,17,194,8,195,199,19,3,1.188,0.719,0.946,1*00
+
+
+### $GNGSA,A,3,13,,,,,,,,,,,,1.188,0.719,0.946,1*37
+
+
+### $GNGSA,A,3,78,77,88,76,,,,,,,,,1.188,0.719,0.946,2*38
+
+
+### $GPGSV,4,1,14,2,66,70,46,3,9,137,35,7,44,188,46,8,21,58,38,1*53
+
+
+### $GPGSV,4,2,14,14,47,318,44,17,38,266,45,19,11,251,36,21,46,51,45,1*5A
+
+
+### $GPGSV,4,3,14,22,,,41,30,59,247,47,194,55,91,43,195,61,103,44,1*65
+
+
+### $GPGSV,4,4,14,199,45,149,37,13,9,293,25,1*6D
+
+
+### $GLGSV,2,1,6,78,44,333,48,76,20,133,36,77,65,111,38,88,65,230,38,1*4A
+
+
+### $GLGSV,2,2,6,,,,34,,,,31,1*4B
+
+
+### $GNVTG,9.529,T,,M,0.067,N,0.124,K,A*12
+
+
+### $GNZDA,104018.000,19,12,2024,00,00*4B
+
+
+### 开启 GLONASS辅助
+
+定位系统获取到的定
+
+位信息
+
+
+### 16.6 AT$MYGPSCFG–GPS 设置
+
+
+### 设置GPS 相关参数。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT$MYGPSCFG=<type>,<value><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT$MYGPSCFG?<CR> <CR><LF>$MYGPSCFG: <type>,<value>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 201
+
+
+参数
+
+<type> 设置类型。
+
+
+### 0:设置GPS 更新频率
+
+
+### 1:设置NMEA 数据上报
+
+其他:预留
+
+<value> 根据<type>配置对应的值。
+
+type =0 时,表示更新间隔,取值范围500~1000ms
+
+type=1 时,value 为0 关闭上报,1 打开上报,默认打开
+
+示例
+
+
+### AT$MYGPSCFG=0,1000
+
+
+```
+OK
+```
+
+设置GPS更新频率为 1s,NMEA口每隔 1s上报一次数据。
+
+
+### AT$MYGPSCFG?
+
+
+
+### $MYGPSCFG: 0,1000
+
+
+
+### $MYGPSCFG: 1,1
+
+
+```
+OK
+```
+
+查询参数设置。
+
+
+### AT$MYGPSCFG=0,500
+
+
+```
+OK
+```
+
+设置GPS更新频率为 0.5s,NMEA口每隔 0.5s上报一次数据。
+
+
+### AT$MYGPSCFG=1,0
+
+
+```
+OK
+```
+
+
+### 关闭NMEA口上报。
+
+
+### 16.7 AT+GPSDEL–删除辅助数据
+
+
+### 删除辅助数据,相当于设置一次冷启动模式,需要在打开GPS 之后操作。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 查询 AT+GPSDEL<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+示例
+
+
+### AT+GPSDEL
+
+删除辅助数据
+
+
+
+### N706A AT 命令手册
+
+
+### 第 16 章 GPS 功能
+
+
+深圳市有方科技股份有限公司版权所有 202
+
+
+```
+OK
+```
+
+
+### 16.8 AT+SETSERVER–设置 AGNSS 服务器
+
+
+### ⚫ 设置AGNSS 服务器。
+
+⚫
+
+
+
+### ⚫ 设置AGNSS 服务器需要先完成注网,拨号操作,且在打开GPS 之前。
+
+
+### ⚫ 当前默认使用直连芯片商AGNSS 服务器模式,且默认使用GPS+BEIDOU 辅助数据。
+
+
+### ⚫ 示例提供的AGNSS 服务器的可用于测试,正式账号可联系有方申请确认。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+SETSERVER=<n>,<url>,<po
+
+rt>[,<user>,<password>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<n> 当前制式类型
+
+
+### 1:3GPP2
+
+
+### 2:3GPP(目前仅支持GSM,LTE 制式下使用)
+
+<url> 服务器地址,目前仅支持URL,字符取值范围 0-512
+
+<port> 服务器端口,范围1-255
+
+<user> 用户名,字符取值范围1-128
+
+<password> 密码,字符取值范围1-128
+
+示例
+
+
+#### `AT+SETSERVER=3,neoway-api.rx-networks.cn,80,BaYp7H89p4,TlZSY2paNWtHN1NiTXJoUw==`
+
+
+```
+OK
+```
+
+
+### 设置 AGNSS服务器
+
+
+
+### N706A AT 命令手册
+
+第 17 章网络时间同步
+
+
+深圳市有方科技股份有限公司版权所有 203
+
+
+17 网络时间同步
+
+
+### 17.1 AT+UPDATETIME–同步网络时间
+
+设置模组时间与网络时间同步指令。
+
+
+### 发送此指令之前,需打开PPP 连接;同步网络时间成功后,可发送AT+CCLK?查询RTC 时钟的时
+
+间是否为当前网络时间。
+
+目前支持网络时间同步的时间服务器有:time.windows.com、time.nist.gov 等。
+
+指令参数设置后,掉电不保存。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+UPDATETIME=<mode>[,<serv_ip>,
+
+<time>[[,<TZ>][,<DST>]]]<CR>
+
+<mode>=0 查询模式
+
+<CR><LF>+UPDATETIME: Last Update Time
+
+yyyy-mm-dd,hh:mm:ss
+
+
+### <CR><LF>OK<CR><LF>
+
+<mode>=1 设置模式
+
+
+### <CR><LF>OK<CR><LF>
+
+<CR><LF>+UPDATETIME:<result
+
+code><CR><LF>
+
+Or
+
+
+### <CR><LF>OK<CR><LF>
+
+<CR><LF>Time Updating,Please
+
+Wait...<CR><LF>
+
+<CR><LF>+UPDATETIME: Update To
+
+yyyy-mm-dd,hh:mm:ss<CR><LF>
+
+
+### 查询 AT+UPDATETIME?<CR>
+
+<CR><LF>+UPDATETIME: <serv_ip>,<time>,
+
+
+### <TZ>,<DST>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+UPDATETIME=?<CR>
+
+<CR><LF>+UPDATETIME: (value range of
+
+<mode>),,(value range of <time>),,(value range of
+
+
+### <DST>)
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+第 17 章网络时间同步
+
+
+深圳市有方科技股份有限公司版权所有 204
+
+
+参数
+
+<mode> 0:查询模式,查询上次同步网络时间的时间点
+
+1:设置模式,同步网络时间
+
+<serv_ip> 时间服务器IP 地址,格式为xx.xx.xx.xx;或者形如www.china.com(域名)
+
+<time> 设定超时延时时间,取值范围为1-60,单位:秒
+
+
+### <TZ> 时区选择,格式为“E/W 数字”,缺省为东8 区
+
+
+### E:表示东时区,支持东0-13 区
+
+
+### W:表示西时区,支持西0-12 区
+
+0:表示零时区
+
+<DST> 夏时制(Daylight Saving Time)选择
+
+1:选择夏时制自动调节时钟
+
+0:不选择(默认)
+
+<result code> No PPP Link:提示无PPP 连接,需先建立PPP 连接
+
+Time Out:提示同步网络时间超时,原因是在<time>时间内未收到服务器响应
+
+Time Data Is Null:提示服务器无时间数据返回
+
+Send Request Fail:提示向服务器发送请求失败
+
+Domain Name Invalid:域名无效或者域名解析失败
+
+Socket Error:socket 链路错误
+
+示例
+
+
+### AT+UPDATETIME=0
+
+
+```
++UPDATETIME:Last Update Time 2014-03-31,11:10:26
+```
+
+```
+OK
+```
+
+查询上次同步时间的时间点
+
+
+时间为:2014-03-31,11:10:26
+
+
+### AT+UPDATETIME=0
+
+
+```
++UPDATETIME: Last Update Time 0000-00-00,00:00:00
+```
+
+```
+OK
+```
+
+查询上次同步时间的时间点
+
+
+未同步,返回提示
+
+
+### AT+UPDATETIME=1,210.72.145.44,10
+
+
+```
++UPDATETIME: No PPP Link
+```
+
+
+### 提示未建立 PPP连接
+
+
+### AT+UPDATETIME=1,210.72.145.44,10
+
+
+```
+OK
+```
+
+
+Time Updating,Please Wait...
+
+
+```
++UPDATETIME: Time Out
+```
+
+
+### 同步网络时间,时间服务器 IP为:210.72.145.44
+
+超时延时时间为:10秒
+
+时区缺省为东 8区
+
+不选择夏时制
+
+提示同步时间超时,原因是网络繁忙
+
+
+### AT+UPDATETIME=1,128.138.141.172,10,"E8",0
+
+
+```
+OK
+```
+
+
+Time Updating,Please Wait...
+
+
+```
++UPDATETIME: Update To 2014-03-31,11:32:55
+```
+
+
+### 同步网络时间,时间服务器 IP为:128.138.141.172
+
+超时延时时间为:10秒
+
+时区选择为东 8区
+
+不选择夏时制
+
+同步网络时间,成功
+
+
+#### `AT+UPDATETIME=1,time.windows.com,10,"W12",1 同步网络时间,时间服务器域名为:time.windows.com`
+
+
+
+### N706A AT 命令手册
+
+第 17 章网络时间同步
+
+
+深圳市有方科技股份有限公司版权所有 205
+
+
+```
+OK
+```
+
+
+Time Updating,Please Wait...
+
+
+```
++UPDATETIME: Update To 2014-04-12,15:17:48
+```
+
+超时延时时间为:10秒
+
+时区选择为西 12区
+
+选择夏时制
+
+同步网络时间,成功
+
+
+### AT+UPDATETIME=1,128.138.141.172,10,"W12",1
+
+
+```
+OK
+```
+
+
+```
++UPDATETIME: Send Request Fail
+```
+
+同步网络时间请求发送失败,
+
+原因可能是:网络较差或服务器不支持同步网络时间
+
+
+#### `AT+UPDATETIME=1,time.windows.com,10,"W12",1`
+
+
+```
++UPDATETIME: Domain Name Invalid
+```
+
+
+### 提示域名无效,原因可能是:SIM(USIM)卡欠费
+
+
+#### `AT+UPDATETIME=1,time.windows.com,10,"W12",1`
+
+
+```
+OK
+```
+
+
+```
++UPDATETIME: Socket Error
+```
+
+提示 socket链路错误,原因可能是:网络繁忙
+
+
+### AT+UPDATETIME?
+
+
+
+### +UPDATETIME: 128.138.141.172,10,"E8",0
+
+```
+OK
+```
+
+
+### 查询上次同步时间的服务器 IP及超时延时时间、时区、夏时
+
+制选择
+
+
+### AT+UPDATETIME=?
+
+
+
+### +UPDATETIME: (0-1),,(1-30),,(0-1)
+
+```
+OK
+```
+
+查询指令可设置参数范围
+
+
+### AT+UPDATETIME=0
+
+
+```
++UPDATETIME:Last Update Time 2014-03-31,11:10:26
+```
+
+```
+OK
+```
+
+查询上次同步时间的时间点
+
+
+时间为:2014-03-31,11:10:26
+
+
+### AT+UPDATETIME=0
+
+
+```
++UPDATETIME: Last Update Time 0000-00-00,00:00:00
+```
+
+```
+OK
+```
+
+查询上次同步时间的时间点
+
+
+未同步,返回提示
+
+
+### AT+UPDATETIME=1,210.72.145.44,10
+
+
+```
++UPDATETIME: No PPP Link
+```
+
+
+### 提示未建立 PPP连接
+
+
+### AT+UPDATETIME=1,210.72.145.44,10
+
+
+```
+OK
+```
+
+
+Time Updating,Please Wait...
+
+
+```
++UPDATETIME: Time Out
+```
+
+
+### 同步网络时间,时间服务器 IP为:210.72.145.44
+
+超时延时时间为:10秒
+
+时区缺省为东 8区
+
+不选择夏时制
+
+提示同步时间超时,原因是网络繁忙
+
+
+### 17.2 AT+SETTZ–设置时钟偏移时间
+
+
+### 设置本地时钟偏移时间。设置后通过AT+CCLK? 显示。
+
+该命令支持掉电保存。
+
+
+
+### N706A AT 命令手册
+
+第 17 章网络时间同步
+
+
+深圳市有方科技股份有限公司版权所有 206
+
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+SETTZ=<n><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+SETTZ?<CR> <CR><LF>+SETTZ:<n>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<n> 偏移时间,以15 分钟为一个单位,范围-96~96。
+
+示例
+
+
+### AT+SETTZ?
+
+
+
+### +SETTZ: +32
+
+```
+OK
+```
+
+查询当前偏移时间为 32,即 32*15=480min,8 小时。
+
+
+### AT+SETTZ=+32
+
+
+```
+OK
+```
+
+
+### AT+CCLK?
+
+
+
+### +CCLK: "80/01/06,00:56:50+32"
+
+```
+OK
+```
+
+查询当前状态。
+
+
+### 17.3 AT+CTZU–时区更新,同步基站时间
+
+
+### 时区更新功能;控制NITZ 功能的打开或者关闭,同步基站时间。
+
+该指令掉电不保存,重启不生效。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CTZU=<onoff><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CTZU?<CR> <CR><LF>+CTZU:<onoff>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+第 17 章网络时间同步
+
+
+深圳市有方科技股份有限公司版权所有 207
+
+
+
+### 测试 AT+CTZU=?<CR>
+
+<CR><LF>+CTZU: (list of supported
+
+<onoff>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<onoff> NITZ 功能状态
+
+
+### 0:关闭NITZ 功能,不自动更新时区时间
+
+
+### 1:打开NITZ 功能,自动更新时区时间
+
+
+### 3:打开NITZ 功能,自动更新时区时间
+
+示例
+
+
+### AT+CTZU=1
+
+
+```
+OK
+```
+
+打开自动时区更新。
+
+
+### AT+CTZU?
+
+
+
+### +CTZU:1
+
+```
+OK
+```
+
+
+查询时区更新功能是否打开。
+
+
+### AT+CTZU=?
+
+
+
+### +CTZU: (0,1,3)
+
+```
+OK
+```
+
+测试命令。
+
+
+
+### ⚫ 打开NITZ 功能后,若运营商基站支持NITZ,则可通过AT+CCLK?获取当前时区时间;对于中国
+
+
+### 国内运营商,联通大部分基站并不支持 NITZ 功能。
+
+
+### ⚫ NITZ 功能的原理:获取网络注册时网络下发的时间;如果软件版本默认关闭该功能,使用指令打开
+
+
+### 功能进行测试时,需要重新注册一次网络(建议使用 AT+CFUN=4/1 进出飞行模式)。
+
+
+### 17.4 AT+CTZR–时区报告
+
+时区报告开关。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CTZR=<reporting><CR> <CR><LF>OK<CR><LF>
+
+Or
+
+
+
+### N706A AT 命令手册
+
+第 17 章网络时间同步
+
+
+深圳市有方科技股份有限公司版权所有 208
+
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CTZR?<CR> <CR><LF>+CTZR: <reporting>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+CTZR=?<CR>
+
+<CR><LF>+CTZR: (list of
+
+supported<reporting>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+主动
+
+上报
+
+<CR><LF>+CTZV: <tz><CR><LF>
+
+<CR><LF>+CTZE: <tz>,<dst>,[<time>]<CR><LF>
+
+<CR><LF>+CTZEU: <tz>,<dst>,[<utime>]<CR><LF>
+
+参数
+
+< reporting> 整数类型。
+
+0:禁用时区改变时间报告(默认值)。
+
+1:使能时区改变报告,回码为+CTZV: <tz>
+
+2:使能扩展时区及本地时间上报,回码为+CTZE: <tz>,<dst>,[<time>]
+
+3:使能扩展时区和世界时间报告,回码为+CTZEU: <tz>,<dst>,[<utime>]
+
+<tz> 字符串类型,表示本地时区(本地时间和GMT 之间的差,以四分之一小时为单位)
+
+加夏令时的总和,格式为“+zz”,表示固定宽度的两位整数。范围从-48~+56,-9~+9
+
+加0 表示,如“-09”,“+09”。
+
+<dst> <tz>整数,表明是否包含夏令时的调整值。
+
+0:<tz>不包含夏令时调整。
+
+1:<tz>包含+1 小时(等于<tz>包含4 刻钟)的夏时制调整。
+
+2:<tz>包含+2 小时(等于<tz>包含8 刻钟)的夏时制调整。
+
+<time> 字符串类型,表示本地时间,格式为:YYYY/MM/DD,hh:mm:ss。
+
+<utime> 字符串类型,表示世界时间,格式为:YYYY/MM/DD,hh:mm:ss。
+
+示例
+
+
+### AT+CTZR?
+
+
+
+### +CTZR:0
+
+```
+OK
+```
+
+查询时区报告设置
+
+
+### AT+CFUN=1
+
+
+```
+OK
+```
+
+使能时区改变报告
+
+
+
+### N706A AT 命令手册
+
+第 18 章网络共享
+
+
+深圳市有方科技股份有限公司版权所有 209
+
+
+18 网络共享
+
+
+### 18.1 AT+NETSHAREMODE–网络共享模式选择
+
+打开网络共享。
+
+切换共享模式后掉电保存,且重启生效。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+NETSHAREMODE=<share_mode><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+NETSHAREMODE?
+
+
+### <CR><LF>+NETSHAREMODE:
+
+<share_mode>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<share_mode> 0: RNDIS
+
+
+### 1: ECM
+
+示例
+
+
+### AT+NETSHAREMODE=1
+
+
+```
+OK
+```
+
+
+### 设置共享网络模式为 ECM。
+
+
+### AT+NETSHAREMODE?
+
+
+
+### +NETSHAREMODE: 1
+
+```
+OK
+```
+
+查询网络共享模式。
+
+
+### 当前共享模式为 ECM。
+
+
+
+### N706A AT 命令手册
+
+第 18 章网络共享
+
+
+深圳市有方科技股份有限公司版权所有 210
+
+
+
+### 18.2 AT+NETSHAREACT–打开网络共享
+
+打开网络共享。
+
+命令格式
+
+类型 命令 响应格式
+
+设置
+
+
+#### `AT+NETSHAREACT=<cid>,<action>,`
+
+<auto>[,<APN>[,<username>[,<pass
+
+wd>[,<authtype>[,<ip_family>]]]]]
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+NETSHAREACT?
+
+<CR><LF>+NETSHAREACT:<stat>,<auto>,<
+
+APN>,< user_name >,<
+
+passwd >,<PDP_type>,<share_mode>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+NETSHAREACT=?
+
+<CR><LF>+NETSHAREACT:(range of
+
+supported<cid>),(range of
+
+supported<action>),(range of
+
+supported<auto>),<apn>,<username>,<passwd>,(lis
+
+t of supported<authtype>s,list of supported
+
+<ip_family>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<cid> PDP 上下文,取值为2-7。
+
+<action> 执行动作
+
+0:stop
+
+1:start
+
+<auto> 选择是否上电后自动打开网络共享。
+
+0:manual
+
+1:auto
+
+<APN> 网络参数,APN,字符取值范围为0-50。如果<PDP_type>无效或者缺省,该字段
+
+不生效
+
+<user_name> 网络参数,用户名,字符取值范围为0-50。如果<auth_type>无效或者缺省,该字
+
+段不生效
+
+<passwd> 网络参数,密码,字符取值范围为0-50。如果<auth_type>无效或者缺省,该字段
+
+不生效
+
+<auth_type> 认证方式
+
+
+### 0:NONE
+
+
+
+### N706A AT 命令手册
+
+第 18 章网络共享
+
+
+深圳市有方科技股份有限公司版权所有 211
+
+
+
+### 1:PAP (默认)
+
+
+### 2:CHAP
+
+3:PAP and CHAP
+
+<ip_family> IP family
+
+4:IPv4(默认)
+
+6:IPv6
+
+10:IPv4_6
+
+<stat> 0:disconnect
+
+1:connect
+
+<atuo> 0:manual
+
+1:auto
+
+<PDP_type> IPv4
+
+<share_mode> RNDIS/ECM
+
+
+示例
+
+
+#### `AT+NETSHAREACT=2,1,0,ctnet,card,card,1`
+
+
+```
+OK
+```
+
+打开共享网络,不设置开机自动打开。
+
+
+### AT+NETSHAREACT=?
+
+
+
+### +NETSHAREACT:
+
+(2-7),(0-1),(0-1),"apn","user","passwd",(0-3),(4,6,10)
+
+```
+OK
+```
+
+打开网络共享的参数范围。
+
+
+### AT+NETSHAREACT?
+
+
+
+### +NETSHAREACT: 0,0,"","","","IPV4",RNDIS
+
+```
+OK
+```
+
+查询网络共享状态。
+
+
+
+### N706A AT 命令手册
+
+第 19 章文件系统操作
+
+
+深圳市有方科技股份有限公司版权所有 212
+
+
+19 文件系统操作
+
+
+### 19.1 AT+FSWF–写文件
+
+写文件指令。
+
+命令格式
+
+类型 命令 响应
+
+执行 AT+FSWF=<file_name>,<mode>,<size>,
+
+<time><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+<CR><LF>+FSWF: Timeout!<CR><LF>
+
+参数
+
+<file_name> 文件名,长度不超过50 个字符。
+
+<mode> 模式
+
+0:如果文件已经存在,从文件开始位置写入,会覆盖原数据
+
+1:如果文件已经存在,从文件末尾位置写入
+
+<size> 数据大小,取值范围0~1024*1024,单位:字节
+
+写入文件的数据,不允许超过<size>值。
+
+<time> 超时时间,取值范围0~60000,单位:ms
+
+
+⚫ 文件名不能为空,且不允许包含字符'?' '*' '@' '\0'
+
+⚫ 入文件的数据,不允许超过<size>值;<size>值不允许超过用户盘剩余空间;
+
+⚫ 若支持SD 卡,文件名带“/sdcard0” (区分大小写)可操作SD 卡文件。
+
+⚫ 若支持外挂flash,文件名带”/dataflash”(区分大小写)可操作外挂flash 文件,需要使用
+
+
+### +NWYSPIFLASH 进行初始化。
+
+⚫ 不支持目录创建,例如AT+FSFS=/dir/test123.txt 此类操作
+
+
+
+### N706A AT 命令手册
+
+第 19 章文件系统操作
+
+
+深圳市有方科技股份有限公司版权所有 213
+
+
+示例
+
+
+#### `AT+FSWF="test.txt",1,1024,10000`
+
+
+>
+
+```
+OK
+```
+
+写文件成功,test.txt文件写入 1024字节数据,数据如:start012…。
+
+
+#### `AT+FSWF="test.txt",1,1024,10000`
+
+
+>
+
+```
++FSWF: Timeout!
+```
+
+写文件超时,串口输入数据大小小于 1024,时间超过 10s,返回超时提示。
+
+
+#### `AT+FSWF="test.txt",1,1024,60001`
+
+
+
+### ERROR
+
+
+### 参数超出可设置范围,返回 ERROR。
+
+
+#### `AT+FSWF=”/sdcard0/test.txt”,1,10,60000`
+
+
+>
+
+```
+OK
+```
+
+往 SD卡中 test.txt文件写入数据。
+
+
+#### `AT+FSWF=/dataflash/test.txt,1,10,60000`
+
+
+>
+
+```
+OK
+```
+
+往外挂 flash中 10.txt文件写入数据。
+
+
+### 19.2 AT+FSRF–读文件
+
+读文件指令。
+
+命令格式
+
+类型 命令 响应
+
+执行 AT+FSRF=<file_name>,<mode>,<size>
+
+[,<position>]<CR>
+
+<CR><LF>+FSRF:<size>,<content>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<file_name> 文件名,长度不超过50 个字符
+
+<mode> 0:从文件开始位置读数据
+
+1:从文件<position>位置读数据
+
+<size> 数据大小,不允许超过所读文件的大小,可以为0
+
+<position> 读文件的开始位置,当<mode>=1 时有效,<size>与<position>由文件大小决定。
+
+<content> 读取的文件内容。
+
+
+
+### N706A AT 命令手册
+
+第 19 章文件系统操作
+
+
+深圳市有方科技股份有限公司版权所有 214
+
+
+⚫ 读取文件的数据大小,不允许超过文件总大小;
+
+⚫ <size>与<position>由文件大小决定;
+
+⚫ 若支持SD 卡,文件名带“/sdcard0” (区分大小写)可操作SD 卡文件。
+
+⚫ 若支持外挂flash,文件名带”/dataflash”(区分大小写)可操作外挂flash 文件,需要使用
+
+
+### +NWYSPIFLASH 进行初始化。
+
+示例
+
+
+#### `AT+FSRF="test.txt",0,10`
+
+
+```
++FSRF: 10,start01234
+```
+
+```
+OK
+```
+
+从test.txt文件的开始位置读 10个字节数据。
+
+
+#### `AT+FSRF="test.txt",0,0`
+
+
+
+### +FSRF: 0,
+
+```
+OK
+```
+
+从test.txt文件的开始位置读 0个字节数据。
+
+
+#### `AT+FSRF="test.txt",0,1025`
+
+
+
+### ERROR
+
+<size>超过文件大小,返回 ERROR。
+
+
+#### `AT+FSRF="test.txt",1,20,2`
+
+
+```
++FSRF: 20,tart0123456789012345
+```
+
+```
+OK
+```
+
+从test.txt文件的第二个字节的位置开始,读 20个字节的数据,读取成功。
+
+
+#### `AT+FSRF="test.txt",1,0,2`
+
+
+
+### +FSRF: 0,
+
+```
+OK
+```
+
+从test.txt文件的第二个字节的位置开始,读 0个字节的数据。
+
+
+#### `AT+FSRF="test.txt",1,10,1025`
+
+
+
+### ERROR
+
+<position>参数超出范围(position大于文件大小),返回 ERROR。
+
+
+#### `AT+FSRF="/sdcard0/test.txt",0,10`
+
+
+```
++FSRF: 10,start01234
+```
+
+```
+OK
+```
+
+读取SD卡 test.txt文件内容。
+
+
+#### `AT+FSRF=/dataflash/test.txt,0,10`
+
+
+```
++FSRF: 10,aaaaaaaaaa
+```
+
+```
+OK
+```
+
+读取外挂 flash中 test.txt文件内容。
+
+
+### 19.3 AT+FSRFEX–读文件拓展指令
+
+读文件拓展指令。
+
+
+
+### N706A AT 命令手册
+
+第 19 章文件系统操作
+
+
+深圳市有方科技股份有限公司版权所有 215
+
+
+命令格式
+
+类型 命令 响应
+
+执行 AT+FSRFEX=<file_name>,<checksum_
+
+mode>,<mode>,<size>[,<position>]
+
+
+### <CR><LF>+FSRFEX:
+
+<lenth>,<checksum>,<content>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<file_name> 文件名,长度不超过50 个字符。
+
+<checksum_mode> 校验类型
+
+1:异或校验法
+
+2~99: 预留
+
+<mode> 模式
+
+0:从文件开始位置读数据
+
+1:从文件<position>位置读数据
+
+<size> 数据大小,不允许超过所读文件的大小,不为0。
+
+<position> 读文件的开始位置,当<mode>=1 时有效,不为0。
+
+<lenth> 所读文件的大小。
+
+<content> 所读文件的内容。
+
+<checksum> 校验码,校验方式由<checksum_mode>指定
+
+
+⚫ 读取文件的数据大小,不允许超过文件总大小;
+
+⚫ <size>与<position>由文件大小决定;
+
+⚫ 若支持SD 卡,文件名带“/sdcard0” (区分大小写)可操作SD 卡文件。
+
+⚫ 若支持外挂flash,文件名带”/dataflash”(区分大小写)可操作外挂flash 文件,需要使用
+
+
+### +NWYSPIFLASH 进行初始化
+
+示例
+
+
+#### `AT+FSRFEX="test.txt",1,0,10`
+
+
+```
++FSRFEX: 10,XXXX,start01234
+```
+
+```
+OK
+```
+
+从 test.txt文件的开始位置读 10个字节数据。
+
+
+#### `AT+FSRFEX=/sdcard0/123.txt,1,0,10`
+
+
+
+### +FSRFEX: 10,XXXX,1234567890
+
+```
+OK
+```
+
+从 SD卡中的 123.txt文件开始位置读 10个字节数据。
+
+
+
+### N706A AT 命令手册
+
+第 19 章文件系统操作
+
+
+深圳市有方科技股份有限公司版权所有 216
+
+
+
+#### `AT+FSRFEX=/dataflash/test.txt,1,0,10`
+
+
+```
++FSRFEX: 10,6425,aaaaaaaaaa
+```
+
+```
+OK
+```
+
+从外挂 flash中的 test.txt文件开始位置读 10个字节数据。
+
+
+### 19.4 AT+FSDF–删除文件
+
+删除文件指令。
+
+命令格式
+
+类型 命令 响应
+
+执行 AT+FSDF=<file_name><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<file_name> 文件名,长度不超过50 个字符。
+
+
+⚫ 若支持SD 卡,文件名带“/sdcard0” (区分大小写)可操作SD 卡文件。
+
+⚫ 若支持外挂flash,文件名带”/dataflash”(区分大小写)可操作外挂flash 文件,需要使用
+
+
+### +NWYSPIFLASH 进行初始化
+
+示例
+
+
+#### `AT+FSDF="test.txt"`
+
+
+```
+OK
+```
+
+删除文件,成功。
+
+
+#### `AT+FSDF="123.txt"`
+
+
+
+### ERROR
+
+123.txt文件不存在,返回ERROR。
+
+
+#### `AT+FSDF=/sdcard0/1.txt`
+
+
+```
+OK
+```
+
+删除 SD卡下的 1.txt。
+
+
+#### `AT+FSDF=/dataflash/test.txt`
+
+
+```
+OK
+```
+
+删除外挂 flash中的 test.txt文件。
+
+
+
+### N706A AT 命令手册
+
+第 19 章文件系统操作
+
+
+深圳市有方科技股份有限公司版权所有 217
+
+
+
+### 19.5 AT+FSLIST–获取用户盘文件列表
+
+获取用户盘文件列表指令。
+
+格式
+
+类型 命令 响应
+
+执行 AT+FSLIST=<directory><CR> <CR><LF>OK<CR><LF>
+
+
+### 查询 AT+FSLIST?<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+<CR><LF><file_name>,<size>
+
+<CR><LF><file_name>,<size>
+
+……
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<directory> 查询SD 卡或者外挂flash 下文件列表时需要指定路径。
+
+
+⚫ 若支持SD 卡,文件名带“/sdcard0” (区分大小写)可操作SD 卡文件。
+
+⚫ 若支持外挂flash,文件名带”/dataflash”(区分大小写)可操作外挂flash 文件,需要使用
+
+
+### +NWYSPIFLASH 进行初始化。
+
+示例
+
+
+### AT+FSLIST?
+
+
+i.amr,6181
+
+file.txt,6000
+
+```
+OK
+```
+
+逗号前为文件名。
+
+逗号后为文件大小。
+
+
+### AT+FSLIST?
+
+
+```
+OK
+```
+
+系统盘无文件。
+
+
+#### `AT+FSLIST=/sdcard0`
+
+
+```
+OK
+```
+
+查询/sdcard0下文件列表。
+
+
+#### `AT+FSLIST=/dataflash`
+
+
+```
++FSLIST: /dataflash/test.txt,10
+```
+
+```
+OK
+```
+
+查询外挂 flash下文件列表。
+
+
+
+### N706A AT 命令手册
+
+第 19 章文件系统操作
+
+
+深圳市有方科技股份有限公司版权所有 218
+
+
+
+### 19.6 AT+FSFS–获取文件大小
+
+获取文件大小指令。
+
+命令格式
+
+类型 命令 响应
+
+执行 AT+FSFS=<file_name><CR>
+
+<CR><LF>+FSFS:<size>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<file_name> 文件名,长度不超过50 个字符。
+
+
+⚫ 若支持SD 卡,文件名带“/sdcard0” (区分大小写)可操作SD 卡文件。
+
+⚫ 若支持外挂flash,文件名带”/dataflash”(区分大小写)可操作外挂flash 文件,需要使用
+
+
+### +NWYSPIFLASH 进行初始化。
+
+示例
+
+
+#### `AT+FSFS="test.txt"`
+
+
+
+### +FSFS: 1024
+
+```
+OK
+```
+
+读取test.txt文件大小,
+
+大小为 1024字节。
+
+
+#### `AT+FSFS="123.txt"`
+
+
+
+### ERROR
+
+123.txt文件不存在,返回 ERROR。
+
+
+#### `AT+FSFS=/sdcard0/1.txt`
+
+
+
+### +FSFS: 10
+
+```
+OK
+```
+
+查询SD卡下 1.txt的大小。
+
+
+#### `AT+FSFS=/dataflash/test.txt`
+
+
+
+### +FSFS: 10
+
+```
+OK
+```
+
+查询外挂 flash下 test.txt的大小。
+
+
+
+### N706A AT 命令手册
+
+第 19 章文件系统操作
+
+
+深圳市有方科技股份有限公司版权所有 219
+
+
+
+### 19.7 AT+FSLS–获取用户盘剩余空间大小
+
+获取用户盘剩余空间大小指令。
+
+命令格式
+
+类型 命令 响应
+
+执行 AT+FSLS=<directory><CR> <CR><LF>+FSLS:<size>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 查询 AT+FSLS?<CR>
+
+<CR><LF>+FSLS:<size>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+<CR><LF>+FSLS: DiskInfo Not Right!<CR><LF>
+
+参数
+
+<directory> 查询SD 卡或者外挂flash 剩余空间时需要指定路径。
+
+<size> 用户盘剩余空间大小。
+
+
+⚫ 文件系统的块大小为4096 字节,以实际文件占用块大小为准,SD 卡或者外挂flash 不同型号块大小
+
+可能会不同。
+
+⚫ 若支持SD 卡,文件名带“/sdcard0” (区分大小写)可操作SD 卡文件。
+
+⚫ 若支持外挂flash,文件名带”/dataflash”(区分大小写)可操作外挂flash 文件,需要使用
+
+
+### +NWYSPIFLASH 进行初始化。
+
+⚫ FSLS 统计值为(块总数-已占用块个数)*块大小,为粗略值,误差通常在一个blocksize 之内,即
+
+4K
+
+示例
+
+
+### AT+FSLS?
+
+
+
+### +FSLS: 249856
+
+```
+OK
+```
+
+249856=4096*61
+
+
+### 19.8 AT+FSFAT–格式化用户盘
+
+格式化用户盘指令。
+
+
+
+### N706A AT 命令手册
+
+第 19 章文件系统操作
+
+
+深圳市有方科技股份有限公司版权所有 220
+
+
+命令格式
+
+类型 命令 响应
+
+执行 AT+FSFAT[=<directory>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<directory> 格式化SD 卡或者外挂flash 时需要指定路径。
+
+
+示例
+
+
+### AT+FSFAT
+
+
+```
+OK
+```
+
+
+### AT+FSLS?
+
+
+
+### +FSLS: 65536
+
+```
+OK
+```
+
+格式化用户盘。
+
+
+用户盘剩余空间大小为 65536字节。
+
+
+### AT+FSFAT
+
+
+
+### ERROR
+
+
+### 用户盘未准备好,返回 ERROR。
+
+
+#### `AT+FSFAT=/sdcard0`
+
+
+```
+OK
+```
+
+
+### 格式化 SD卡。
+
+
+#### `AT+FSFAT=/dataflash`
+
+
+```
+OK
+```
+
+格式化外挂 flash。
+
+
+### 19.9 AT+FSRN–重命名文件
+
+重命名文件指令。
+
+重命名文件后的文件若存在,则会覆盖原来的文件。
+
+若需要修改的文件不存在,则会返回错误。
+
+
+⚫ 若支持SD 卡,文件名带“/sdcard0” (区分大小写)可操作SD 卡文件。
+
+⚫ 若支持外挂flash,文件名带”/dataflash”(区分大小写)可操作外挂flash 文件,需要使用
+
+
+### +NWYSPIFLASH 进行初始化
+
+
+
+### N706A AT 命令手册
+
+第 19 章文件系统操作
+
+
+深圳市有方科技股份有限公司版权所有 221
+
+
+命令格式
+
+类型 命令 响应
+
+执行 AT+FSRN=<src_file_name>,<dst_file_name><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<src_file_name>
+
+<dst_file_name>
+
+需要修改的文件名,长度不超过50 个字符。
+
+重命名之后的文件名,长度不超过50 个字符。
+
+
+⚫ 若支持SD 卡,文件名带“/sdcard0” (区分大小写)可操作SD 卡文件。
+
+⚫ 若支持外挂flash,文件名带”/dataflash”(区分大小写)可操作外挂flash 文件,需要使用
+
+
+### +NWYSPIFLASH 进行初始化。
+
+示例
+
+
+#### `AT+FSRN="test.txt","dst.txt"`
+
+
+```
+OK
+```
+
+重命名文件成功。
+
+
+#### `AT+FSRN="test1.txt","dst.txt"`
+
+
+
+### ERROR
+
+重命名文件失败。
+
+
+#### `AT+FSRN=/dataflash/test.txt,/dataflash/123.txt`
+
+
+```
+OK
+```
+
+重名名外挂 flash下面的文件。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 20 章 SIM 卡操作相关指令
+
+
+深圳市有方科技股份有限公司版权所有 222
+
+
+
+## 20 SIM 卡操作相关指令
+
+
+### 20.1 AT+SIMCROSS–双卡单待切换功能
+
+操作模组在双卡之间切换,第一次开机默认使用卡槽1。
+
+目前仅支持双卡单待。如果实际使用时只有一张卡(确保卡可以正常使用),且此时出现无法注册
+
+
+### 网络情况,建议使用+SIMCROSS?查询,如果返回值与当前SIM 卡实际插入卡槽不一致,则请尝试使
+
+用指令切换到另一个卡槽上网。
+
+如果只插入一张卡,先使用本指令查询有效卡槽,卡插入对应卡槽使用,否则无法正常注册网络。
+
+命令格式
+
+类型 命令 响应
+
+执行 AT+SIMCROSS=<sim_id><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+SIMCROSS?<CR> <CR><LF>+SIMCROSS: <sim_id>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+SIMCROSS=?<CR> <CR><LF>+SIMCROSS: (range of <sim_id> value)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<sim_id> SIM 卡标识
+
+
+### 1:SIM 卡1(首次开机默认值)
+
+
+### 2:SIM 卡2
+
+5:无效值
+
+示例
+
+
+### AT+SIMCROSS=1
+
+
+```
+OK
+```
+
+
+### 模组切换到使用 SIM卡 1。
+
+
+### AT+SIMCROSS=?
+
+
+
+### 查询 SIM卡选择的范围。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 20 章 SIM 卡操作相关指令
+
+
+深圳市有方科技股份有限公司版权所有 223
+
+
+
+### +SIMCROSS: (1,2)
+
+```
+OK
+```
+
+
+### AT+SIMCROSS?
+
+
+
+### +SIMCROSS: 1
+
+```
+OK
+```
+
+
+### 查询当前使用的 SIM卡,当前使用 SIM卡 1。
+
+
+### 20.2 AT+SIMHOTSWAP–设置热插拔功能
+
+
+### 使能SIM 卡热插拔功能,指令设置完需重启模组方可生效。
+
+命令格式
+
+类型 命令 响应
+
+执行 AT+SIMHOTSWAP=<onoff>,<voltage><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+SIMHOTSWAP?<CR> <CR><LF>+SIMHOTSWAP: <onoff>,<voltage>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<onoff> 热插拔开关
+
+0:关闭热插拔
+
+1:打开热插拔
+
+<voltage> 热插拔电平
+
+0:低电平有效
+
+1:高电平有效
+
+示例
+
+
+### AT+SIMHOTSWAP=1,0
+
+
+```
+OK
+```
+
+打开热插拔功能,并低电平有效。
+
+
+### AT+SIMHOTSWAP?
+
+
+
+### +SIMHOTSWAP: 1,0
+
+```
+OK
+```
+
+查询当前热插拔的配置信息。
+
+
+
+### N706A AT 命令手册
+
+
+### 第 20 章 SIM 卡操作相关指令
+
+
+深圳市有方科技股份有限公司版权所有 224
+
+
+
+### 20.3 AT+NWSIMCFG–SIM 卡上下电
+
+
+### 设置SIM 卡上下电。
+
+命令格式
+
+类型 命令 响应
+
+执行 AT+NWSIMCFG=<mode><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+测试 AT+NWSIMCFG=?<CR> <CR><LF>+NWSIMCFG: (range of <mode> value)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<mode> SIM 卡上下电操作
+
+
+### 0:给SIM 卡下电
+
+
+### 1:给SIM 卡上电
+
+示例
+
+
+### AT+NWSIMCFG=0
+
+```
+OK
+```
+
+
+### 给 SIM卡下电
+
+
+### AT+NWSIMCFG=?
+
+
+### +NWSIMCFG:(0,1)
+
+```
+OK
+```
+
+查询参数范围
+
+
+### 20.4 AT+SIMCOUNTCTL–写SIM 卡统计控制
+
+
+### 开启SIM 卡写次数统计功能。
+
+该功能默认关闭,设置后掉电不保存。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+SIMCOUNTCTL =<n><CR> <CR><LF>OK<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 20 章 SIM 卡操作相关指令
+
+
+深圳市有方科技股份有限公司版权所有 225
+
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+SIMCOUNTCTL?<CR> <CR><LF>+SIMCOUNTCTL: <n>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+SIMCOUNTCTL =?<CR>
+
+<CR><LF>+SIMCOUNTCTL: (list of supported
+
+<n>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<n>
+
+
+整数类型
+
+n:写卡统计功能控制
+
+0:关闭(默认)
+
+1:打开
+
+示例
+
+
+### AT+SIMCOUNTCTL=0
+
+```
+OK
+```
+
+
+### AT+SIMCOUNTCTL?
+
+
+### SIMCOUNTCTL: 0
+
+```
+OK
+```
+
+
+### AT+SIMCOUNTCTL =?
+
+
+### SIMCOUNTCTL: (0-1)
+
+```
+OK
+```
+
+
+### 关闭 SIM卡写操作计数功能
+
+
+
+### 查询 SIM卡写操作计数功能
+
+
+查询设置范围
+
+
+### 20.5 AT+ SIMCOUNTREAD–读取写卡次数
+
+读取写卡次数。
+
+该功能默认关闭,设置后掉电不保存。
+
+命令格式
+
+类型 命令 响应格式
+
+执行
+
+⚫ AT+SIMCOUNTREAD=<n><C
+
+R>
+
+<CR><LF>+SIMCOUNTREAD: <count>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+SIMCOUNTREAD=?<CR>
+
+<CR><LF>+SIMCOUNTREAD: (list of
+
+supported<n>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+
+### 第 20 章 SIM 卡操作相关指令
+
+
+深圳市有方科技股份有限公司版权所有 226
+
+
+参数
+
+<n>
+
+
+整数类型
+
+n:读取写卡次数操作
+
+0:读取当前统计的写卡次数(默认)
+
+1:清除写卡次数记录
+
+<count> 整数类型,
+
+写卡次数
+
+示例
+
+
+### AT+SIMCOUNTREAD=0
+
+
+### +SIMCOUNTREAD: 2
+
+```
+OK
+```
+
+
+### AT+SIMCOUNTREAD=?
+
+
+### +SIMCOUNTREAD: (0-1)
+
+```
+OK
+```
+
+读取当前统计的写卡次数
+
+
+查询设置范围
+
+
+
+### N706A AT 命令手册
+
+第 21 章基站定位
+
+
+深圳市有方科技股份有限公司版权所有 227
+
+
+21 基站定位
+
+
+### 21.1 AT+CIPGSMLOC–获取基站定位信息
+
+获取基站定位信息。
+
+
+### 获取的是GPS 坐标。
+
+精度以实际服务器返回为准,不为0.0。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+CIPGSMLOC[=<n>]<CR>
+
+<CR><LF>+CIPGSMLOC: <fail_string><CR><LF>
+
+Or
+
+
+### <CR><LF>OK<CR><LF>
+
+<CR><LF>+CIPGSMLOC: {<result_string>}
+
+
+### <CR><LF>+CIPGSMLOC: OK<CR><LF>
+
+Or
+
+
+### <CR><LF>OK<CR><LF>
+
+<CR><LF>+CIPGSMLOC: <code><CR><LF>
+
+
+### <CR><LF>+CIPGSMLOC: FAIL<CR><LF>
+
+Or
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### <CR><LF>+CIPGSMLOC: TIMEOUT<CR><LF>
+
+参数
+
+<n> 请求选择。
+
+0:主动关闭定位请求
+
+1:选择多基站定位请求
+
+<fail_string> 请求失败的提示字符。
+
+
+### GPRS DISCONNECTION
+
+
+### CONTACT FAIL
+
+
+### LINK FAIL
+
+
+### LINK NOT FREE
+
+<result_string> 包含经纬度的字符串。
+
+
+
+### N706A AT 命令手册
+
+第 21 章基站定位
+
+
+深圳市有方科技股份有限公司版权所有 228
+
+
+<code> 请求发送成功,但无经纬度返回时,服务器的响应码。
+
+401:没有权限访问
+
+400:请求在解析过程中出错
+
+404:请求合法,但是所查基站未被收录,因此无法计算出结果
+
+408:服务器解析超时
+
+500:服务器内部错误
+
+示例
+
+
+### AT+CIPGSMLOC
+
+
+```
+OK
+```
+
+
+```
++CIPGSMLOC:{"location":{"lat":22.69083,"lng":113.985228},
+```
+
+"accuracy":550.0}
+
+
+### +CIPGSMLOC: OK
+
+指令成功。
+
+
+模组位置信息上报。
+
+
+### AT+CIPGSMLOC
+
+
+```
+OK
+```
+
+
+
+### GPRS DISCONNECTION
+
+
+
+### +CIPGSMLOC: CONTACT FAIL
+
+服务器域名解析失败。
+
+
+### AT+CIPGSMLOC
+
+
+
+### +CIPGSMLOC: LINK FAIL
+
+服务器链接失败。
+
+
+### AT+CIPGSMLOC
+
+
+```
+OK
+```
+
+
+
+### +CIPGSMLOC: 404
+
+
+### +CIPGSMLOC: FAIL
+
+位置请求成功。
+
+
+但所查基站未被收录,无法计算出结果。
+
+
+### AT+CIPGSMLOC=1
+
+
+```
+OK
+```
+
+
+### AT+CIPGSMLOC=1
+
+
+
+### +CIPGSMLOC: LINK NOT FREE
+
+请求多基站定位。
+
+上一次请求还未响应,链路还未释放,再次请求,
+
+提示链路处于占用状态。
+
+
+### AT+CIPGSMLOC=0
+
+
+```
+OK
+```
+
+主动关闭请求,此时链路会得到释放。
+
+
+### AT+CIPGSMLOC=1
+
+
+```
+OK
+```
+
+
+```
++CIPGSMLOC: {"location": {"lat": 22.689646628671216,
+```
+
+"lng": 113.98586121790129},"accuracy": 550.0}
+
+
+### +CIPGSMLOC: OK
+
+多基站定位请求执行成功。
+
+
+模组上报位置坐标。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 229
+
+
+22 其他指令
+
+
+### 22.1 AT+NRSP–查询 LTE 邻小区的RSRP ,RSRQ,SINR参
+
+数
+
+
+### 该指令返回LTE 制式下邻小区的RSRP ,RSRQ,SINR参数。
+
+
+### 该指令只在LTE 制式下有效。
+
+
+### 注:与CFUN 存在一定冲突,进出飞行模式后,查询邻区信息可能会返回ERROR;稍等再次尝试
+
+恢复正常。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+NRSP<CR>
+
+<CR><LF>+NRSP: <rsrp1>,<rsrq1>,<rsrp2>,<rsrq2>,…,<sinr>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<rsrpN> 参考信号接收质量,是实际RSRQ 的10 倍值(等同于该参数单位:0.1dB),该参数在
+
+
+### LTE 制式下有效,如果有N 个有效邻区,该AT 将返回N 对参数,如下所示:
+
+<rsrp1>,<rsrq1>,<rsrp2>,<rsrq2>,…, <rsrpN>,<rsrqN>。
+
+<sinr> 信噪比,与实际值的映射关系如下表,其中 reported value 是查询结果,mesaured
+
+quantity value 是实际的SINR 值,该参数在LTE 制式下有效。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 230
+
+
+示例
+
+
+### AT+NRSP
+
+
+
+### +NRSP: -920,-75,-930,-65,-870,-115,-780,-65,-880,-175,-990,-135,107
+
+```
+OK
+```
+
+读取指令
+
+
+### 22.2 AT+NETMSG–查询注册网络的详细信息
+
+查询注册网络的详细信息。
+
+此指令只在模组正常注册到网络后才可以查询指定的信息。
+
+所有模组未成功注册到网络的情况该指令返回值为预先定义的全空信息。如果网络异常为切换网络
+
+模式期间未注册上网,此时亦返回的全空信息。
+
+
+### <LAC>,<BSIC>两个个查询项是复合查询项,显示当前模组所在网络位置信息;对应不同的制式会
+
+有不同的位置描述信息,具体参见参数说明。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+NETMSG<CR>
+
+
+### <CR><LF>+NETMSG: <MCC+MNC>, [<LAC>/<TAC>],
+
+[<CELL_ID>], [<BSIC><Phy_cellid>], <BAND>, <ARFCN>,
+
+<RX_dBm>, <TX_dBm>, <net_mode>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+
+### <MCC+MNC> MCC:国家码,十进制,中国为460。
+
+
+### MNC:运营商代码,十进制。
+
+[<LAC>/<TAC>] LTE 制式下表现为TAC;其他制式为Location Area Code,位置区代码,
+
+16 进制。
+
+
+### [<CELL_ID>] CELL_ID,小区识别码,16 进制。
+
+[<BSIC><Phy_cellid>] 网络制式若为 GSM,则表示 BSIC 基站编号,十进制;若为LTE,则表
+
+示物理小区标识码Phy_cellid,十进制;其他制式则无此参数,用0 表示。
+
+
+### <BAND> 当前工作频段
+
+
+### GSM 900
+
+
+### DCS1800
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 231
+
+
+
+### PCS 1900
+
+
+### LTE BAND 1
+
+…
+
+
+### LTE BAND 43
+
+
+### <ARFCN> 信道,亦称频点
+
+<RX dBm> 接收功率,单位是dBm(199 代表当前为无效值)
+
+<TX dBm> 发射功率,单位是dBm(199 代表当前为无效值)
+
+<net_mode> 注册的网络制式
+
+
+### NONE
+
+GSM
+
+
+### GPRS
+
+
+### TDD LTE
+
+
+### FDD LTE
+
+示例
+
+
+### AT+NETMSG
+
+
+
+### +NETMSG: "460+00", 286F, 00000088, 95, LTE BAND 40,
+
+
+### 38950, -46, 199, "TDD LTE"
+
+```
+OK
+```
+
+
+### 当前注册网络信息为TDD-LTE制式, 频段为LTE BAND 40,
+
+
+### 信道为 38950,PLMN为 46000; 位置信息TAC码为 286F,
+
+CELL_ID为 00000088,物理小区 id为 95;此时的接收
+
+功率为-46dBm,发射功率无。
+
+
+### AT+NETMSG
+
+
+
+### +NETMSG: "460+00", 286F, 00000FCB, 26, GSM 900, 20, 32,
+
+
+### -46, "GPRS"
+
+```
+OK
+```
+
+
+### 当前注册网络信息为 GPRS制式,频段为 GSM 900,信道
+
+
+### 20,PLMN为 46000,位置信息LAC码为 286F,CELL_ID
+
+为 00000FCB,基站编号为20;此时的接收功率为32dBm,
+
+发射功率为-46dBm。
+
+
+### AT+NETMSG
+
+
+
+### +NETMSG: "0", 0, 0, 0, 0, 0, 0, 0, "NONE"
+
+```
+OK
+```
+
+
+
+### AT+NETMSG
+
+
+
+### ERROR
+
+开机到成功注册上网期间
+
+切换网络导致网络未注册上或者注册其它网络期间;
+
+其他网络异常;
+
+全空信息返回(不带回车)
+
+未插卡
+
+
+### 22.3 AT+NETDMSG–查询当前注册网络信息
+
+查询当前注册网络信息。
+
+模组开机注册上网络后,发送该指令查询当前注册网络的信息;若网络异常,则返回无效值。
+
+
+### 当使用3GPP 网络时LAC、CELL_ID、BSIC 位有具体信息,SID、NID、BID 为值为0。
+
+
+### 当前网络的接收功率,接收信号质量,信噪比仅在LTE 网络下有效。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 232
+
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+NETDMSG
+
+
+### +NETDMSG:<MCC+MNC>,[<LAC>/<TAC>],<CELL_ID>,
+
+[<BSIC>/<Phy_cellid>],<net_mode>,<BAND>,
+
+<ARFCN>,<RX_dBm>,<TX_dBm>,<SID>,<NID>,<BID>,
+
+
+### <RSRP>,<RSRQ>,<SINR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+
+### <MCC+MNC> MCC:国家码,十进制,中国为460。
+
+
+### MNC:运营商代码,十进制。
+
+
+### [<LAC>/<TAC>] CDMA1X 制式下表现为SID
+
+
+### LTE 制式下表现为TAC
+
+其他制式为Location Area Code,位置区代码,16 进制。
+
+
+### [<CELL_ID>] 若为CDMA1X 制式则表现为NID
+
+
+### 其他制式为CELL_ID,小区识别码,16 进制。
+
+[<BSIC>/<Phy_cellid>] 基站编号/LTE 物理小区ID
+
+Net_mode:网络制式
+
+
+### NONE
+
+GSM
+
+
+### GPRS
+
+
+### TDD LTE
+
+
+### FDD LTE
+
+<net_mode> 网络制式
+
+
+### NONE
+
+GSM
+
+
+### GPRS
+
+
+### TDD LTE
+
+
+### FDD LTE
+
+
+### <BAND> 当前工作频段
+
+
+### GSM 900
+
+
+### GSM 1800
+
+
+### GSM 1900
+
+
+### LTE BAND 1
+
+…
+
+
+### LTE BAND 43
+
+
+### <ARFCN> 当前频点
+
+<RX dBm> 接收功率,单位是dBm(199 代表当前为无效值)
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 233
+
+
+<TX dBm> 发射功率,单位是dBm(199 代表当前为无效值)
+
+
+### <SID> 是CDMA1X 的系统识别码
+
+
+### <NID> 是CDMA1X 的网络识别码
+
+
+### <BID> 表示的是CDMA1X 的网络中的某一个小区
+
+<RSRP> 当前信号接收功率,是实际信号强度的10 倍值(单位:0.1dbm),该
+
+
+### 参数在LTE 制式下有效
+
+<RSRQ> 当前信号接收质量,是实际RSRQ 的10 倍值(单位:0.1dB),该参数
+
+
+### 在LTE 制式下有效
+
+
+### <SINR> 信噪比,是实际信噪比的10 倍值,该参数在LTE 制式下有效
+
+示例
+
+
+### AT+NETDMSG
+
+
+```
++NETDMSG: "460+00", 0x286F, 0x00000088, 95, "TDD LTE", LTE BAND 40,
+```
+
+38950, -49, -8, 0x0, 0x0, 0x0, -730, -55, 108
+
+```
+OK
+```
+
+
+### LTE制式下查询当前注册网络的信息。
+
+
+### AT+NETDMSG
+
+
+```
++NETDMSG: "460+00", 0x286F, 0x00000FCB, 26, "GPRS", GSM 900, 20, 26,
+```
+
+-46, 0x0, 0x0, 0x0, 0, 0, 0
+
+```
+OK
+```
+
+
+### 3GPP非 LTE制式查询当前注册网络的
+
+信息。
+
+
+### AT+NETDMSG
+
+
+
+### +NETDMSG: “0”,0,0,0,”NONE”,0,0,0,0,0,0,0,0,0,0
+
+```
+OK
+```
+
+查询当前注册网络的信息,如果网络未
+
+注册,返回空值。
+
+
+### 22.4 AT+NEOFOTA–FOTA 功能指令
+
+控制模组进行远程升级。
+
+升级过程中请不要给模组断电或进行重启等操作。
+
+自适应波特率下,需先下发AT\r\n 完成波特率自适应后才会上报升级成功回码。
+
+
+### 未激活PPP 返回+NEOFOTA: GPRS DISCONNECTION。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+NEOFOTA=<server>,<port><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 234
+
+
+主动上报 +NEOFOTA:<status>
+
+参数
+
+<status> 升级状态
+
+0:无可用升级包
+
+
+### 1:升级包下载成功(下载到RAM 中)
+
+2:下载网络异常
+
+3:开始本地升级
+
+4:本地升级成功
+
+5:本地升级失败
+
+6:下载空间不足
+
+7:升级包写入失败
+
+8:升级包校验失败
+
+示例
+
+
+### AT+NEOFOTA=115.29.212.25,80
+
+```
+OK
+```
+
+
+### +NEOFOTA: 1
+
+
+
+### +NEOFOTA: 3
+
+
+FOTA updating:10%
+
+
+FOTA updating:20%
+
+
+FOTA updating:30%
+
+
+FOTA updating:40%
+
+
+FOTA updating:50%
+
+
+FOTA updating:60%
+
+
+FOTA updating:70%
+
+
+FOTA updating:80%
+
+
+FOTA updating:90%
+
+
+FOTA updating:100%
+
+\0
+
+
+### +NEOFOTA: 4
+
+
+
+### +PBREADY
+
+开始升级
+
+
+下载升级包成功
+
+
+开始升级
+
+
+升级完成模组自动重启
+
+
+升级成功
+
+
+
+### AT+NEOFOTA=115.29.212.25/,80
+
+
+
+### AT+NEOFOTA=115.29.212.25/,80
+
+```
+OK
+```
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 235
+
+
+```
+OK
+```
+
+
+### +NEOFOTA: 0
+
+
+
+### +NEOFOTA: 0
+
+
+### 22.5 AT+NEOFOTAURC–FOTA 状态上报控制指令
+
+
+### 控制模组FOTA 过程中的过程状态上报。
+
+升级前设置,掉电不保存。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+NEOFOTAURC=<result><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+NEOFOTAURC?<CR>
+
+<CR><LF>+NEOFOTAURC: <result>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<result> 状态上报开关。
+
+0:关闭,不上报过程状态,仅上报结果,如升级成功,升级失败,无升级包,下载失败
+
+1:开启,上报过程状态,所有状态均上报(默认)。
+
+示例
+
+
+### AT+NEOFOTAURC=1
+
+
+```
+OK
+```
+
+
+
+### AT+NEOFOTA=115.29.212.25,80
+
+```
+OK
+```
+
+
+### +NEOFOTA: 1
+
+
+
+### +NEOFOTA: 3
+
+
+FOTA updating:10%
+
+
+FOTA updating:20%
+
+
+FOTA updating:30%
+
+设置开启所有上报
+
+
+下载升级包成功
+
+开始升级
+
+升级完成模组自动重启
+
+
+升级成功
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 236
+
+
+FOTA updating:40%
+
+
+FOTA updating:50%
+
+
+FOTA updating:60%
+
+
+FOTA updating:70%
+
+
+FOTA updating:80%
+
+
+FOTA updating:90%
+
+
+FOTA updating:100%
+
+\0
+
+
+### +NEOFOTA: 4
+
+
+
+### +PBREADY
+
+
+### AT+NEOFOTAURC=0
+
+
+```
+OK
+```
+
+
+
+### AT+NEOFOTA=115.29.212.25,80
+
+```
+OK
+```
+
+
+FOTA updating:10%
+
+
+FOTA updating:20%
+
+
+FOTA updating:30%
+
+
+FOTA updating:40%
+
+
+FOTA updating:50%
+
+
+FOTA updating:60%
+
+
+FOTA updating:70%
+
+
+FOTA updating:80%
+
+
+FOTA updating:90%
+
+
+FOTA updating:100%
+
+\0
+
+
+### +NEOFOTA: 4
+
+
+
+### +PBREADY
+
+关闭过程状态上报
+
+
+升级成功
+
+
+### 22.6 AT+READADC–读 ADC 值
+
+
+### 该指令用来读取模组ADC 对应管脚的值。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 237
+
+
+请参考硬件设计指南管脚说明。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+READADC=<channel>[,<scale>]<CR>
+
+<CR><LF>+READADC: <channel>,<value>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 测试 AT+READADC=?<CR>
+
+
+### <CR><LF>+READADC: (1-2),(0-3)
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<channel> 通道号(1-2)
+
+<scale> ADC 量程(0-3)
+
+示例
+
+
+### AT+READADC=3
+
+
+
+### ERROR
+
+
+### 不支持读取第 3个 ADC通道对应管脚的值。
+
+
+### AT+READADC=1
+
+
+
+### +READADC:1,735
+
+```
+OK
+```
+
+
+### 读取第 1个 ADC通道对应管脚的值。
+
+
+### AT+READADC=2
+
+
+
+### +READADC:2,690
+
+```
+OK
+```
+
+
+### 读取第 2个 ADC通道对应管脚的值。
+
+
+### AT+READADC=?
+
+
+
+### +READADC: (1-2),(0-3)
+
+```
+OK
+```
+
+查询指令可设置参数范围。
+
+
+### 22.7 AT+NBANDLOCK–锁定多频段
+
+以频段掩码的方式锁定一个及以上的频段。
+
+
+### 使用该AT 指令进行锁频, 网络制式将会跟随变化, 例如锁定LTE_B1, 那么网络制式将会变成LTE
+
+
+### ONLY。不能同时锁定多制式。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 238
+
+
+该指令设置后立即生效,并且掉电保存。
+
+若锁定当前网络不可用频段,会造成模组注册失败。
+
+支持的band 设置参见附录C Support Band List。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+NBANDLOCK=<mode>[,<LTE_
+
+Bands>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+
+### <CR><LF>+NBANDLOCK:
+
+<mode>,<SupportBandlist>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+<CR><LF>+NBANDLOCK: <err><CR><LF>
+
+查询 AT+NBANDLOCK?<CR> <CR><LF>+NBANDLOCK: <mode>,<Bandlist>
+
+
+### <CR><LF><CR><LF>OK<CR><LF>
+
+
+### 测试 AT+NBANDLOCK=?<CR>
+
+
+### <CR><LF>+NBANDLOCK:
+
+(listofsupport<mode>s),(list of support
+
+<LTE_BAND>s)
+
+
+### <CR><LF><CR><LF>OK<CR><LF>
+
+参数
+
+<mode> 锁定模式,根据不同的模式,锁定对应的band 组合。
+
+0 解锁所有频段锁定。
+
+
+### 1 锁定LTE 下的频段组合
+
+<LTE_Bands> LTE 协议支持的频段,16 进制显示与输入。
+
+示例
+
+
+### AT+NBANDLOCK=1,1
+
+
+```
+OK
+```
+
+
+### 锁定 LTE BAND1。
+
+
+### AT+NBANDLOCK?
+
+
+```
++NBANDLOCK: 1,0x1
+```
+
+```
+OK
+```
+
+
+### 查询当前锁频段状态,当前锁定 LTE BAND1。
+
+
+### AT+NBANDLOCK=?
+
+
+查询 LTE支持的频段,0x1e200000095转换成 2进制为
+
+11100010000000000000000000000000010010101,代表产品支持
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 239
+
+
+```
++NBANDLOCK: 1,0x1e200000095
+```
+
+```
+OK
+```
+
+
+### LTE_B1,LTE_B3,LTE_B5,LTE_B8,LTE_B34.BLTE_B38,LTE_B39,LTE_B40,LTE_B4
+
+1。
+
+
+### 22.8 AT+NFREQLOCK–锁定指定频点
+
+锁定频点组合。
+
+当没有锁定频段时,该指令可以锁定任意可用频点;当锁定频段时,该指令只可锁定当前已锁频段
+
+下的可用频点。由于实际网络环境不一致,暂不支持对输入的频点信息进行纠错验证;
+
+
+### 当锁定频段时,使用该指令锁定该频段以外频点值则返回ERROR;
+
+当没有锁定频段时,根据频点的设置会将网络注册到锁定的频点对应的频段;
+
+
+### LTE 网络锁频点需为可用频点,支持最多可锁九个具体频点,锁定后即时生效,掉电保存。
+
+命令格式
+
+类型 命令 响应格式
+
+执行
+
+
+#### `AT+NFREQLOCK=<mode>[,<frequency1>,<`
+
+frequency2>,<frequency3>,<frequency4>,<fr
+
+equency5>,<frequency6>,<frequency7>,<fre
+
+quency8>,<frequency9>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+CME ERROR:
+
+<err><CR><LF>
+
+
+### 查询 AT+NFREQLOCK?<CR>
+
+
+### <CR><LF>+NFREQLOCK:
+
+<mode>,<frequency1>,<frequency2>...
+
+…
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>+CME ERROR:
+
+<err><CR><LF>
+
+参数
+
+<mode> 网络制式
+
+0 解锁全部
+
+
+## 1 LTE (含FDD\TDD)
+
+<frequency> 最多支持9 个频点值输入。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 240
+
+
+1~65535 频点范围。
+
+示例
+
+
+### AT+NFREQLOCK=1,38950,38950
+
+
+```
+OK
+```
+
+
+### 锁定 LTE 网络频点 38950。
+
+
+### AT+NFREQLOCK?
+
+
+
+### +NFREQLOCK: 1,38950
+
+```
+OK
+```
+
+查询锁频状态。
+
+
+### AT+NFREQLOCK=0
+
+
+```
+OK
+```
+
+
+
+### AT+NFREQLOCK?
+
+
+
+### +NFREQLOCK: 1,0
+
+```
+OK
+```
+
+解除所有频点限制。
+
+
+### AT+NFREQLOCK=1, 38950,38400
+
+
+```
+OK
+```
+
+
+### AT+NFREQLOCK?
+
+
+
+### +NFREQLOCK: 1,38400, 38950
+
+```
+OK
+```
+
+
+### 锁定 LTE 网络同频段具体频点 38400,38950。
+
+
+### 22.9 AT+MYCELLINFO–无卡获取通信模组附近小区信息
+
+无卡情况下获取通信模组附近小区的信息。
+
+该指令会全频段扫频,如果模组插卡情况下执行会掉网;
+
+
+### 该指令仅支持LTE 小区扫频。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+MYCELLINFO<CR>
+
+
+### +MYCELLINFO:
+
+{<NcellNum>,(<NcellIndex>,<Nmcc>,<Nmnc>,<Nlac>,<Narf
+
+cn>,<Npci>,<NLTE_RSRP>,<NLTE_RSRQ>,<NrxLevl>)}
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+<CR><LF>+CME ERROR: <err><CR><LF>
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 241
+
+
+参数
+
+<NcellNum> 邻小区总数
+
+<NcellIndex> 邻小区序号
+
+<Smcc/Nmcc> 移动国家号码。
+
+CDMA –SID,system id
+
+<Nmnc> 移动网络号码。
+
+<Nlac> 位置区码。
+
+LTE - tac,track area code
+
+
+<Narfcn> 绝对无线频道编号
+
+<Npci> CDMA/HDR- pn
+
+LTE – pci,physic cell identify
+
+
+<NLTE_RSRP> 可选信息输出,LTE 制式实际RSRP 十倍值, 单位dBm, 实际RSRP
+
+范围(-44,-140)
+
+
+<NLTE_RSRQ> 可选信息输出,LTE 制式实际RSRQ 十倍值,单位dB,实际RSRP
+
+范围(-20.0,-3.0)
+
+
+<NrxLevl> 信号强度
+
+示例
+
+
+### AT+MYCELLINFO
+
+
+### +MYCELLINFO:
+
+{10,(0,460,00,37107,38950,192,-980,-60,-84),(1,460,15,37107,38
+
+950,192,-980,-60,-84),(2,460,00,37107,1300,231,-1100,-80,-94),
+
+(3,460,15,37107,1300,231,-1100,-80,-94),(4,460,01,9713,1650,45
+
+1,-1120,-80,-97),(5,460,11,9713,1650,451,-1120,-80,-97),(6,460
+
+,11,9713,1850,281,-1180,-90,-101),(7,460,01,9713,1850,281,-118
+
+0,-90,-101),(8,460,11,9713,1850,36,-1190,-120,-100),(9,460,01,
+
+9713,1850,36,-1190,-120,-100,3,)}
+
+```
+OK
+```
+
+
+### 获取 LTE所有小区参数。
+
+
+
+### 返回结果格式说明:所有小区信息过多,所以小区信息结果输出类似 JSON 格式, {小区总数,(小
+
+区序号,小区信息)}。
+
+指令操作说明:a.本指令为异步指令,执行期间内会出现再次输入指令无回码现象;b.本指令会进行
+
+一系列的网络设置,所以指令期间不允许重复执行该指令,当有错误操作导致模组异常,请重启模组。
+
+指令数据准确性说明: 此指令仅针对静止目标或者移速缓慢目标且目标无较大位置变更下数据准确度
+
+有效。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 242
+
+
+
+### 22.10 AT$MYCGED–查询模组当前信道、接收功率和发射
+
+功率
+
+查询模组当前信道、接收功率和发射功率。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT$MYCGED<CR>
+
+<CR><LF>$MYCGED: <Channel>,<Rx power>,<Tx power>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<Channel> 信道。
+
+<Rx power> 接收功率,单位是dBm。
+
+<Tx power> 发射功率,单位是dBm。
+
+示例
+
+
+### AT$MYCGED
+
+
+### $MYCGED: 48,-75,25
+
+```
+OK
+```
+
+当前信道为 48,接收功率为-75dBm,发射功率为 25dBm。
+
+
+### AT$MYCGED
+
+
+### $MYCGED: 48,-44,-1
+
+```
+OK
+```
+
+当前信道为 48,接收功率为-44dBm,无发射功率。
+
+
+### 22.11 AT$MYNETINFO–设置网络选择
+
+设置网络选择。
+
+
+### 通过该指令将网络制式设置为非AUTO 模式,模组会开启自动检测网络状态功能,即实时监测模组
+
+是否能够注册上网络:
+
+⚫ 若检测到模组注册上网络,则模组会判断注册的网络是否与要求相符,如果不相符,则切换为所设
+
+置的网络。
+
+
+### ⚫ 若检测到模组掉网,且在所设定的时间(通过$MYNETAUTO设置)内未能再次找回网络,模组会
+
+
+### 自动切换到AUTO 模式。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 243
+
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT$MYNETINFO=<mode><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT$MYNETINFO?<CR> <CR><LF>$MYNETINFO: <mode>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT$MYNETINFO=?<CR> <CR><LF>$MYNETINFO: (list of supported<mode>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<mode> 网络制式
+
+
+### 1:AUTO
+
+
+### 4:4G(包括FDD-LTE、TDD-LTE)
+
+示例
+
+
+### AT$MYNETINFO=1
+
+
+```
+OK
+```
+
+
+### AT$MYNETINFO?
+
+
+
+### $MYNETINFO: 1
+
+```
+OK
+```
+
+
+### AT$MYNETINFO=?
+
+
+
+### $MYNETINFO: (1,4)
+
+```
+OK
+```
+
+
+### 22.12 AT$MYSYSINFO–当前网络运行制式的查询、锁定
+
+当前网络运行制式的查询、锁定。
+
+
+### 当通过该指令将网络制式设置为非AUTO 模式,模组会开启自动检测网络状态功能, 即实时监测模
+
+组是否能够注册上网络。
+
+若检测到模组注册上网络,则模组会判断注册的网络是否与要求相符,如果不相符,则切换为所设
+
+置的网络。
+
+
+### 若检测到模组掉网,且在所设定的时间(通过$MYNETAUTO设置)内未能再次找回网络,模组会
+
+
+### 自动切换到AUTO 模式。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 244
+
+
+
+### 注意:该项目仅支持LTE ,AUTO 模式和LTE 模式其实都是工作在单LTE 下。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT$MYSYSINFO=<SysMode><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 执行 AT$MYSYSINFO<CR>
+
+<CR><LF>$MYSYSINFO:<Sys_Mode>,<mnc
+
+>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT$MYSYSINFO=?<CR>
+
+<CR><LF>$MYSYSINFO: value range of
+
+<SysMode>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<SysMode> 网络制式
+
+
+### 1:AUTO
+
+
+### 4:4G(包括FDD-LTE、TDD-LTE)
+
+<Sys_Mode> 网络制式
+
+0:No service
+
+
+### 4:4G(包括FDD-LTE、TDD-LTE)
+
+<mnc> 网络运营商代码
+
+00:注册失败
+
+01:中国移动
+
+02:中国联通
+
+03:中国电信
+
+04:未知
+
+示例
+
+
+### AT$MYSYSINFO
+
+
+### $MYSYSINFO: 4,01
+
+```
+OK
+```
+
+
+### 当前注册在中国移动的 4G网络下。
+
+
+### AT$MYSYSINFO=1
+
+```
+OK
+```
+
+设置网络模式为自动。
+
+
+### AT$MYSYSINFO=?
+
+
+### $MYSYSINFO: 1,4
+
+```
+OK
+```
+
+查询指令参数设置范围。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 245
+
+
+
+### 22.13 AT$MYSYSINFOURC–网络制式主动上报开关
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 设置 AT$MYSYSINFOURC=<ONOFF>
+
+
+### <CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT$MYSYSINFOURC?<CR> <CR><LF>$MYSYSINFOURC: <ONOFF>
+
+
+### <CR><LF>OK<CR><LF>
+
+响应时间
+
+无
+
+参数
+
+
+### <ONOFF> 整数类型
+
+0:表示关闭网络运行制式主动上报(默认值)
+
+1:表示打开网络运行制式主动上报
+
+示例
+
+
+### AT$MYSYSINFOURC=1
+
+```
+OK
+```
+
+打开主动上报开关
+
+
+### AT$MYSYSINFOURC?
+
+
+### $MYSYSINFOURC: 1
+
+```
+OK
+```
+
+查询主动上报开关
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 246
+
+
+
+### 22.14 AT$MYURCSYSINFO–网络制式主动上报开关
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 设置 AT$MYURCSYSINFO=<ONOFF>
+
+
+### <CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT$ MYURCSYSINFO?<CR> <CR><LF>$ MYURCSYSINFO: <ONOFF>
+
+
+### <CR><LF>OK<CR><LF>
+
+响应时间
+
+无
+
+参数
+
+
+### <ONOFF> 整数类型
+
+0:表示关闭网络运行制式主动上报(默认值)
+
+1:表示打开网络运行制式主动上报
+
+示例
+
+
+### AT$MYURCSYSINFO =1
+
+```
+OK
+```
+
+打开主动上报开关
+
+
+### AT$MYURCSYSINFO?
+
+
+### $MYURCSYSINFO: 1
+
+```
+OK
+```
+
+查询主动上报开关
+
+
+### 22.15 $MYURCSYSINFO–网络运行制式主动上报
+
+命令格式
+
+类型 响应格式
+
+主动上报 <CR><LF>$MYURCSYSINFO: <SysMode>,<mnc><CR><LF>
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 247
+
+
+响应时间
+
+无
+
+参数
+
+<SysMode> 网络制式
+
+
+### 1:AUTO
+
+
+### 2:2G(包括GSM,EDGE)
+
+
+### 4:4G(包括FDD-LTE,TDD-LTE)
+
+<mnc> 网络运营商代码
+
+00:注册失败
+
+01:中国移动
+
+02:中国联通
+
+03:中国电信
+
+示例
+
+
+### AT$MYURCSYSINFO=1
+
+```
+OK
+```
+
+
+
+### $MYURCSYSINFO: 4,01
+
+
+### 网络运行制式为中国移动的 4G网络
+
+
+### 22.16 $MYSYSINFOURC-网络运行制式主动上报
+
+命令格式
+
+类型 响应格式
+
+主动上报 <CR><LF>$MYSYSINFOURC: <SysMode>,<mnc><CR><LF>
+
+响应时间
+
+无
+
+参数
+
+<SysMode> 网络制式
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 248
+
+
+
+### 1:AUTO
+
+
+### 2:2G(包括GSM,EDGE)
+
+
+### 4:4G(包括FDD-LTE,TDD-LTE)
+
+<mnc> 网络运营商代码
+
+00:注册失败
+
+01:中国移动
+
+02:中国联通
+
+03:中国电信
+
+示例
+
+
+### AT$MYSYSINFOURC=1
+
+```
+OK
+```
+
+
+
+### $MYSYSINFOURC: 4,01
+
+
+### 网络运行制式为中国移动的 4G网络
+
+
+### 22.17 AT$MYLACID–查询当前 TAC 和 CELL
+
+查询当前LAC/TAC 和CELL_ID。当前的项目为LTE only,因此查询的是TAC 和CELL ID。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT$MYLACID<CR>
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+
+### <CR><LF>$MYLACID: <TAC>,<CELL_ID>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<TAC> Tracking Area Code,位置区代码,16 进制。
+
+
+### <CELL_ID> CELL_ID,小区识别码,16 进制。
+
+示例
+
+
+### AT$MYLACID
+
+$MYLACID: 2543,a85d
+
+```
+OK
+```
+
+查询当前用户的位置信息。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 249
+
+
+
+### 22.18 AT+IPINFO–查询链路连接信息
+
+查询链路连接信息。
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+IPINFO<CR>
+
+
+### <CR><LD>+IPINFO:
+
+<SocketID>,<LocalIP>,<local_port>,<gate>,<DNS1>,<DNS2>,<type>
+
+,<dest_ip>,<dest_port>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<LocalIP> 字符类型,本地IP 地址。
+
+<local_port> 本地端口(每个通道可能不一样)
+
+<gate> 网关
+
+
+### <DNS1> 首选域名解析服务器
+
+
+### <DNS2> 备用域名解析服务器
+
+<type> TCP Client/TCP Server/UDP/TCP Accept
+
+0:TCP Client
+
+
+### 1:UDP
+
+2:TCP Server
+
+3:TCP Accept
+
+<dest_ip> 需要连接的IP 地址。
+
+<dest_port> 需要连接的端口号。
+
+示例
+
+
+### AT+IPINFO
+
+
+
+### +IPINFO:
+
+0,10.13.70.121,29492,0,202.96.134.33,202.96.128.166,0,58.60.184.213,12005
+
+```
+OK
+```
+
+查询 0 号链路连接信息。
+
+
+### AT+IPINFO
+
+
+```
+OK
+```
+
+无链路连接信息。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 250
+
+
+
+### 22.19 AT+CGACT–网络激活
+
+网络激活。
+
+
+### 设置该指令前需要用指令AT+CGDCONT设置对应通道的APN 相关信息。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+CGACT=<state>[,<cid>[,cid]….]<CR>
+
+<CR><LF>+CGACT: <cid>,<state>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+CGACT?<CR> <CR><LF>+CGACT:<cid>,<state>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+### 测试 AT+CGACT=?<CR>
+
+<CR><LF>+CGACT: (list of supported
+
+<state>s)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<state> PDP 激活状态,0 - 去激活,1 - 激活
+
+<cid> PDP 激活通道,取值范围(1~ 7),最大允许同时激活5 路。
+
+示例
+
+
+### AT+CGACT=1,1
+
+
+
+### +CGACT: 1,1
+
+```
+OK
+```
+
+
+### 激活第一路 PDP。
+
+
+### AT+CGACT?
+
+
+
+### +CGACT: 1,1
+
+```
+OK
+```
+
+
+
+### 查询已激活的 PDP 链路。
+
+
+### AT+CGACT=?
+
+
+
+### +CGACT: (0,1)
+
+```
+OK
+```
+
+测试命令。
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 251
+
+
+
+### 22.20 AT+SIGNAL–设置模组信号灯的状态
+
+设置信号灯不同的闪烁状态。
+
+
+⚫ 该参数如果没有设置过,默认为状态7;
+
+⚫ 休眠模式下,来电或者短信,在0-6 模式下网络灯保持常灭;
+
+⚫ 设置该参数后,掉电保存;8、9、10 模式掉电不保存。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+SIGNAL=<value><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+SIGNAL?<CR> <CR><LF>+SIGNAL:<value>
+
+
+### <CR><LF>OK<CR><LF>
+
+测试 AT+SIGNAL=?<CR> <CR><LF>+SIGNAL: (value range of <value>)
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<value> 整型:取值范围0~11
+
+0:一种状态,正常状态一秒闪烁一次,异常状态都不亮或者常亮
+
+
+### 1:一种状态,连接上GPRS 数据业务每秒闪烁一次,其他情况不亮
+
+
+### 2:两种状态(快闪和慢闪),GPRS 数据业务250 毫秒闪烁一次(快闪),其他
+
+正常状态1 秒闪烁一次(慢闪)
+
+
+### 3:连接上GPRS 数据业务灯常亮,其他情况每秒闪烁一次
+
+
+### 4:连接上GPRS 数据业务灯常亮,其他情况不亮
+
+
+### 5:开机后检查不到SIM 卡时灯灭,检查到SIM 卡灯每秒闪烁一次,连接上GPRS
+
+数据业务灯常亮
+
+6:四种闪灯状态,如下:
+
+
+### (1)无卡、未注册网络时,指示灯按照1S 周期闪烁,亮 0.1S
+
+
+### (2)已注册网络,指示灯按照3S 周期闪烁,亮 0.1S
+
+(3)连接上GPRS 数据业务时,按照250mS 周期闪烁,亮 0.1S
+
+(4)通话时常亮
+
+7:四种闪灯状态,如下:
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 252
+
+
+(1)无卡、未注册网络时,指示灯灭
+
+(2)已注册网络,指示灯常亮
+
+
+### (3)获取IP 地址以后,灯亮0.2 秒,灭1.8 秒(慢闪)
+
+(4)连接服务器以后,灯亮1.8 秒,灭0.2 秒(快闪)
+
+8:常灭
+
+9:常亮
+
+10:自定义亮灭时间,亮灭时间由<low_interval><high_interval>决定
+
+11: 没有注册网络,长灭;正在搜网,灯亮 100ms,灭 800ms;注册上网:灯亮
+
+100ms,灭3000ms;拨号成功:亮100ms,灭300ms。
+
+<low_interval> 灭时间,范围10-65535 ms
+
+<high_interval> 亮时间,范围10-65535 ms
+
+示例
+
+
+### AT+SIGNAL?
+
+
+
+### +SIGNAL: 2
+
+```
+OK
+```
+
+查询当前信号灯状态为 2
+
+
+### AT+SIGNAL=3
+
+
+```
+OK
+```
+
+设置当前信号灯状态为 3
+
+
+### AT+SIGNAL=?
+
+
+
+### +SIGNAL: (0-11)
+
+```
+OK
+```
+
+可设置的信号灯状态范围为 0-11
+
+
+### 22.21 AT+NWURCCFG–唤醒源上报配置指令
+
+配置唤醒源上报的禁用/启用。
+
+参数 mode 设置,掉电不保存。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+NWURCCFG=<mode>,<value>[,<r
+
+ing>]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+NWURCCFG?<CR>
+
+
+### <CR><LF>+NWURCCFG:
+
+(<mode>,<value>,<ring>),
+
+(<mode>,<value>,<ring>),
+
+(<mode>,<value>,<ring>)
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 253
+
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<mode> 0:DATA 状态指示;
+
+
+### 1:CALL 状态指示;
+
+
+### 2:SMS 状态指示;
+
+<value> 状态指示开关,数值形式,取值如下:
+
+1:启用状态
+
+0:禁用状态
+
+三种状态指示默认均为 0,即禁用状态
+
+<ring> Ring 的持续时间,可缺省;
+
+0:DATA 状态指示,默认 200ms,范围 1~2000ms;
+
+1:CALL 状态指示,默认 600ms,范围 1~2000ms;
+
+2:SMS 状态指示,默认 600ms,范围 1~2000ms;
+
+示例
+
+
+### AT+NWURCCFG=1,1,300
+
+
+```
+OK
+```
+
+设置 ring 状态指示,SMS 上报状态开启, ring 持续时间为
+
+300ms
+
+
+### AT+NWURCCFG?
+
+
+
+### +NWURCCFG: (0,1,200),(1,1,300),(2,1,600)
+
+```
+OK
+```
+
+
+### 查询结果, DATA、 CALL、 SMS 都上报状态, DATA 持续时
+
+间 200ms
+
+CALL 持续时间 300ms, SMS 持续时间 600ms;
+
+
+### 22.22 AT+NWDELAYCFG–延时上报控制指令
+
+控制远程唤醒源到来延迟上报定时器。
+
+参数 mode 和 time 设置,掉电不保存。
+
+判断唤醒源到来,可以通过 ring 状态指示来进行,当 ring 上报状态后,启动延迟定时器。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+NWDELAYCFG=<mode>,<time><
+
+CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 254
+
+
+
+### 查询 AT+NWDELAYCFG?<CR>
+
+
+### <CR><LF>+NWDELAYCFG:
+
+<mode>,<time>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<mode> 数值形式,取值如下:
+
+1 控制远程唤醒源到来延迟上报定时器
+
+2~99 保留
+
+<time > 定时器范围,单位为ms,数值形式,取值如下:
+
+0~65535ms 延迟时间范围
+
+默认为 0,即定时器未生效
+
+示例
+
+
+### AT+NWDELAYCFG=1,1000
+
+
+```
+OK
+```
+
+设置延迟上报定时器为 1s,即1000ms, 休眠时, 若数据到来,
+
+ring 管脚电平变化 1s 后, 才上报数据
+
+
+### AT+NWDELAYCFG?
+
+
+
+### +NWDELAYCFG:1,1000
+
+```
+OK
+```
+
+查询定时器为 1s ,即 1000ms
+
+
+### AT+NWDELAYCFG=1,0
+
+
+```
+OK
+```
+
+关闭定时器,休眠唤醒后,唤醒源不缓存延迟,直接上报
+
+
+### 22.23 AT+FTPGETFCFG–FTP 升级上报配置指令
+
+
+### 配置是否上报FTP FOTA包下载进度。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+FTPGETFCFG=”rate”,<mode><C
+
+R>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+查询 AT+FTPGETFCFG?<CR> <CR><LF>+FTPGETFCFG:<mode>
+
+
+### <CR><LF>OK<CR><LF>
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 255
+
+
+参数
+
+<mode> 进度上报开关:
+
+0 进度上报关
+
+1 进度上报开
+
+示例
+
+
+#### `AT+FTPGETFCFG="rate",0`
+
+
+```
+OK
+```
+
+
+### 关闭 AT+FTPGETF指令 FOTA升级进度上报
+
+
+### AT+FTPGETFCFG?
+
+
+
+### +FTPGETFCFG: 0
+
+```
+OK
+```
+
+
+### 查询 FTP FOTA 升级进度上报设置。
+
+
+### 22.24 AT+FTPGETF–FTP 升级指令
+
+控制模组进行远程升级。
+
+命令格式
+
+类型 命令 响应格式
+
+设置 AT+FTPGETF=<ip>,<port>,<mode>,
+
+<filename>,<user>,<pwd><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+Or
+
+<CR><LF>+FTPGETF:<result code><CR><LF>
+
+Or
+
+<CR><LF>FOTA updating:<rate><CR><LF>
+
+Or
+
+<CR><LF>FOTA update success.Ready to reboot
+
+
+### <CR><LF>
+
+Or
+
+
+### <CR><LF>+FOTA SUCCESS<CR><LF>
+
+参数
+
+<ip> FTP 服务器IP 地址或域名
+
+<port> FTP 服务器端口号
+
+<mode> 模式,固定为0
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 256
+
+
+<filename> FTP 服务器上升级文件的文件名。
+
+<user> 登录FTP 服务器所需的用户名,长度不能超过100 个ASCII 码,用户名中不能有逗
+
+号。
+
+<pwd> 登录FTP 服务器所需的密码,长度不能超过100 个ASCII 码,密码中不能有逗号。
+
+<result code> LOGIN OK:FTP 登陆成功
+
+
+### FILE END:下载成功
+
+RATE <cur_size>/<total_size>:下载进度
+
+
+### ERROR PPP:PPP 未打开
+
+
+### ERROR SOCKET:FTP 获取SOCKET 失败
+
+
+### ERROR EVENT:FTP 设置SOCKET 属性失败
+
+
+### ERROR ADDR:FTP IP 地址连接失败
+
+
+### ERROR DOMAIN:FTP 域名连接失败
+
+
+### ERROR CONNECT:FTP 链路连接失败
+
+
+### ERROR LOGIN:FTP 登陆失败
+
+
+### ERROR FSIZE:FTP 获取文件大小失败
+
+
+### ERROR PASV:FTP 获取数据链路地址失败
+
+
+### ERROR HEADER:下载文件头部校验不成功
+
+
+### ERROR LENGTH:下载文件长度校验不成功
+
+
+### ERROR DISCONNECT:链路异常断开
+
+
+### ERROR TIMEOUT:超时无响应
+
+<cur_size> FOTA 包已下载的大小
+
+<total_size> FOTA 包总大小
+
+<rate> fota 升级进度,百分比格式显示
+
+示例
+
+
+#### `AT+FTPGETF=58.60.184.213,12006,0,111.h,test,test`
+
+
+```
+OK
+```
+
+
+
+### +FTPGETF: LOGIN OK
+
+
+
+### +FTPGETF: RATE 1400/13090716
+
+…
+
+
+### +FTPGETF: RATE 13090716/13090716
+
+
+
+### +FTPGETF: FILE END
+
+
+FOTA updating:10%
+
+
+FOTA updating:20%
+
+
+FOTA updating:30%
+
+…
+
+FOTA updating:100%
+
+
+启动升级
+
+
+
+### 登录 FTP 成功
+
+
+下载进度上报
+
+
+持续上报下载进度
+
+
+下载完成
+
+
+升级进度上报
+
+
+持续上报升级进度
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 257
+
+
+FOTA update success.Ready to reboot
+
+
+
+### +FOTA SUCCESS
+
+
+升级完成
+
+
+#### `AT+FTPGETF=58.60.184.213,12006,0,111.h,test,test`
+
+
+
+### +FTPGETF: ERROR PPP
+
+
+未拨号
+
+
+#### `AT+FTPGETF =58.60.184.213,12006,0,111.h,test,test`
+
+
+```
+OK
+```
+
+
+
+### +FTPGETF: LOGIN OK
+
+
+### +FTPGETF: ERROR CONNECT
+
+启动升级
+
+
+
+### 登录 FTP 成功
+
+上报出错信息
+
+
+### 22.25 +NWURCFOTA–FOTA 升级状态上报
+
+
+### 该指令上报FOTA升级状态。
+
+命令格式
+
+类型 命令
+
+主动上报 <CR><LF>+NWURCFOTA: <status><CR><LF>
+
+参数
+
+<status> 升级状态码
+
+0:无可用升级包
+
+1:升级包开始下载
+
+2:升级包下载成功
+
+3:升级包下载失败
+
+4:开始本地升级
+
+5:本地升级成功
+
+6:本地升级失败
+
+示例
+
+
+### +NWURCFOTA: 1
+
+
+
+### +NWURCFOTA: 2
+
+
+
+### +NWURCFOTA: 4
+
+
+
+### +NWURCFOTA: 5
+
+
+开始下载升级包
+
+
+下载升级包成功
+
+开始本地升级
+
+升级完成模组自动重启
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 258
+
+
+
+### 22.26 AT+NWFOTA–模组 FOTA 功能指令
+
+控制模组进行远程升级。
+
+
+⚫ 升级过程中请不要给模组断电或进行重启等操作。
+
+⚫ 自适应波特率下,需先下发AT\r\n 完成波特率自适应后才会上报+NWURCFOTA: 5。
+
+
+### ⚫ 未激活PPP 返回+NWURCFOTA: NET DISCONNECTION。
+
+⚫ Type 参数的HTTPS 协议暂不支持。
+
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+NWFOTA=<url>,<port>[,type]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<url> HTTP/HTTPS 类型的FOTA 差分包路径,字符串类型,最大长度为1024 字节。
+
+<port> FOTA 服务器端口,整数类型
+
+<type> 服务器协议类型,整数类型(该参数暂时不支持)
+
+
+### 0:HTTP 协议(默认)
+
+
+### 1:HTTPS 协议
+
+示例
+
+
+#### `AT+NWFOTA=”fota.neoway.com”,80`
+
+
+```
+OK
+```
+
+
+
+### +NWURCFOTA: 1
+
+
+
+### +NWURCFOTA: 2
+
+
+
+### +NWURCFOTA: 4
+
+
+
+### +NWURCFOTA: 5
+
+
+### 有方 FOTA服务器
+
+
+开始下载升级包
+
+
+下载升级包成功
+
+
+开始本地升级
+
+
+升级完成模组自动重启
+
+
+#### `AT+NWFOTA=”fota.3rdparty.com/http/test.bin”,80,0 第三方 http FOTA服务器`
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 259
+
+
+```
+OK
+```
+
+
+
+### +NWURCFOTA: 1
+
+
+
+### +NWURCFOTA: 2
+
+
+
+### +NWURCFOTA: 4
+
+
+
+### +NWURCFOTA: 5
+
+
+开始下载升级包
+
+
+下载升级包成功
+
+
+开始本地升级
+
+
+升级完成模组自动重启
+
+
+
+#### `AT+NWFOTASCFG=1,0,"ca.pem","cc.pem","ck.pem"`
+
+
+```
+OK
+```
+
+
+
+### 配置 SSL证书(需先使用 AT+NWCERTADD导入证书)
+
+
+
+#### `AT+NWFOTA=”fota.3rdparty.com/https/test.bin”,443,1`
+
+
+```
+OK
+```
+
+
+
+### +NWURCFOTA: 1
+
+
+
+### +NWURCFOTA: 2
+
+
+
+### +NWURCFOTA: 4
+
+
+
+### +NWURCFOTA: 5
+
+第三方 https FOTA服务器
+
+
+开始下载升级包
+
+
+下载升级包成功
+
+
+开始本地升级
+
+
+升级完成模组自动重启
+
+
+
+### 22.27 AT+NWFOTASCFG–控制模组进行远程升级
+
+
+### FOTASSL 参数配置
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+NWFOTASCFG=<auth_mode>[,<ssl_version>[,<ca_cer
+
+t>[,<cert>,<key>]]]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+
+### 查询 AT+NWFOTASCFG?<CR>
+
+
+### <CR><LF>+NWFOTASCFG:
+
+<ssl_version>,<auth_mode>,<
+
+ca_cert>,<cert>,<key><CR><L
+
+F>
+
+
+### <CR><LF>OK<CR><LF>
+
+参数
+
+<auth_mode> 安全认证模式,整数类型,取值定义如下:
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 260
+
+
+0:无需认证对端;
+
+1:需要认证对端;
+
+2:双向认证。
+
+<ssl_version> SSL 协议版本,整数类型,取值定义如下:
+
+
+### 3: TLS1.2;
+
+
+### 4: TLS1.3。
+
+<ca_cert>
+
+<cert>
+
+<key>
+
+
+### CA 证书。
+
+使用的证书文件名称。
+
+使用的密钥。
+
+示例
+
+
+#### `AT+NWFOTASCFG=1,3,"ca.crt","client.crt","client.key"`
+
+
+```
+OK
+```
+
+配置参数
+
+
+### 22.28 AT+NWFTPFOTA–FTP/FTPS FOTA 升级指令
+
+
+升级过程中请不要给模组断电或进行重启等操作。
+
+自适应波特率下,需先下发 AT\r\n 完成波特率自适应后才会上报升级成功回码。
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+NWFTPFOTA=<server>,<port>,<filename>,<user>[,<p
+
+wd>[,<type>]]<CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<server> FTP 类型的FOTA 服务器IP 地址或域名,字符串类型,最大长度为1024 字节。
+
+<port> 服务器端口,整数类型。
+
+<filename>
+
+<user>
+
+<pwd>
+
+<type>
+
+fota 升级包名称。
+
+用户名。
+
+密码。
+
+FTP 类型 (仅支持ftp 加密功能版本可配置)
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 261
+
+
+
+### 0:FTP
+
+
+### 1:FTPS 显式
+
+
+### 2:FTPS 隐式
+
+示例
+
+
+#### `AT+NWFTPFOTA=123.139.59.166,10113,8850BM_a_b.pack,admin,admin,1`
+
+```
+OK
+```
+
+
+
+### +NWURCFOTA: 1
+
+
+
+### +NWURCFOTA: 2
+
+
+
+### +NWURCFOTA: 4
+
+
+
+### +NWURCFOTA: 5
+
+
+### 有方 FTP服务器
+
+
+开始下载升级包
+
+
+下载升级包成功
+
+
+开始本地升级
+
+
+本地升级成功
+
+
+### 22.29 AT+RSPACK–启用数据通信状态灯指示功能
+
+
+
+### ⚫ 执行该指令返回NIC COM SUCCESS 表示MCU 与模组间通信正常, 若返回ERROR 则表示不支持
+
+该功能。
+
+⚫ 灯的状态说明:
+
+
+### 开机或者IDLE 状态常亮
+
+MCU 与模组间通信异常亮1.0s,灭1.0s
+
+MCU 与模组间通信正常亮0.2s,灭0.2s
+
+命令格式
+
+类型 命令 响应格式
+
+
+### 执行 AT+RSPACK<CR> <CR><LF>NIC COM SUCCESS
+
+
+### <CR><LF>OK<CR><LF>
+
+示例
+
+
+### AT+RSPACK
+
+
+
+### NIC COM SUCCESS
+
+```
+OK
+```
+
+
+
+### N706A AT 命令手册
+
+第 22 章其他指令
+
+
+深圳市有方科技股份有限公司版权所有 262
+
+
+
+### 22.30 AT+PING–PING 测试
+
+ping 测试
+
+命令格式
+
+类型 命令 响应格式
+
+执行 AT+PING=<ip><CR>
+
+
+### <CR><LF>OK<CR><LF>
+
+Or
+
+
+### <CR><LF>ERROR<CR><LF>
+
+参数
+
+<ip> IP 地址,或域名
+
+示例
+
+
+#### `AT+PING=www.baidu.com`
+
+
+```
+OK
+```
+
+Pinging www.baidu.com with 32 bytes of data:Reply from 36.155.132.3: bytes=32 time=65(ms) TTL=255
+
+Reply from 36.155.132.3: bytes=32 time=70(ms) TTL=255
+
+Reply from 36.155.132.3: bytes=32 time=40(ms) TTL=255
+
+Reply from 36.155.132.3: bytes=32 time=40(ms) TTL=255
+
+
+Ping statistics for 36.155.132.3
+
+Packets: Sent = 4, Received = 4, Lose = 0 <0% loss>
+
+
+Neowa y Confide ntial
+
+
+
+### N706A AT 命令手册
+
+A Error Codes
+
+
+深圳市有方科技股份有限公司版权所有 263
+
+
+A Error Codes
+
+Code(AT+CMEE=1) Text(AT+CMEE=2)
+
+
+## 0 PHONE FAILURE
+
+
+## 1 NO CONNECTION TO PHONE
+
+
+## 2 PHONE-ADAPTOR LINK RESERVED
+
+
+## 3 OPERATION NOT ALLOWED
+
+
+## 4 OPERATION NOT SUPPORTED
+
+
+## 5 PH-SIM PIN REQUIRED
+
+
+## 6 PH-FSIM PIN REQUIRED
+
+
+## 7 PH-FSIM PUK REQUIRED
+
+
+## 10 SIM NOT INSERTED (SEE NOTE 1)
+
+
+## 11 SIM PIN REQUIRED
+
+
+## 12 SIM PUK REQUIRED
+
+
+## 13 SIM FAILURE (SEE NOTE 1)
+
+
+## 14 SIM BUSY (SEE NOTE 1)
+
+
+## 15 SIM WRONG (SEE NOTE 1)
+
+
+## 16 INCORRECT PASSWORD
+
+
+## 17 SIM PIN2 REQUIRED
+
+
+## 18 SIM PUK2 REQUIRED
+
+
+## 20 MEMORY FULL
+
+
+## 21 INVALID INDEX
+
+
+## 22 NOT FOUND
+
+
+## 23 MEMORY FAILURE
+
+
+## 24 TEXT STRING TOO LONG
+
+
+## 25 INVALID CHARACTERS IN TEXT STRING
+
+
+## 26 DIAL STRING TOO LONG
+
+
+## 27 INVALID CHARACTERS IN DIAL STRING
+
+
+## 30 NO NETWORK SERVICE
+
+
+## 31 NETWORK TIMEOUT
+
+
+
+### N706A AT 命令手册
+
+A Error Codes
+
+
+深圳市有方科技股份有限公司版权所有 264
+
+
+
+## 32 NETWORK NOT ALLOWED - EMERGENCY CALLS ONLY
+
+
+## 40 NETWORK PERSONALIZATION PIN REQUIRED
+
+
+## 41 NETWORK PERSONALIZATION PUK REQUIRED
+
+
+## 42 NETWORK SUBSET PERSONALIZATION PIN REQUIRED
+
+
+## 43 NETWORK SUBSET PERSONALIZATION PUK REQUIRED
+
+
+## 44 SERVICE PROVIDER PERSONALIZATION PIN REQUIRED
+
+
+## 45 SERVICE PROVIDER PERSONALIZATION PUK REQUIRED
+
+
+## 46 CORPORATE PERSONALIZATION PIN REQUIRED
+
+
+## 47 CORPORATE PERSONALIZATION PUK REQUIRED
+
+
+## 48 HIDDEN KEY REQUIRED (SEE NOTE 2)
+
+
+## 49 EAP METHOD NOT SUPPORTED
+
+
+## 50 INCORRECT PARAMETERS
+
+
+## 51 COMMAND IMPLEMENTED BUT CURRENTLY DISABLED
+
+
+## 52 COMMAND ABORTED BY USER
+
+
+## 53 NOT ATTACHED TO NETWORK DUE TO MT FUNCTIONALITY
+
+
+### RESTRICTIONS
+
+
+## 54 MODEM NOT ALLOWED - MT RESTRICTED TO EMERGENCY CALLS
+
+
+### ONLY
+
+
+## 55 OPERATION NOT ALLOWED BECAUSE OF MT FUNCTIONALITY
+
+
+### RESTRICTIONS
+
+
+## 56 FIXED DIAL NUMBER ONLY ALLOWED - CALLED NUMBER IS NOT A
+
+
+### FIXED DIAL NUMBER (REFER 3GPP TS 22.101 [147])
+
+
+## 57 TEMPORARILY OUT OF SERVICE DUE TO OTHER MT USAGE
+
+
+## 58 LANGUAGE/ALPHABET NOT SUPPORTED
+
+
+## 59 UNEXPECTED DATA VALUE
+
+
+## 60 SYSTEM FAILURE
+
+
+## 61 DATA MISSING
+
+
+## 62 CALL BARRED
+
+
+## 63 MESSAGE WAITING INDICATION SUBSCRIPTION FAILURE
+
+
+## 100 UNKNOWN
+
+
+Neowa y Confide ntial
+
+
+
+### N706A AT 命令手册
+
+
+### B 短信发送流程
+
+
+深圳市有方科技股份有限公司版权所有 265
+
+
+
+### B 短信发送流程
+
+
+### B.1 发送 PDU 格式的短信内容介绍
+
+
+### <PDU>短信发送格式:
+
+1>:0891
+
+
+### 08 表示:SMSC 地址信息长度
+
+
+### 91 表示:SMSC 地址格式
+
+
+### 2>:移动短信中心号码(8613800755500)每2 位倒置(不足的以F 补充),固定不会变动
+
+3>:0100
+
+01 表示:基本参数
+
+00 表示:消息基准值
+
+
+### 4>:对方号码长度转十六进制,号码长度为11 位,转化为十六进制数是B,前面必须加“0”
+
+5>:81(接收方模式)接收方模式有多种
+
+81:表示未知
+
+
+### 6>:对方手机号码;每2 位倒置(不足两位的后面用F 补充)
+
+7>:0008
+
+8>:内容十六进制长度除以2,再转十六进制,例如:深圳市宝安区大浪联建,转化为十六进制是
+
+
+### 6DF157335E025B9D5B89533A59276D6A80545EFA字数为40,除以2 再转化成十六进制数就是14
+
+9>:内容 (内容可以从WORD 中插入-符号中选取) , 先编辑好中文短信,在WORD 中按“Alt+X”
+
+将其转化成十六进制数,一次只能转化一个汉字
+
+
+### PDU 短信内容一般有上面九部分组成,各参数值根据实际情况而定。
+
+
+
+### 如果SMSC 地址信息长度为0 ,也就是开头“08”换成“00”则SMSC 地址格式即短信中心号码
+
+不需要发送。
+
+
+
+### N706A AT 命令手册
+
+
+### B 短信发送流程
+
+
+深圳市有方科技股份有限公司版权所有 266
+
+
+Neowa y Confide ntial
+
+
+### SMSC 地址信息长度不为0 的PDU 短信内容例子:
+
+
+### 0891683108705505F001000B815118784271F20008146DF157335E025B9D5B89533A59276D
+
+
+### 6A80545EFA
+
+上例详解:
+
+1、0891
+
+
+### 2、移动短信中心号码(683108705505F0)
+
+3、0100
+
+
+### 4、对方号码长度(0B)
+
+5、接收模式(81)
+
+
+### 6、对方手机号码(5118784271F2)
+
+7、0008
+
+8、内容长度(14)
+
+
+### 9、短信内容(6DF157335E025B9D5B89533A59276D6A80545EFA)
+
+信息内容:深圳市宝安区大浪联建
+
+
+
+### 发送短信的时候,短信内容字节长度(AT+CMGS=LENGTH)是从0100 开始算总长度除以2,则
+
+
+### LENGTH =33
+
+
+### SMSC 地址信息长度为0 的PDU 短信内容例子:
+
+
+### 0001000B815118784271F20008146DF157335E025B9D5B89533A59276D6A80545EFA
+
+上例详解:
+
+
+### 1、00(SMSC 地址信息长度)
+
+2、无需移动短信中心号码
+
+3、0100
+
+
+### 4、对方号码长度(0B)
+
+5、接收模式(81)
+
+
+
+### N706A AT 命令手册
+
+
+### B 短信发送流程
+
+
+深圳市有方科技股份有限公司版权所有 267
+
+
+Neowa y Confide ntial
+
+
+### 6、对方手机号码(5118784271F2)
+
+7、0008
+
+8、内容长度(14)
+
+
+### 9、短信内容(6DF157335E025B9D5B89533A59276D6A80545EFA)
+
+信息内容:深圳市宝安区大浪联建
+
+
+
+### 发送短信的时候,短信内容字节长度(AT+CMGS=LENGTH)是从0100 开始算总长度除以2,则
+
+
+### LENGTH =33
+
+
+
+### N706A AT 命令手册
+
+
+### B 短信发送流程
+
+
+深圳市有方科技股份有限公司版权所有 268
+
+
+Neowa y Confide ntial
+
+
+### B.2 发送文本模式的短信流程(通过串口发送)
+
+
+### 图 B-1 文本格式的短信流程
+
+设置文本模式
+
+
+### AT+CMGF=1
+
+```
+OK
+```
+
+
+### 设置TE字符集
+
+
+### AT+CSCS= GSM
+
+```
+OK
+```
+
+发送短信
+
+
+### AT+CMGS="13430981508"
+
+>
+
+发送短信内容
+
+Shenzhen Neoway Technology
+
+返回值响应
+
+
+### +CMGS: 116
+
+```
+OK
+```
+
+结束
+
+输入短信内容:Shenzhen
+
+Neoway Technology
+
+之后按
+
+CTRL+Z(对应的字符是0x
+
+
+### 1A)进行发送
+
+敲回车发送,出现
+
+这个提示符号,这个时候
+
+可以开始发送内容
+
+成功
+
+
+
+### N706A AT 命令手册
+
+
+### B 短信发送流程
+
+
+深圳市有方科技股份有限公司版权所有 269
+
+
+Neowa y Confide ntial
+
+
+### B.3 发送 PDU 模式短信的流程(通过串口发送)
+
+
+### 图 B-2 发送PDU 模式的短信流程
+
+
+### 设置PDU模式
+
+
+### AT+CMGF=0
+
+```
+OK
+```
+
+
+### 设置TE字符集
+
+
+### AT+CSCS= UCS2
+
+```
+OK
+```
+
+发送短信
+
+
+### AT+CMGS=33<CR>
+
+>
+
+发送短信内容
+
+
+### 0891683108705505F001000B8151187
+
+
+### 84271F20008146DF157335E025B9D5
+
+
+### B89533A59276D6A80545EFA
+
+返回值响应
+
+
+### +CMGS: 117
+
+```
+OK
+```
+
+结束
+
+
+### 输入短信内容:PDU
+
+
+### 格式编码之后按CTRL
+
+```
++Z(对应的字符是0x1
+```
+
+
+### A)进行发送
+
+
+### PDU模式下短信内
+
+容的字节长度:33
+
+成功
+
+
+Neowa y Confide ntial
+
+
+
+### N706A AT 命令手册
+
+C Support Band List
+
+
+深圳市有方科技股份有限公司版权所有 270
+
+
+C Support Band List
+
+C.1 LTE Bands
+
+LTE Band Name Bit HEX Band Mask
+
+
+### EUTRAN_BAND1 1 1
+
+
+### EUTRAN_BAND2 2 2
+
+
+### EUTRAN_BAND3 3 4
+
+
+### EUTRAN_BAND4 4 8
+
+
+### EUTRAN_BAND5 5 10
+
+
+### EUTRAN_BAND6 6 20
+
+
+### EUTRAN_BAND7 7 40
+
+
+### EUTRAN_BAND8 8 80
+
+
+### EUTRAN_BAND9 9 100
+
+
+### EUTRAN_BAND10 10 200
+
+
+### EUTRAN_BAND11 11 400
+
+
+### EUTRAN_BAND12 12 800
+
+
+### EUTRAN_BAND13 13 1000
+
+
+### EUTRAN_BAND14 14 2000
+
+
+### EUTRAN_BAND17 17 10000
+
+
+### EUTRAN_BAND33 33 100000000
+
+
+### EUTRAN_BAND34 34 200000000
+
+
+### EUTRAN_BAND35 35 400000000
+
+
+### EUTRAN_BAND36 36 800000000
+
+
+### EUTRAN_BAND37 37 1000000000
+
+
+### EUTRAN_BAND38 38 2000000000
+
+
+### EUTRAN_BAND39 39 4000000000
+
+
+### EUTRAN_BAND40 40 8000000000
+
+
+### EUTRAN_BAND41 41 10000000000
+
+
+### EUTRAN_BAND42 42 20000000000
+
+
+### EUTRAN_BAND43 43 40000000000
+
+
+
+### N706A AT 命令手册
+
+C Support Band List
+
+
+深圳市有方科技股份有限公司版权所有 271
+
+
+Neowa y Confide ntial
+
+
+### EUTRAN_BAND44 44 80000000000
+
+
+### EUTRAN_BAND65 51 4000000000000
+
+
+### EUTRAN_BAND66 52 8000000000000
+
+
+### EUTRAN_BAND71 60 800000000000000
+
+
+### EUTRAN_BAND252 61 1000000000000000
+
+
+### EUTRAN_BAND253 62 2000000000000000
+
+
+### EUTRAN_BAND255 64 8000000000000000
+
#include "ppp_cat1_api.h"
#include "soc_osal.h"
#include <string.h>
+#include <stdlib.h> // 添加malloc/free支持
#include "osal_debug.h"
#include "schedule/osal_task.h"
#include "securec.h"
#include "ppp_log.h"
-#include "ppp_types.h" // 添加类型定义头文件
+
+// lwIP头文件,用于访问netif结构体和系统抽象层
+#ifdef LWIP_PPP_SUPPORT
+#include "lwip/netif.h"
+#include "lwip/sys.h" /* lwIP系统抽象层,参考slipif_init方式 */
+#endif
+
// PPP连接状态
static ppp_state_t g_ppp_state = PPP_STATE_IDLE;
// 外部声明cat1_api_enable_cat1函数(在ppp_cat1_api.c中实现)
extern void cat1_api_enable_cat1(bool isopen);
+static errcode_t ppp_api_get_ppp_netif_name(char* netif_name, uint32_t buffer_size);
/**
* @brief 初始化PPP模块
*/
PPP_DEBUG_PRINT("Step 3: Initializing UART for AT mode\n");
ppp_serial_config_t serial_config = {
.uart_bus = SIO_UART_BUS,
+ .irq_num = SIO_UART_IRQ_NUM,
.baudrate = g_ppp_config.baudrate,
.tx_pin = SIO_UART_TX_PIN,
.rx_pin = SIO_UART_RX_PIN,
.tx_buffer_size = PPP_TX_BUFFER_SIZE,
.rx_callback = NULL,
.rx_callback_arg = NULL
- };
-
+ };
ppp_error_t ret = ppp_serial_init(&serial_config);
if (ret != PPP_ERR_OK) {
PPP_DEBUG_PRINT("Failed to initialize serial for AT mode: %d\n", ret);
static void ppp_lwip_event_callback(const ppp_lwip_event_t *event, void *arg)
{
+ (void)arg;
+
PPP_DEBUG_PRINT("PPP lwIP event: %d\n", event->type);
+
+ switch (event->type) {
+ case PPP_LWIP_EVENT_CONNECTED:
+ PPP_DEBUG_INFO("PPP connection established successfully");
+
+ // 设置PPP状态为已连接
+ g_ppp_state = PPP_STATE_CONNECTED;
+ PPP_DEBUG_INFO("PPP state updated to CONNECTED");
+
+ // 等待一小段时间让IPCP协商完成
+ osal_msleep(1000);
+
+ // 多次重试检查网络信息,直到获取到有效IP
+ int retry_count = 0;
+ const int max_retries = 10;
+ bool ip_acquired = false;
+
+ while (retry_count < max_retries && !ip_acquired) {
+ // 重新检查网络信息
+ ppp_lwip_network_info_t lwip_info;
+ ppp_error_t lwip_ret = ppp_lwip_get_network_info(&lwip_info);
+
+ if (lwip_ret == PPP_ERR_OK && lwip_info.local_ip != 0) {
+ PPP_DEBUG_INFO("PPP network info acquired after %d retries - Local IP: %u.%u.%u.%u",
+ retry_count,
+ (lwip_info.local_ip >> 0) & 0xFF,
+ (lwip_info.local_ip >> 8) & 0xFF,
+ (lwip_info.local_ip >> 16) & 0xFF,
+ (lwip_info.local_ip >> 24) & 0xFF);
+ ip_acquired = true;
+ } else {
+ retry_count++;
+ PPP_DEBUG_WARN("PPP network info not ready, retry %d/%d", retry_count, max_retries);
+ osal_msleep(500); // 等待500ms再重试
+ }
+ }
+
+ if (!ip_acquired) {
+ PPP_DEBUG_ERROR("Failed to acquire IP address after %d retries", max_retries);
+ PPP_DEBUG_INFO("Forcing netif up and trying manual IP check...");
+
+ // 强制激活网络接口
+ struct netif *ppp_netif = ppp_lwip_get_netif();
+ if (ppp_netif) {
+ netif_set_up(ppp_netif);
+ netif_set_link_up(ppp_netif);
+ PPP_DEBUG_INFO("Forced netif up, flags: 0x%02x", ppp_netif->flags);
+ }
+ }
+
+ // 获取实际的PPP网络接口名称
+ char ppp_netif_name[16];
+ errcode_t ret = ppp_api_get_ppp_netif_name(ppp_netif_name, sizeof(ppp_netif_name));
+ if (ret != ERRCODE_SUCC) {
+ // 如果获取失败,使用默认名称
+ strncpy_s(ppp_netif_name, sizeof(ppp_netif_name), "pp0", sizeof(ppp_netif_name) - 1);
+ PPP_DEBUG_WARN("Failed to get PPP netif name, using default: pp0");
+ }
+
+ // 自动设置PPP接口为默认网卡
+ ret = ppp_api_set_default_netif(ppp_netif_name);
+ if (ret == ERRCODE_SUCC) {
+ PPP_DEBUG_INFO("PPP interface (%s) automatically set as default network interface", ppp_netif_name);
+ } else {
+ PPP_DEBUG_WARN("Failed to set PPP interface (%s) as default: %d", ppp_netif_name, ret);
+ }
+ break;
+
+ case PPP_LWIP_EVENT_DISCONNECTED:
+ PPP_DEBUG_INFO("PPP connection disconnected");
+
+ // 设置PPP状态为已初始化(可以重新拨号)
+ g_ppp_state = PPP_STATE_INITIALIZED;
+ PPP_DEBUG_INFO("PPP state updated to INITIALIZED");
+
+ // PPP断开时,自动切换回回环接口作为默认网卡
+ ret = ppp_api_set_default_netif("lo");
+ if (ret == ERRCODE_SUCC) {
+ PPP_DEBUG_INFO("Automatically switched back to loopback interface (lo) as default");
+ } else {
+ PPP_DEBUG_WARN("Failed to set loopback interface as default: %d", ret);
+ }
+ break;
+
+ case PPP_LWIP_EVENT_ERROR:
+ PPP_DEBUG_ERROR("PPP connection error: %d", event->error_code);
+ break;
+
+ default:
+ PPP_DEBUG_DEBUG("PPP lwIP event: %d", event->type);
+ break;
+ }
}
/**
goto error_recovery_at_mode;
}
+ // 8.5. 验证调制解调器是否真正进入PPP数据模式
+ PPP_DEBUG_PRINT("Verifying modem is in PPP data mode...\n");
+ osal_msleep(1000); // 等待1秒让调制解调器稳定
+
+ // 尝试读取一些数据,检查是否还有AT响应
+ uint8_t verify_buffer[64];
+ uint32_t bytes_read = 0;
+ ppp_error_t verify_ret = ppp_serial_read(verify_buffer, sizeof(verify_buffer), &bytes_read);
+
+ if (verify_ret == PPP_ERR_OK && bytes_read > 0) {
+ PPP_DEBUG_PRINT("Read %u bytes after mode switch, checking for AT responses...\n", bytes_read);
+
+ // 检查是否包含AT响应(如"OK", "ERROR"等)
+ bool has_at_response = false;
+ for (uint32_t i = 0; i < bytes_read - 1; i++) {
+ if ((verify_buffer[i] == 'O' && verify_buffer[i+1] == 'K') ||
+ (verify_buffer[i] == 'E' && i < bytes_read - 4 &&
+ strncmp((char*)&verify_buffer[i], "ERROR", 5) == 0)) {
+ has_at_response = true;
+ break;
+ }
+ }
+
+ if (has_at_response) {
+ PPP_DEBUG_ERROR("Modem still sending AT responses - not in PPP data mode!\n");
+ PPP_DEBUG_PRINT("Received data: ");
+ for (uint32_t i = 0; i < bytes_read; i++) {
+ PPP_DEBUG_PRINT("%02X ", verify_buffer[i]);
+ }
+ PPP_DEBUG_PRINT("\n");
+ goto error_recovery_at_mode;
+ } else {
+ PPP_DEBUG_PRINT("Data looks like PPP frames - mode switch successful\n");
+ }
+ } else {
+ PPP_DEBUG_PRINT("No immediate data after mode switch - this is normal\n");
+ }
+
// 9. 启动PPP数据接收处理(在lwIP连接之前启动)
- ret = ppp_start_data_receive_thread();
+ ret = ppp_lwip_start_receive_thread();
if (ret != PPP_ERR_OK) {
PPP_DEBUG_PRINT("Failed to start PPP data receive thread: %d\n", ret);
goto error_recovery_at_mode;
ret = ppp_lwip_init(&lwip_config); // 使用默认配置
if (ret != PPP_ERR_OK) {
PPP_DEBUG_PRINT("Failed to initialize lwIP PPP: %d\n", ret);
- ppp_stop_data_receive_thread();
+ ppp_lwip_stop_receive_thread();
goto error_recovery_at_mode;
}
if (ret != PPP_ERR_OK) {
PPP_DEBUG_PRINT("Failed to start PPP connection: %d\n", ret);
ppp_lwip_deinit();
- ppp_stop_data_receive_thread();
+ ppp_lwip_stop_receive_thread();
goto error_recovery_at_mode;
}
- g_ppp_state = PPP_STATE_CONNECTED;
+ // 注意:不要立即设置为CONNECTED,等待PPP协商完成
+ // g_ppp_state将在ppp_lwip_event_callback中设置为CONNECTED
+ g_ppp_state = PPP_STATE_CONNECTING;
PPP_DEBUG_PRINT("PPP dial completed successfully - now in data mode\n");
+ PPP_DEBUG_PRINT("PPP negotiation will start automatically...\n");
return ERRCODE_SUCC;
}
// 1. 停止PPP数据接收线程
- ppp_stop_data_receive_thread();
+ ppp_lwip_stop_receive_thread();
// 2. 断开lwIP PPP连接
ppp_lwip_disconnect();
return ERRCODE_INVALID_PARAM;
}
- // TODO: 实现连接信息获取
+ // 初始化结构体
(void)memset_s(info, sizeof(ppp_connection_info_t), 0, sizeof(ppp_connection_info_t));
- PPP_DEBUG_PRINT("PPP connection info retrieved\n");
+ // 检查PPP连接状态
+ if (g_ppp_state != PPP_STATE_CONNECTED) {
+ PPP_DEBUG_PRINT("PPP not connected, state: %d\n", g_ppp_state);
+ return ERRCODE_FAIL;
+ }
+
+ // 从lwIP获取网络信息
+ ppp_lwip_network_info_t lwip_info;
+ ppp_error_t ret = ppp_lwip_get_network_info(&lwip_info);
+ if (ret != PPP_ERR_OK) {
+ PPP_DEBUG_ERROR("Failed to get lwIP network info: %d", ret);
+ return ERRCODE_FAIL;
+ }
+
+ // 复制网络信息
+ info->local_ip = lwip_info.local_ip;
+ info->remote_ip = lwip_info.remote_ip;
+ info->primary_dns = lwip_info.primary_dns;
+ info->secondary_dns = lwip_info.secondary_dns;
+ info->mtu = lwip_info.mtu;
+ info->connected = lwip_info.connected;
+
+ // 设置连接时间(这里简化处理,可以后续完善)
+ info->connect_time = 0;
+
+ PPP_DEBUG_INFO("PPP connection info retrieved successfully");
+ PPP_DEBUG_INFO("Local IP: %u.%u.%u.%u",
+ (info->local_ip >> 0) & 0xFF,
+ (info->local_ip >> 8) & 0xFF,
+ (info->local_ip >> 16) & 0xFF,
+ (info->local_ip >> 24) & 0xFF);
return ERRCODE_SUCC;
}
PPP_DEBUG_PRINT("Resetting PPP from error state\n");
// 1. 停止所有可能的活动
- ppp_stop_data_receive_thread();
+ ppp_lwip_stop_receive_thread();
ppp_lwip_deinit();
// 2. 尝试恢复到AT模式
return ERRCODE_SUCC;
}
-/* PPP数据接收线程相关 */
-static osal_task *g_ppp_rx_task = NULL;
-static bool g_ppp_rx_thread_running = false;
-
-/**
- * @brief PPP数据接收线程
- */
-static void ppp_data_receive_thread(void *arg)
-{
- (void)arg;
-
- PPP_DEBUG_PRINT("PPP data receive thread started\n");
-
- uint8_t rx_buffer[PPP_RX_BUFFER_SIZE];
- uint32_t bytes_read;
-
- while (g_ppp_rx_thread_running) {
- // 从串口读取PPP数据
- ppp_error_t ret = ppp_serial_read(rx_buffer, sizeof(rx_buffer), &bytes_read);
- if (ret == PPP_ERR_OK && bytes_read > 0) {
- // 将数据传递给lwIP PPP协议栈
- ppp_lwip_input(rx_buffer, bytes_read);
- }
-
- // 短暂延时,避免占用过多CPU
- osal_msleep(1);
- }
-
- PPP_DEBUG_PRINT("PPP data receive thread stopped\n");
-}
-
-/**
- * @brief 启动PPP数据接收线程
- */
-ppp_error_t ppp_start_data_receive_thread(void)
-{
- if (g_ppp_rx_task != NULL) {
- PPP_DEBUG_WARN("PPP data receive thread already running");
- return PPP_ERR_OK;
- }
-
- g_ppp_rx_thread_running = true;
-
- // 创建PPP数据接收线程
- g_ppp_rx_task = osal_kthread_create((osal_kthread_handler)ppp_data_receive_thread,
- NULL, "ppp_rx_thread", PPP_RX_THREAD_STACK_SIZE);
- if (g_ppp_rx_task == NULL) {
- PPP_DEBUG_ERROR("Failed to create PPP data receive thread");
- g_ppp_rx_thread_running = false;
- return PPP_ERR_MEMORY;
- }
-
- PPP_DEBUG_INFO("PPP data receive thread created successfully");
- return PPP_ERR_OK;
-}
-
-/**
- * @brief 停止PPP数据接收线程
- */
-ppp_error_t ppp_stop_data_receive_thread(void)
-{
- if (g_ppp_rx_task == NULL) {
- return PPP_ERR_OK;
- }
-
- PPP_DEBUG_INFO("Stopping PPP data receive thread");
-
- // 停止线程
- g_ppp_rx_thread_running = false;
-
- // 等待线程结束
- osal_msleep(100);
-
- // 销毁线程
- osal_kthread_destroy(g_ppp_rx_task, 0);
- g_ppp_rx_task = NULL;
-
- PPP_DEBUG_INFO("PPP data receive thread stopped");
- return PPP_ERR_OK;
-}
+/* PPP数据接收线程已移至ppp_lwip_thread.c */
/* ========== PPP测试接口实现 ========== */
bool ppp_is_4g_power_initialized(void)
{
return g_4g_power_initialized;
-}
\ No newline at end of file
+}
+
+/********************** Runtime变量获取函数 **********************/
+
+/**
+ * @brief 解析AT+CGSN响应获取IMEI
+ * @param response AT命令响应
+ * @param imei IMEI缓冲区
+ * @param imei_size IMEI缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+static errcode_t ppp_parse_imei_response(const char *response, char *imei, size_t imei_size)
+{
+ if (!response || !imei || imei_size == 0) {
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ const char *start = strstr(response, "+CGSN: ");
+ if (start == NULL) {
+ return ERRCODE_FAIL;
+ }
+
+ start += 7; // 跳过"+CGSN: "
+ const char *end = strstr(start, "\r");
+ if (end == NULL) {
+ end = strstr(start, "\n");
+ }
+ if (end == NULL) {
+ return ERRCODE_FAIL;
+ }
+
+ size_t len = end - start;
+ if (len >= imei_size) {
+ len = imei_size - 1;
+ }
+
+ strncpy_s(imei, imei_size, start, len);
+ imei[len] = '\0';
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 解析AT+CSQ响应获取信号强度
+ * @param response AT命令响应
+ * @param signal 信号强度指针
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+static errcode_t ppp_parse_signal_response(const char *response, int *signal)
+{
+ if (!response || !signal) {
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ const char *start = strstr(response, "+CSQ: ");
+ if (start == NULL) {
+ return ERRCODE_FAIL;
+ }
+
+ start += 6; // 跳过"+CSQ: "
+ int sig, ber;
+ if (sscanf_s(start, "%d,%d", &sig, &ber) == 2) {
+ *signal = sig;
+ return ERRCODE_SUCC;
+ }
+
+ return ERRCODE_FAIL;
+}
+
+/**
+ * @brief 解析AT+COPS响应获取运营商信息
+ * @param response AT命令响应
+ * @param operator 运营商缓冲区
+ * @param operator_size 运营商缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+static errcode_t ppp_parse_operator_response(const char *response, char *operator, size_t operator_size)
+{
+ if (!response || !operator || operator_size == 0) {
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ const char *start = strstr(response, "+COPS: ");
+ if (start == NULL) {
+ return ERRCODE_FAIL;
+ }
+
+ // 查找第一个引号
+ const char *quote_start = strchr(start, '"');
+ if (quote_start == NULL) {
+ return ERRCODE_FAIL;
+ }
+ quote_start++; // 跳过引号
+
+ // 查找第二个引号
+ const char *quote_end = strchr(quote_start, '"');
+ if (quote_end == NULL) {
+ return ERRCODE_FAIL;
+ }
+
+ size_t len = quote_end - quote_start;
+ if (len >= operator_size) {
+ len = operator_size - 1;
+ }
+
+ strncpy_s(operator, operator_size, quote_start, len);
+ operator[len] = '\0';
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 解析AT+CCID响应获取ICCID
+ * @param response AT命令响应
+ * @param iccid ICCID缓冲区
+ * @param iccid_size ICCID缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+static errcode_t ppp_parse_iccid_response(const char *response, char *iccid, size_t iccid_size)
+{
+ if (!response || !iccid || iccid_size == 0) {
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ const char *start = strstr(response, "+CCID: ");
+ if (start == NULL) {
+ return ERRCODE_FAIL;
+ }
+
+ start += 7; // 跳过"+CCID: "
+ const char *end = strstr(start, "\r");
+ if (end == NULL) {
+ end = strstr(start, "\n");
+ }
+ if (end == NULL) {
+ return ERRCODE_FAIL;
+ }
+
+ size_t len = end - start;
+ if (len >= iccid_size) {
+ len = iccid_size - 1;
+ }
+
+ strncpy_s(iccid, iccid_size, start, len);
+ iccid[len] = '\0';
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 解析AT+GMR响应获取版本信息
+ * @param response AT命令响应
+ * @param version 版本缓冲区
+ * @param version_size 版本缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+static errcode_t ppp_parse_version_response(const char *response, char *version, size_t version_size)
+{
+ if (!response || !version || version_size == 0) {
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ const char *start = strstr(response, "+GMR: ");
+ if (start == NULL) {
+ return ERRCODE_FAIL;
+ }
+
+ start += 6; // 跳过"+GMR: "
+ const char *end = strstr(start, "\r");
+ if (end == NULL) {
+ end = strstr(start, "\n");
+ }
+ if (end == NULL) {
+ return ERRCODE_FAIL;
+ }
+
+ size_t len = end - start;
+ if (len >= version_size) {
+ len = version_size - 1;
+ }
+
+ strncpy_s(version, version_size, start, len);
+ version[len] = '\0';
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 解析AT+CREG或AT+CEREG响应获取网络注册状态
+ * @param response AT命令响应
+ * @param network_status 网络状态指针
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+static errcode_t ppp_parse_network_status_response(const char *response, uint8_t *network_status)
+{
+ if (!response || !network_status) {
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ const char *start = strstr(response, "+CREG: ");
+ if (start == NULL) {
+ start = strstr(response, "+CEREG: ");
+ if (start == NULL) {
+ return ERRCODE_FAIL;
+ }
+ start += 8; // 跳过"+CEREG: "
+ } else {
+ start += 7; // 跳过"+CREG: "
+ }
+
+ int n, stat;
+ if (sscanf_s(start, "%d,%d", &n, &stat) == 2) {
+ *network_status = (uint8_t)stat;
+ return ERRCODE_SUCC;
+ }
+
+ return ERRCODE_FAIL;
+}
+
+/**
+ * @brief 通过AT命令获取IMEI号并更新runtime状态
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_update_imei(void)
+{
+ char *response = (char *)malloc(512); // 动态分配内存
+ if (response == NULL) {
+ PPP_DEBUG_ERROR("Failed to allocate memory for AT response");
+ return ERRCODE_FAIL;
+ }
+
+ uint32_t response_len;
+ char imei_temp[32] = {0};
+
+ // 使用现有的AT命令执行接口
+ errcode_t ret = ppp_test_execute_at_command("AT+CGSN", response, 512, &response_len, 5000);
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to send AT+CGSN command");
+ free(response);
+ return ret;
+ }
+
+ ret = ppp_parse_imei_response(response, imei_temp, sizeof(imei_temp));
+ free(response);
+
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to parse IMEI response");
+ return ret;
+ }
+
+ // 更新runtime状态
+ cat1_api_runtime_set_cat1_imei(imei_temp);
+ PPP_DEBUG_INFO("Updated IMEI: %s", imei_temp);
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 通过AT命令获取信号强度并更新runtime状态
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_update_signal(void)
+{
+ char *response = (char *)malloc(512); // 动态分配内存
+ if (response == NULL) {
+ PPP_DEBUG_ERROR("Failed to allocate memory for AT response");
+ return ERRCODE_FAIL;
+ }
+
+ uint32_t response_len;
+ int signal = 99; // 默认无信号
+
+ // 使用现有的AT命令执行接口
+ errcode_t ret = ppp_test_execute_at_command("AT+CSQ", response, 512, &response_len, 5000);
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to send AT+CSQ command");
+ free(response);
+ return ret;
+ }
+
+ ret = ppp_parse_signal_response(response, &signal);
+ free(response);
+
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to parse signal response");
+ return ret;
+ }
+
+ // 更新runtime状态
+ cat1_api_runtime_set_cat1_signal(signal);
+ PPP_DEBUG_INFO("Updated signal strength: %d", signal);
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 通过AT命令获取运营商信息并更新runtime状态
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_update_operator(void)
+{
+ char *response = (char *)malloc(512); // 动态分配内存
+ if (response == NULL) {
+ PPP_DEBUG_ERROR("Failed to allocate memory for AT response");
+ return ERRCODE_FAIL;
+ }
+
+ uint32_t response_len;
+ char operator_temp[64] = {0};
+
+ // 使用现有的AT命令执行接口
+ errcode_t ret = ppp_test_execute_at_command("AT+COPS?", response, 512, &response_len, 10000);
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to send AT+COPS command");
+ free(response);
+ return ret;
+ }
+
+ ret = ppp_parse_operator_response(response, operator_temp, sizeof(operator_temp));
+ free(response);
+
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to parse operator response");
+ return ret;
+ }
+
+ // 更新runtime状态
+ cat1_api_runtime_set_cat1_operator(operator_temp);
+ PPP_DEBUG_INFO("Updated operator: %s", operator_temp);
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 通过AT命令获取ICCID并更新runtime状态
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_update_iccid(void)
+{
+ char *response = (char *)malloc(512); // 动态分配内存
+ if (response == NULL) {
+ PPP_DEBUG_ERROR("Failed to allocate memory for AT response");
+ return ERRCODE_FAIL;
+ }
+
+ uint32_t response_len;
+ char iccid_temp[32] = {0};
+
+ // 使用现有的AT命令执行接口
+ errcode_t ret = ppp_test_execute_at_command("AT+CCID", response, 512, &response_len, 5000);
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to send AT+CCID command");
+ free(response);
+ return ret;
+ }
+
+ ret = ppp_parse_iccid_response(response, iccid_temp, sizeof(iccid_temp));
+ free(response);
+
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to parse ICCID response");
+ return ret;
+ }
+
+ // 更新runtime状态
+ cat1_api_runtime_set_cat1_iccid(iccid_temp);
+ PPP_DEBUG_INFO("Updated ICCID: %s", iccid_temp);
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 通过AT命令获取版本信息并更新runtime状态
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_update_version(void)
+{
+ char *response = (char *)malloc(512); // 动态分配内存
+ if (response == NULL) {
+ PPP_DEBUG_ERROR("Failed to allocate memory for AT response");
+ return ERRCODE_FAIL;
+ }
+
+ uint32_t response_len;
+ char version_temp[64] = {0};
+
+ // 使用现有的AT命令执行接口
+ errcode_t ret = ppp_test_execute_at_command("AT+GMR", response, 512, &response_len, 5000);
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to send AT+GMR command");
+ free(response);
+ return ret;
+ }
+
+ ret = ppp_parse_version_response(response, version_temp, sizeof(version_temp));
+ free(response);
+
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to parse version response");
+ return ret;
+ }
+
+ // 更新runtime状态
+ cat1_api_runtime_set_cat1_modemver(version_temp);
+ PPP_DEBUG_INFO("Updated modem version: %s", version_temp);
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 通过AT命令获取网络注册状态并更新runtime状态
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_update_network_status(void)
+{
+ char *response = (char *)malloc(512); // 动态分配内存
+ if (response == NULL) {
+ PPP_DEBUG_ERROR("Failed to allocate memory for AT response");
+ return ERRCODE_FAIL;
+ }
+
+ uint32_t response_len;
+ uint8_t network_status = 0;
+ errcode_t ret;
+
+ // 先尝试AT+CREG
+ ret = ppp_test_execute_at_command("AT+CREG?", response, 512, &response_len, 5000);
+ if (ret == ERRCODE_SUCC) {
+ ret = ppp_parse_network_status_response(response, &network_status);
+ if (ret == ERRCODE_SUCC) {
+ // 根据网络注册状态设置网络连接状态
+ uint8_t network_on = (network_status == 1 || network_status == 5) ? 1 : 0;
+ cat1_api_runtime_set_cat1_networkstat(network_on);
+ cat1_api_runtime_set_cat1_networktype(network_status);
+ PPP_DEBUG_INFO("Updated network status (CREG): %d, network_on: %d", network_status, network_on);
+ free(response);
+ return ERRCODE_SUCC;
+ }
+ }
+
+ // 如果CREG失败,尝试AT+CEREG
+ ret = ppp_test_execute_at_command("AT+CEREG?", response, 512, &response_len, 5000);
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to send AT+CEREG command");
+ free(response);
+ return ret;
+ }
+
+ ret = ppp_parse_network_status_response(response, &network_status);
+ free(response);
+
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to parse network status response");
+ return ret;
+ }
+
+ // 根据网络注册状态设置网络连接状态
+ uint8_t network_on = (network_status == 1 || network_status == 5) ? 1 : 0;
+ cat1_api_runtime_set_cat1_networkstat(network_on);
+ cat1_api_runtime_set_cat1_networktype(network_status);
+ PPP_DEBUG_INFO("Updated network status (CEREG): %d, network_on: %d", network_status, network_on);
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 获取SIM卡状态并更新runtime状态
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_update_sim_status(void)
+{
+ char *response = (char *)malloc(512); // 动态分配内存
+ if (response == NULL) {
+ PPP_DEBUG_ERROR("Failed to allocate memory for AT response");
+ return ERRCODE_FAIL;
+ }
+
+ uint32_t response_len;
+
+ // 通过AT+CCID命令检查SIM卡状态
+ errcode_t ret = ppp_test_execute_at_command("AT+CCID", response, 512, &response_len, 5000);
+ if (ret != ERRCODE_SUCC) {
+ // 如果CCID命令失败,说明SIM卡可能未插入或有问题
+ cat1_api_runtime_set_cat1_simstat(0); // 0表示SIM卡异常
+ PPP_DEBUG_ERROR("SIM card not detected or error");
+ free(response);
+ return ret;
+ }
+
+ // 检查响应中是否包含ERROR
+ if (strstr(response, "ERROR") != NULL) {
+ cat1_api_runtime_set_cat1_simstat(0); // 0表示SIM卡异常
+ PPP_DEBUG_ERROR("SIM card error");
+ free(response);
+ return ERRCODE_FAIL;
+ }
+
+ free(response);
+
+ // 如果CCID命令成功,说明SIM卡正常
+ cat1_api_runtime_set_cat1_simstat(1); // 1表示SIM卡正常
+ PPP_DEBUG_INFO("SIM card detected and normal");
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 更新所有runtime变量值
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_update_all_runtime_status(void)
+{
+ errcode_t ret = ERRCODE_SUCC;
+
+ PPP_DEBUG_INFO("Updating all runtime status...");
+
+ // 检查模块是否已开机
+ if (!cat1_api_runtime_get_cat1_powerstat()) {
+ PPP_DEBUG_ERROR("Cat1 not powered on, cannot update runtime status");
+ return ERRCODE_FAIL;
+ }
+
+ // 更新IMEI
+ if (ppp_api_update_imei() != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to update IMEI");
+ ret = ERRCODE_FAIL;
+ }
+
+ // 更新信号强度
+ if (ppp_api_update_signal() != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to update signal");
+ ret = ERRCODE_FAIL;
+ }
+
+ // 更新运营商信息
+ if (ppp_api_update_operator() != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to update operator");
+ ret = ERRCODE_FAIL;
+ }
+
+ // 更新ICCID
+ if (ppp_api_update_iccid() != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to update ICCID");
+ ret = ERRCODE_FAIL;
+ }
+
+ // 更新SIM卡状态
+ if (ppp_api_update_sim_status() != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to update SIM status");
+ ret = ERRCODE_FAIL;
+ }
+
+ // 更新网络状态
+ if (ppp_api_update_network_status() != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to update network status");
+ ret = ERRCODE_FAIL;
+ }
+
+ // 更新版本信息
+ if (ppp_api_update_version() != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to update version");
+ ret = ERRCODE_FAIL;
+ }
+
+ PPP_DEBUG_INFO("Runtime status update completed");
+ return ret;
+}
+
+/**
+ * @brief 设置默认网络接口
+ * @param netif_name 网络接口名称
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_set_default_netif(char* netif_name)
+{
+ if (netif_name == NULL) {
+ PPP_DEBUG_ERROR("Invalid netif name parameter");
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ PPP_DEBUG_INFO("Setting default network interface to: %s", netif_name);
+
+ // 这里可以根据实际的网络接口管理需求来实现
+ // 由于lwIP的具体实现可能因系统而异,这里提供一个通用的框架
+
+ // 示例实现:记录当前设置的默认网卡名称
+ static char current_default_netif[32] = {0};
+
+ if (strlen(netif_name) >= sizeof(current_default_netif)) {
+ PPP_DEBUG_ERROR("Network interface name too long: %s", netif_name);
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ // 保存网卡名称
+ strncpy_s(current_default_netif, sizeof(current_default_netif),
+ netif_name, sizeof(current_default_netif) - 1);
+ current_default_netif[sizeof(current_default_netif) - 1] = '\0';
+
+ PPP_DEBUG_INFO("Default network interface set to: %s", current_default_netif);
+
+ // 实际设置默认网络接口
+ if (strcmp(netif_name, "lo") == 0) {
+ // 设置回环接口为默认(这里简化处理)
+ PPP_DEBUG_INFO("Loopback interface set as default (no action needed)");
+ } else {
+ // 检查是否是PPP接口
+ char ppp_netif_name[16];
+ errcode_t name_ret = ppp_api_get_ppp_netif_name(ppp_netif_name, sizeof(ppp_netif_name));
+
+ if ((name_ret == ERRCODE_SUCC && strcmp(netif_name, ppp_netif_name) == 0) ||
+ strcmp(netif_name, "pp0") == 0) {
+ // 设置PPP接口为默认
+ struct netif *ppp_netif = ppp_lwip_get_netif();
+ if (ppp_netif != NULL) {
+#ifdef LWIP_PPP_SUPPORT
+ netif_set_default(ppp_netif);
+ PPP_DEBUG_INFO("PPP netif set as default in lwIP");
+#endif
+ } else {
+ PPP_DEBUG_WARN("PPP netif not available for setting as default");
+ }
+ }
+ }
+
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 获取当前默认网络接口名称
+ * @param netif_name 输出缓冲区
+ * @param buffer_size 缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_get_default_netif(char* netif_name, uint32_t buffer_size)
+{
+ if (netif_name == NULL || buffer_size == 0) {
+ PPP_DEBUG_ERROR("Invalid parameters");
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ static char current_default_netif[32] = {0};
+
+ if (strlen(current_default_netif) == 0) {
+ // 如果没有设置过,返回默认值
+ strncpy_s(netif_name, buffer_size, "none", buffer_size - 1);
+ } else {
+ strncpy_s(netif_name, buffer_size, current_default_netif, buffer_size - 1);
+ }
+
+ netif_name[buffer_size - 1] = '\0';
+
+ PPP_DEBUG_INFO("Current default network interface: %s", netif_name);
+ return ERRCODE_SUCC;
+}
+
+// 重复函数定义已删除 - 使用后面的新实现
+
+// 重复函数定义已删除 - 使用后面的新实现
+
+/**
+ * @brief 获取PPP网络接口的实际名称
+ * @param netif_name 输出缓冲区
+ * @param buffer_size 缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+static errcode_t ppp_api_get_ppp_netif_name(char* netif_name, uint32_t buffer_size)
+{
+ if (netif_name == NULL || buffer_size == 0) {
+ PPP_DEBUG_ERROR("Invalid parameters");
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ // 获取PPP网络接口指针
+ struct netif *ppp_netif = ppp_lwip_get_netif();
+ if (ppp_netif == NULL) {
+ PPP_DEBUG_ERROR("PPP netif not available");
+ return ERRCODE_FAIL;
+ }
+
+ // 构建网络接口名称
+ if (ppp_netif->name[0] != 0 && ppp_netif->name[1] != 0) {
+ // 如果有实际的名称,使用实际名称+编号
+ snprintf(netif_name, buffer_size, "%c%c%u",
+ ppp_netif->name[0], ppp_netif->name[1], ppp_netif->num);
+ } else {
+ // 如果没有名称,使用默认的pp0
+ snprintf(netif_name, buffer_size, "pp%u", ppp_netif->num);
+ }
+
+ PPP_DEBUG_INFO("PPP netif name: %s", netif_name);
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief PPP IPCP诊断函数
+ */
+errcode_t ppp_diagnose_ipcp_status(void)
+{
+ PPP_DEBUG_INFO("=== PPP IPCP Diagnosis ===");
+
+ if (g_ppp_state != PPP_STATE_CONNECTED) {
+ PPP_DEBUG_WARN("PPP not in connected state: %d", g_ppp_state);
+ return ERRCODE_FAIL;
+ }
+
+ // 获取lwIP网络信息
+ ppp_lwip_network_info_t lwip_info;
+ ppp_error_t ret = ppp_lwip_get_network_info(&lwip_info);
+ if (ret != PPP_ERR_OK) {
+ PPP_DEBUG_ERROR("Failed to get lwIP network info: %d", ret);
+ return ERRCODE_FAIL;
+ }
+
+ PPP_DEBUG_INFO("IPCP Status:");
+ PPP_DEBUG_INFO(" Connected: %s", lwip_info.connected ? "YES" : "NO");
+ PPP_DEBUG_INFO(" Local IP: %u.%u.%u.%u (0x%08x)",
+ (lwip_info.local_ip >> 0) & 0xFF,
+ (lwip_info.local_ip >> 8) & 0xFF,
+ (lwip_info.local_ip >> 16) & 0xFF,
+ (lwip_info.local_ip >> 24) & 0xFF,
+ lwip_info.local_ip);
+ PPP_DEBUG_INFO(" Remote IP: %u.%u.%u.%u (0x%08x)",
+ (lwip_info.remote_ip >> 0) & 0xFF,
+ (lwip_info.remote_ip >> 8) & 0xFF,
+ (lwip_info.remote_ip >> 16) & 0xFF,
+ (lwip_info.remote_ip >> 24) & 0xFF,
+ lwip_info.remote_ip);
+ PPP_DEBUG_INFO(" Primary DNS: %u.%u.%u.%u (0x%08x)",
+ (lwip_info.primary_dns >> 0) & 0xFF,
+ (lwip_info.primary_dns >> 8) & 0xFF,
+ (lwip_info.primary_dns >> 16) & 0xFF,
+ (lwip_info.primary_dns >> 24) & 0xFF,
+ lwip_info.primary_dns);
+ PPP_DEBUG_INFO(" Secondary DNS: %u.%u.%u.%u (0x%08x)",
+ (lwip_info.secondary_dns >> 0) & 0xFF,
+ (lwip_info.secondary_dns >> 8) & 0xFF,
+ (lwip_info.secondary_dns >> 16) & 0xFF,
+ (lwip_info.secondary_dns >> 24) & 0xFF,
+ lwip_info.secondary_dns);
+ PPP_DEBUG_INFO(" MTU: %u", lwip_info.mtu);
+
+ // 检查网络接口状态
+ struct netif *ppp_netif = ppp_lwip_get_netif();
+ if (ppp_netif) {
+ PPP_DEBUG_INFO("Netif Status:");
+ PPP_DEBUG_INFO(" Flags: 0x%02x", ppp_netif->flags);
+ PPP_DEBUG_INFO(" Name: %c%c%u", ppp_netif->name[0], ppp_netif->name[1], ppp_netif->num);
+ PPP_DEBUG_INFO(" MTU: %u", ppp_netif->mtu);
+ PPP_DEBUG_INFO(" Link Up: %s", netif_is_link_up(ppp_netif) ? "YES" : "NO");
+ PPP_DEBUG_INFO(" Interface Up: %s", netif_is_up(ppp_netif) ? "YES" : "NO");
+ } else {
+ PPP_DEBUG_ERROR("PPP netif is NULL!");
+ }
+
+ PPP_DEBUG_INFO("=== End PPP IPCP Diagnosis ===");
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 检查PPP连接状态并返回详细信息
+ * @param status_info 输出缓冲区,包含连接状态信息
+ * @param buffer_size 缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_check_connection(char* status_info, uint32_t buffer_size)
+{
+ if (status_info == NULL || buffer_size == 0) {
+ PPP_DEBUG_ERROR("Invalid parameters");
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ PPP_DEBUG_INFO("Checking PPP connection status");
+
+ // 调用现有的状态获取函数
+ errcode_t ret = ppp_test_get_status(status_info, buffer_size);
+ if (ret != ERRCODE_SUCC) {
+ PPP_DEBUG_ERROR("Failed to get PPP status");
+ return ret;
+ }
+
+ PPP_DEBUG_INFO("PPP connection status retrieved successfully");
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 强制激活PPP网络接口
+ * @param result_info 输出缓冲区,包含操作结果信息
+ * @param buffer_size 缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_force_netif_up(char* result_info, uint32_t buffer_size)
+{
+ if (result_info == NULL || buffer_size == 0) {
+ PPP_DEBUG_ERROR("Invalid parameters");
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ PPP_DEBUG_INFO("Forcing PPP network interface activation");
+
+ // 初始化输出缓冲区
+ memset(result_info, 0, buffer_size);
+
+ // 获取PPP网络接口
+ struct netif *ppp_netif = ppp_lwip_get_netif();
+ if (!ppp_netif) {
+ snprintf(result_info, buffer_size, "ERROR: PPP netif not available\n");
+ PPP_DEBUG_ERROR("PPP netif not available");
+ return ERRCODE_FAIL;
+ }
+
+ // 记录激活前的状态
+ uint32_t flags_before = ppp_netif->flags;
+ uint32_t ip_before = ip4_addr_get_u32(&ppp_netif->ip_addr);
+
+ // 强制激活网络接口
+#ifdef LWIP_PPP_SUPPORT
+ netif_set_up(ppp_netif);
+ netif_set_link_up(ppp_netif);
+ netif_set_default(ppp_netif);
+#endif
+
+ // 记录激活后的状态
+ uint32_t flags_after = ppp_netif->flags;
+ uint32_t ip_after = ip4_addr_get_u32(&ppp_netif->ip_addr);
+
+ // 生成结果信息
+ int ret_len = snprintf(result_info, buffer_size,
+ "=== PPP Network Interface Force Activation ===\n"
+ "Interface Name: %c%c%u\n"
+ "Flags Before: 0x%02x\n"
+ "Flags After: 0x%02x\n"
+ "IP Before: %u.%u.%u.%u\n"
+ "IP After: %u.%u.%u.%u\n"
+ "Status: %s\n",
+ ppp_netif->name[0], ppp_netif->name[1], ppp_netif->num,
+ flags_before, flags_after,
+ (ip_before >> 0) & 0xFF, (ip_before >> 8) & 0xFF,
+ (ip_before >> 16) & 0xFF, (ip_before >> 24) & 0xFF,
+ (ip_after >> 0) & 0xFF, (ip_after >> 8) & 0xFF,
+ (ip_after >> 16) & 0xFF, (ip_after >> 24) & 0xFF,
+ (flags_after != flags_before || ip_after != ip_before) ? "CHANGED" : "NO CHANGE");
+
+ if (ret_len > 0 && ret_len < (int)buffer_size) {
+ // 运行IPCP诊断
+ errcode_t diag_ret = ppp_diagnose_ipcp_status();
+ if (diag_ret != ERRCODE_SUCC) {
+ int remaining = buffer_size - ret_len;
+ if (remaining > 50) {
+ snprintf(result_info + ret_len, remaining, "\nWarning: IPCP diagnosis failed\n");
+ }
+ }
+
+ PPP_DEBUG_INFO("PPP netif force activation completed");
+ return ERRCODE_SUCC;
+ } else {
+ PPP_DEBUG_ERROR("Failed to generate result info");
+ return ERRCODE_FAIL;
+ }
+}
+
+/**
+ * @brief 设置默认网络接口(带详细状态输出)
+ * @param netif_name 网络接口名称
+ * @param result_info 输出缓冲区,包含操作结果和接口状态
+ * @param buffer_size 缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_set_default_netif_with_status(const char* netif_name, char* result_info, uint32_t buffer_size)
+{
+ if (netif_name == NULL || result_info == NULL || buffer_size == 0) {
+ PPP_DEBUG_ERROR("Invalid parameters");
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ PPP_DEBUG_INFO("Setting default network interface: %s", netif_name);
+
+ // 初始化输出缓冲区
+ memset(result_info, 0, buffer_size);
+
+ // 调用基础设置函数
+ errcode_t ret = ppp_api_set_default_netif((char*)netif_name);
+ if (ret != ERRCODE_SUCC) {
+ snprintf(result_info, buffer_size,
+ "ERROR: Failed to set default interface to '%s'\n", netif_name);
+ return ret;
+ }
+
+ // 生成成功信息
+ int info_len = snprintf(result_info, buffer_size,
+ "SUCCESS: Set '%s' as default interface\n\n", netif_name);
+
+ if (info_len > 0 && info_len < (int)buffer_size) {
+ // 获取接口详细状态
+ char status_info[1024];
+ ret = ppp_api_get_netif_status(netif_name, status_info, sizeof(status_info));
+ if (ret == ERRCODE_SUCC) {
+ int remaining = buffer_size - info_len;
+ if (remaining > 0) {
+ strncat(result_info, status_info, remaining - 1);
+ }
+ }
+ }
+
+ PPP_DEBUG_INFO("Default network interface set successfully");
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 获取当前默认网络接口(带详细状态输出)
+ * @param result_info 输出缓冲区,包含默认接口名称和状态
+ * @param buffer_size 缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_get_default_netif_with_status(char* result_info, uint32_t buffer_size)
+{
+ if (result_info == NULL || buffer_size == 0) {
+ PPP_DEBUG_ERROR("Invalid parameters");
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ PPP_DEBUG_INFO("Getting current default network interface");
+
+ // 初始化输出缓冲区
+ memset(result_info, 0, buffer_size);
+
+ // 获取默认接口名称
+ char netif_name[64];
+ errcode_t ret = ppp_api_get_default_netif(netif_name, sizeof(netif_name));
+ if (ret != ERRCODE_SUCC) {
+ snprintf(result_info, buffer_size, "ERROR: Failed to get default interface\n");
+ return ret;
+ }
+
+ // 生成基础信息
+ int info_len = snprintf(result_info, buffer_size,
+ "Current default interface: %s\n\n", netif_name);
+
+ if (info_len > 0 && info_len < (int)buffer_size) {
+ if (strcmp(netif_name, "none") != 0) {
+ // 获取接口详细状态
+ char status_info[1024];
+ ret = ppp_api_get_netif_status(netif_name, status_info, sizeof(status_info));
+ if (ret == ERRCODE_SUCC) {
+ int remaining = buffer_size - info_len;
+ if (remaining > 0) {
+ strncat(result_info, status_info, remaining - 1);
+ }
+ }
+ } else {
+ int remaining = buffer_size - info_len;
+ if (remaining > 30) {
+ strncat(result_info, "No default interface is currently set\n", remaining - 1);
+ }
+ }
+ }
+
+ PPP_DEBUG_INFO("Default network interface info retrieved successfully");
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 列举所有可用的网络接口
+ * @param interfaces_info 输出缓冲区,包含所有接口信息
+ * @param buffer_size 缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_list_network_interfaces(char* interfaces_info, uint32_t buffer_size)
+{
+ if (interfaces_info == NULL || buffer_size == 0) {
+ PPP_DEBUG_ERROR("Invalid parameters");
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ PPP_DEBUG_INFO("Listing network interfaces");
+
+ // 初始化输出缓冲区
+ memset(interfaces_info, 0, buffer_size);
+
+ int ret = snprintf(interfaces_info, buffer_size,
+ "=== Network Interface List ===\n"
+ "[0] lo (Loopback)\n"
+ " IP: 127.0.0.1\n"
+ " Status: UP\n"
+ " Type: Loopback\n\n");
+
+ if (ret < 0 || ret >= (int)buffer_size) {
+ PPP_DEBUG_ERROR("Buffer too small for interface list");
+ return ERRCODE_FAIL;
+ }
+
+ // 检查PPP接口状态
+ ppp_state_t ppp_state = ppp_get_state();
+ if (ppp_state == PPP_STATE_CONNECTED) {
+ // 获取PPP连接信息
+ ppp_connection_info_t network_info;
+ errcode_t info_ret = ppp_get_connection_info(&network_info);
+
+ // 获取实际的PPP网络接口名称
+ char ppp_netif_name[16];
+ errcode_t name_ret = ppp_api_get_ppp_netif_name(ppp_netif_name, sizeof(ppp_netif_name));
+ if (name_ret != ERRCODE_SUCC) {
+ strncpy_s(ppp_netif_name, sizeof(ppp_netif_name), "pp0", sizeof(ppp_netif_name) - 1);
+ }
+
+ int remaining = buffer_size - ret;
+ if (remaining > 0 && info_ret == ERRCODE_SUCC) {
+ ret += snprintf(interfaces_info + ret, remaining,
+ "[1] %s (PPP Interface)\n"
+ " IP: %u.%u.%u.%u\n"
+ " Remote: %u.%u.%u.%u\n"
+ " DNS1: %u.%u.%u.%u\n"
+ " DNS2: %u.%u.%u.%u\n"
+ " MTU: %u\n"
+ " Status: UP CONNECTED\n"
+ " Type: PPP\n\n",
+ ppp_netif_name,
+ (network_info.local_ip >> 0) & 0xFF,
+ (network_info.local_ip >> 8) & 0xFF,
+ (network_info.local_ip >> 16) & 0xFF,
+ (network_info.local_ip >> 24) & 0xFF,
+ (network_info.remote_ip >> 0) & 0xFF,
+ (network_info.remote_ip >> 8) & 0xFF,
+ (network_info.remote_ip >> 16) & 0xFF,
+ (network_info.remote_ip >> 24) & 0xFF,
+ (network_info.primary_dns >> 0) & 0xFF,
+ (network_info.primary_dns >> 8) & 0xFF,
+ (network_info.primary_dns >> 16) & 0xFF,
+ (network_info.primary_dns >> 24) & 0xFF,
+ (network_info.secondary_dns >> 0) & 0xFF,
+ (network_info.secondary_dns >> 8) & 0xFF,
+ (network_info.secondary_dns >> 16) & 0xFF,
+ (network_info.secondary_dns >> 24) & 0xFF,
+ network_info.mtu);
+ }
+ } else {
+ // 获取实际的PPP网络接口名称
+ char ppp_netif_name[16];
+ errcode_t name_ret = ppp_api_get_ppp_netif_name(ppp_netif_name, sizeof(ppp_netif_name));
+ if (name_ret != ERRCODE_SUCC) {
+ strncpy_s(ppp_netif_name, sizeof(ppp_netif_name), "pp0", sizeof(ppp_netif_name) - 1);
+ }
+
+ int remaining = buffer_size - ret;
+ if (remaining > 0) {
+ ret += snprintf(interfaces_info + ret, remaining,
+ "[1] %s (PPP Interface)\n"
+ " Status: DOWN\n"
+ " Type: PPP\n\n",
+ ppp_netif_name);
+ }
+ }
+
+ // 添加总结信息
+ int remaining = buffer_size - ret;
+ if (remaining > 0) {
+ ret += snprintf(interfaces_info + ret, remaining,
+ "Total interfaces: %d\n"
+ "Use ppp_api_set_default_netif() to set default interface\n",
+ (ppp_state == PPP_STATE_CONNECTED) ? 2 : 2);
+ }
+
+ PPP_DEBUG_INFO("Network interfaces listed successfully");
+ return (ret > 0 && ret < (int)buffer_size) ? ERRCODE_SUCC : ERRCODE_FAIL;
+}
+
+/**
+ * @brief 获取网络接口详细状态信息
+ * @param netif_name 网络接口名称
+ * @param status_info 输出缓冲区,包含状态信息
+ * @param buffer_size 缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_get_netif_status(const char* netif_name, char* status_info, uint32_t buffer_size)
+{
+ if (netif_name == NULL || status_info == NULL || buffer_size == 0) {
+ PPP_DEBUG_ERROR("Invalid parameters");
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ PPP_DEBUG_INFO("Getting status for network interface: %s", netif_name);
+
+ // 初始化输出缓冲区
+ memset(status_info, 0, buffer_size);
+
+ if (strcmp(netif_name, "lo") == 0) {
+ // 回环接口状态
+ snprintf(status_info, buffer_size,
+ "=== Interface Status: %s ===\n"
+ "Name: lo\n"
+ "Type: Loopback\n"
+ "IP: 127.0.0.1\n"
+ "Netmask: 255.0.0.0\n"
+ "Status: UP\n"
+ "MTU: 65536\n", netif_name);
+ } else {
+ // 检查是否是PPP接口
+ // 获取实际的PPP网络接口名称
+ char ppp_netif_name[16];
+ errcode_t name_ret = ppp_api_get_ppp_netif_name(ppp_netif_name, sizeof(ppp_netif_name));
+ bool is_ppp_interface = false;
+
+ if (name_ret == ERRCODE_SUCC && strcmp(netif_name, ppp_netif_name) == 0) {
+ is_ppp_interface = true;
+ } else if (strcmp(netif_name, "pp0") == 0) {
+ // 兼容性:如果用户查询pp0,也认为是PPP接口
+ is_ppp_interface = true;
+ strncpy_s(ppp_netif_name, sizeof(ppp_netif_name), "pp0", sizeof(ppp_netif_name) - 1);
+ }
+
+ if (is_ppp_interface) {
+ // PPP接口状态
+ ppp_state_t ppp_state = ppp_get_state();
+
+ if (ppp_state == PPP_STATE_CONNECTED) {
+ ppp_connection_info_t network_info;
+ errcode_t ret = ppp_get_connection_info(&network_info);
+
+ if (ret == ERRCODE_SUCC) {
+ snprintf(status_info, buffer_size,
+ "=== Interface Status: %s ===\n"
+ "Name: %s\n"
+ "Type: PPP\n"
+ "IP: %u.%u.%u.%u\n"
+ "Remote: %u.%u.%u.%u\n"
+ "DNS1: %u.%u.%u.%u\n"
+ "DNS2: %u.%u.%u.%u\n"
+ "MTU: %u\n"
+ "Status: UP CONNECTED\n",
+ netif_name, ppp_netif_name,
+ (network_info.local_ip >> 0) & 0xFF,
+ (network_info.local_ip >> 8) & 0xFF,
+ (network_info.local_ip >> 16) & 0xFF,
+ (network_info.local_ip >> 24) & 0xFF,
+ (network_info.remote_ip >> 0) & 0xFF,
+ (network_info.remote_ip >> 8) & 0xFF,
+ (network_info.remote_ip >> 16) & 0xFF,
+ (network_info.remote_ip >> 24) & 0xFF,
+ (network_info.primary_dns >> 0) & 0xFF,
+ (network_info.primary_dns >> 8) & 0xFF,
+ (network_info.primary_dns >> 16) & 0xFF,
+ (network_info.primary_dns >> 24) & 0xFF,
+ (network_info.secondary_dns >> 0) & 0xFF,
+ (network_info.secondary_dns >> 8) & 0xFF,
+ (network_info.secondary_dns >> 16) & 0xFF,
+ (network_info.secondary_dns >> 24) & 0xFF,
+ network_info.mtu);
+ } else {
+ snprintf(status_info, buffer_size,
+ "=== Interface Status: %s ===\n"
+ "Name: %s\n"
+ "Type: PPP\n"
+ "Status: UP (No network info available)\n",
+ netif_name, ppp_netif_name);
+ }
+ } else {
+ snprintf(status_info, buffer_size,
+ "=== Interface Status: %s ===\n"
+ "Name: %s\n"
+ "Type: PPP\n"
+ "Status: DOWN\n",
+ netif_name, ppp_netif_name);
+ }
+ } else {
+ // 未知接口
+ snprintf(status_info, buffer_size,
+ "=== Interface Status: %s ===\n"
+ "Error: Interface not found\n"
+ "Available interfaces: lo, %s\n",
+ netif_name,
+ (name_ret == ERRCODE_SUCC) ? ppp_netif_name : "pp0");
+ }
+ }
+
+ PPP_DEBUG_INFO("Interface status retrieved successfully");
+ return ERRCODE_SUCC;
+}
+
+/**
+ * @brief 强制重新协商IPCP以获取IP地址
+ * @param result_info 输出缓冲区,包含协商结果信息
+ * @param buffer_size 缓冲区大小
+ * @return ERRCODE_SUCC-成功,其他-失败
+ */
+errcode_t ppp_api_force_ipcp_renegotiation(char* result_info, uint32_t buffer_size)
+{
+ if (result_info == NULL || buffer_size == 0) {
+ PPP_DEBUG_ERROR("Invalid parameters");
+ return ERRCODE_INVALID_PARAM;
+ }
+
+ PPP_DEBUG_INFO("Forcing IPCP renegotiation...");
+
+ // 初始化输出缓冲区
+ memset(result_info, 0, buffer_size);
+
+ // 获取PPP网络接口
+ struct netif *ppp_netif = ppp_lwip_get_netif();
+ if (!ppp_netif) {
+ snprintf(result_info, buffer_size, "ERROR: PPP netif not available\n");
+ PPP_DEBUG_ERROR("PPP netif not available");
+ return ERRCODE_FAIL;
+ }
+
+ // 检查PPP连接状态
+ ppp_state_t ppp_state = ppp_get_state();
+ if (ppp_state != PPP_STATE_CONNECTED) {
+ snprintf(result_info, buffer_size, "ERROR: PPP not connected (state: %d)\n", ppp_state);
+ PPP_DEBUG_ERROR("PPP not connected");
+ return ERRCODE_FAIL;
+ }
+
+ int info_len = snprintf(result_info, buffer_size,
+ "=== IPCP Renegotiation ===\n"
+ "PPP State: CONNECTED\n"
+ "IP Before: %u.%u.%u.%u\n",
+ (ppp_netif->ip_addr.addr >> 0) & 0xFF,
+ (ppp_netif->ip_addr.addr >> 8) & 0xFF,
+ (ppp_netif->ip_addr.addr >> 16) & 0xFF,
+ (ppp_netif->ip_addr.addr >> 24) & 0xFF);
+
+ if (info_len < 0 || info_len >= (int)buffer_size) {
+ PPP_DEBUG_ERROR("Buffer too small for result info");
+ return ERRCODE_FAIL;
+ }
+
+ // 强制重新激活网络接口
+ PPP_DEBUG_INFO("Forcing netif activation...");
+ netif_set_up(ppp_netif);
+ netif_set_link_up(ppp_netif);
+
+ // 等待IPCP协商完成
+ bool ip_acquired = false;
+ for (int retry = 0; retry < 20; retry++) {
+ // 等待250ms
+ osal_msleep(250);
+
+ // 检查IP地址是否已分配
+ if (ppp_netif->ip_addr.addr != 0) {
+ ip_acquired = true;
+ PPP_DEBUG_INFO("IP address acquired after %d retries", retry + 1);
+ break;
+ }
+
+ PPP_DEBUG_INFO("IPCP renegotiation retry %d/20", retry + 1);
+
+ // 每5次重试强制重新激活
+ if ((retry + 1) % 5 == 0) {
+ PPP_DEBUG_INFO("Forcing netif reactivation (retry %d)", retry + 1);
+ netif_set_up(ppp_netif);
+ netif_set_link_up(ppp_netif);
+ }
+ }
+
+ // 生成结果信息
+ int remaining = buffer_size - info_len;
+ if (remaining > 0) {
+ if (ip_acquired) {
+ info_len += snprintf(result_info + info_len, remaining,
+ "IP After: %u.%u.%u.%u\n"
+ "Gateway: %u.%u.%u.%u\n"
+ "Netmask: %u.%u.%u.%u\n"
+ "Flags: 0x%02x\n"
+ "Status: SUCCESS - IP address acquired\n",
+ (ppp_netif->ip_addr.addr >> 0) & 0xFF,
+ (ppp_netif->ip_addr.addr >> 8) & 0xFF,
+ (ppp_netif->ip_addr.addr >> 16) & 0xFF,
+ (ppp_netif->ip_addr.addr >> 24) & 0xFF,
+ (ppp_netif->gw.addr >> 0) & 0xFF,
+ (ppp_netif->gw.addr >> 8) & 0xFF,
+ (ppp_netif->gw.addr >> 16) & 0xFF,
+ (ppp_netif->gw.addr >> 24) & 0xFF,
+ (ppp_netif->netmask.addr >> 0) & 0xFF,
+ (ppp_netif->netmask.addr >> 8) & 0xFF,
+ (ppp_netif->netmask.addr >> 16) & 0xFF,
+ (ppp_netif->netmask.addr >> 24) & 0xFF,
+ ppp_netif->flags);
+
+ // 设置为默认网络接口
+ netif_set_default(ppp_netif);
+
+ remaining = buffer_size - info_len;
+ if (remaining > 50) {
+ snprintf(result_info + info_len, remaining, "\nSet as default network interface\n");
+ }
+ } else {
+ snprintf(result_info + info_len, remaining,
+ "IP After: 0.0.0.0 (FAILED)\n"
+ "Status: FAILED - IPCP negotiation timeout\n"
+ "Suggestion: Check network provider settings\n");
+ }
+ }
+
+ PPP_DEBUG_INFO("IPCP renegotiation %s", ip_acquired ? "succeeded" : "failed");
+ return ip_acquired ? ERRCODE_SUCC : ERRCODE_FAIL;
+}
\ No newline at end of file