4G短信猫调试
4G短信猫,又称4G LTE MODEM,是一种基于LTE-TDD/LTE-FDD/HSPA+/TD-SCDMA/EVDO和GSM/GPRS/EDGE等频段使用移动通讯系统的调制解调器。它是GSM MODEM(2G)的进阶版,相较于GSM MODEM来说,上网速度/数据传输/短信收发都变得更快了,并且容错性和稳定性更高,死机概率非常低。
最近几年,由于短信平台的出现,已经很少使用短信猫这样的产品了,但最近由于产品需要在局域网内发送消息,所以需要在通过短信猫设备来进行短信的发送。现将短信猫调试过程进行记录。
在 4G 时代,短信猫已经与 2G 时代有一些差别了,在发送短信方面,具体表现为:可以在 TEXT 模式下发送中文短信;PDU 编码格式与 2G 模块有一些差别。
1.常用 AT 指令
|
指令 |
功能 |
|
at |
空指令,返回 OK |
|
at&f |
恢复 modem 出厂参数 |
|
at+csq |
查询信号强度 |
|
at+cimi |
查询 SIM 卡 ID |
|
at+creg? |
查询网络注册 |
|
at+cgreg? |
GPRS 网络注册 |
|
at+ipr? |
查询设备波特率 |
|
at+ipr=19200;&w |
设置设备波特率,可以是 115200|57600|38400|19200|9600|4800|2400|1200 等波特率 |
|
atd<手机号码>; |
拨打语音电话 |
|
atd<手机号码> |
呼叫数据业务 |
|
ata |
应答呼叫 |
|
at+chup |
挂断 |
|
at+cimi |
通过前5位数字判断运营商 中国移动:46000、46002、46007 中国联通:46001、46006、46009 中国电信:46003、46005、46011 中国铁通:46020 |
|
at+cfun=1,1 |
重新启动 |
2.拨打电话
// 拨打电话
ATD+8615148078817;
ATD15148078817;
3.TEXT模式发送英文短信
// 短信内容:Hello World.
AT
OK
AT+CMGF=1
OK
AT+CMGS="15148078817"
> Hello World.<CTRL+Z>
> +CMGS: 4
OK
短信内容输入后要以 CTRL+Z 结尾。
4.TEXT模式发送中文短信
// 短信内容:中文
// 短信内容的UNICODE编码:4E2D6587
// 手机号码:15148078817
AT
OK
AT+CMGF=1
OK
AT+CSCS="UCS2"
OK
AT+CSMP=17,167,0,8
OK
AT+CMGS="00310035003100340038003000370038003800310037"
> 4E2D6587<CTRL+Z>
> +CMGS: 5
OK
短信内容输入后要以 CTRL+Z 结尾。
// 短信内容:你好
// 短信内容的UNICODE编码:4F60597D
// 手机号码:15148078817
AT
OK
AT+CMGF=1
OK
AT+CSCS="UCS2"
OK
AT+CSMP=17,167,0,8
OK
AT+CMGS="00310035003100340038003000370038003800310037"
> 4F60597D<CTRL+Z>
> +CMGS: 6
OK
短信内容输入后要以 CTRL+Z 结尾。
TEXT模式发送中文短信时,指定手机号码时需要以16进制表示手机号码的每一位。
5.PDU模式发送短信
// 短信内容:测试短信
// 手机号码:15148078818
// PDU编码:0011000b815141088718F80008a7086D4B8BD577ED4FE1
// PDU编码长度:22
AT+CSCS="UCS2"
OK
AT+CMGF=0
OK
AT+CMGS=22
>0011000b815141088718F80008a7086D4B8BD577ED4FE1<CTRL+Z>
> +CMGS: 7
OK
6.调试总结
- 短信猫发送英文短信比较简单,一般都可以调试成功
- 在TEXT模式下发送中文短信有的短信猫不支持
- 发送中文短信时有时输入了 UNICODE 码或者 PDU 码但发送不成功,此时不要气馁,要认真检查 UNICODE 码或者PDU 码的正确性,对于 PDU 码,还要检查长度值是否正确,最好的方式是自己写代码来发送,因为串口调试工具可能会有问题。
关于 UNICODE 编码和 PDU 编码的生成,我会在下一篇文章中进行专门的介绍。