DTU系列支持三种短信模式(与F2003相同,详细协议描述及说明可参考F2003使用手册)
1 SMSCLI短信模式
短信发送正常
短信接收正常
2 TRNS模式:
2.1 text格式
2.2 PDU编码格式
若短信需要发送中文,需要先将发送的对端手机号及内容转为PDU格式编码,再进行发送测试,转码地址:http://www.sendsms.cn/pdu/
3 SMSSER 短信服务端模式
IP MODEM 在此模式下称为短信服务端模式,当 IP MODEM 接收到短信的时候, 它会自动读取短信,并把短信内容发送到串口。如果需要通过 IP MODEM 给其他设备发送短信,在发送短信的时候,发给 IP MODEM 串口的短信需要遵循如下的数据格式.
head |
phone_len |
phone |
data_len_high |
data_len_low |
data |
tail |
1 byte |
1 byte |
11 bytes |
1 byte |
1 byte |
1 byte |
|
0x02 |
11(0x0b) |
13666041237 |
0x03 |
head:数据帧的起始位,固定为 0x02 。
phone_len:接收本条短信的终端的电话号码长度。
phone: 接收本条短信的终端的电话号码。
data_len_high:短信内容长度的高字节位。
data_len_low:短信内容长度的低字节位。
短信内容的长度为 data_len_high*256+data_len_low。只有当短信内容长度大于255 字节时 data_len_high 才会是非零值,否则 data_len_high 的值为 0。
data:发送短消息的内容。 tail:数据帧的结尾,固定为 0x03。
例子:
给 13912345678 发送 “hello”,按照以上格式发送给 IP MODEM 串口的数据应该如下(十六进制描述):
0x02 0x0b 0x31 0x33 0x39 0x31 0x32 0x33 0x34 0x35 0x36 0x37 0x38 0x00
0x05 0x68 0x65 0x6c 0x6c 0x6f 0x03
数据解析:
0x02:数据帧头部。
0x0b:接收短信的终端的号码长度为 11 字节。
0x31…0x38:接收短信的终端的号码(13912345678)。
0x00 0x05: 短信内容长度 5 字节。
0x68 0x65 0x6c 0x6c 0x6f:短信内容 “hello”。
0x03:数据帧尾部。
发送的报文格式是特定的,发送内容由hex格式决定,
Hello为本次测试所发送内容