本人通过以下步骤直接使用M23内置的TCP/IP协议栈来实现对目标服务的访问:
AT+CGDCONT=1,"IP","cmnet"<CR>
OK
AT%CGPCO=1,"PAP,,",1<CR>
OK
AT$NOSLEEP=1<CR>
OK
AT$DESTINFO="xxx.xxx.xxx.xxx",1,xx,0<CR>
$DESTINFO: "xxx.xxx.xxx.xxx", 1, xx
OK
ATD*97#<CR>
Wait Socket Open
OK
<== 输入 +++ 返回到 指令模式
OK
CONNECT
OK
ATH<CR>
OK
NO CARRIER
以上步骤完成一次完整的GPRS连接以及TCP呼叫的过程,
其中 AT$DESTINFO="xxx.xxx.xxx.xxx",1,xx,0 中的
xxx.xxx.xxx.xxx 表示具体的公网IP,xx 表示应用的
端口,但是当再次执行以上步骤时M23就复位了,复位后
再次执行以上步骤可以成功,但下一次又复位了,周而
复始。
但是当把 AT+CGDCONT=1,"IP","cmnet"<CR> 中的 cid
参数改为2后,即命令为AT+CGDCONT=2,"IP","cmnet"<CR>
时(以下步骤照旧),第一次可以GPRS连接成功,第二次
也还是失败,但是如果此时第二次把是把cid参数改为1后,
则第二次也可以成功,但是以后无论怎样,只要再次执行
命令 ATD*97#<CR> 后,M23复位,查看M23的AT指令文档后
发现M23支持的cid只有1和2,执行以下命令查看:
AT+CGDCONT=?<CR>
+CGDCONT:(1-2),"IP",,,(0,1),(0,1)
OK
现在的问题是再不重启模块的情况下如何多次连接GPRS并断开?
希望使用过M23的朋友可以发表一下自己的看法,非常感谢!
我要赚赏金打赏帖 |
|
|---|---|
| 【FreeRtos】FreeRtos + MPU模块的配置使用被打赏¥32元 | |
| 【分享开发笔记,赚取电动螺丝刀】墨水屏文本显示器被打赏¥25元 | |
| 【STEVAL-STWINKT1B】:结合STMcubeMX读取磁力计iis2mdc被打赏¥19元 | |
| 【STEVAL-STWINKT1B】:结合STMcubeMX读取LPS22HH气压、温度被打赏¥19元 | |
| 【STEVAL-STWINKT1B】:结合STMcubeMX读取STTS751温度被打赏¥17元 | |
| 【STEVAL-STWINKT1B】:结合STMcubeMX软件读取HTS221温湿度被打赏¥22元 | |
| M5PAPERESP32EINKDEVKIT评测|使用MicroPython开发M5Paper被打赏¥15元 | |
| OK1126B-S开发板下以导航按键控制云台/机械臂姿态调整被打赏¥29元 | |
| 【树莓派5】便携热成像仪被打赏¥36元 | |
| 【树莓派5】环境监测仪被打赏¥35元 | |
我要赚赏金
