GSM 发送短消息的基本知识

本文简要介绍一下利用GSM模块发送短消息的基本知识,由于个人所学有限及现在GSM模块发展的日新月异,如果有说错的地方还请指点。

关于PUD编码我这里只做了一个简单三种常用编码格式的介绍,如果对PUD有兴趣的,可以参考我博客里的另一篇文章GSM无线模块短消息PDU 格式说明

 

一、短消息编码

短消息内容的最大长度为140个字节。它的编码主要有7位编码, 8位编码,UC2编码三种编码方式。

       7位编码:

每个字节只使用低七位,每八个字节为一组,去掉最高位,重新编码为七个字节,因此,7位编码实际上是可以表示到160个字节。但7位编码只能发送0x00 – 0x 7F 范围内的字符,它一般在发送英文短信时使用。

它的编码原理是:

8个字节为一组,分别用A,B,C,D,E,F,G代表八个字节,An代表每个字节的位,则8个字节重新编码成如下七个字节(每行为编码后的一个字节)

B1

A7

A6

A5

A4

A3

A2

A1

C2

C1

B7

B6

B5

B4

B3

B2

D3

D2

D1

C7

C6

C5

C4

C3

E4

E3

E2

E1

D7

D6

D5

D4

F5

F4

F3

F2

F1

E7

E6

E5

G6

G5

G4

G3

G2

G1

F7

F6

H7

H6

H5

H4

H3

H2

H1

G7

 

       8位编码:

              8位编码即所见即所得的编码方式,也就是无需编码,只需要将二进字串直接发送出去即可。

              8位编码方式适用于制定各种基于短消息的通讯协议。

       UC2编码:

              常用于中文或中英文混合内容发送,只能发送70个字符(因为一个UC2占两个字节)

              由于国内一般的编辑器等多以GB编码居多,因此,如果要发送中文,需要先将中文转换为UC2编码再进行发送。

 

       在手机上,通常的做法是如果全部为英文及半角字符,则以7位编码发送,如果内含有中文,则全部编码为UC2发送.

 

       目前,也出现了一些其他的编码方式,如混合编码方式,这些编码方式根据汉字的内码每个字节都是在0XA1以上的取值范转的特点来制定的,有举趣的可以参考其他资料。

 

二、短消息发送方式

       文本模式:

其实是针对七位编码做的一个封装,它只能用于发送ANSI范围的字符,发送方式经较简单。

(现在好像也出现了可以发送中文的文本模式)

       PDU模式:

所有短消息数据发送前都必须组织成PDU的格式,在PDU模式下发送短信比较复杂,需要自行组织PDU内容,但发送方式灵活,可以发送各种数据,也可以自行设定各个PDU字段的内容。

 

三、常用的短消息AT指令

       AT+CMGF=0         //设定短消息的模式为PDU模式

       AT+CMGF=1         //设短消息的模式为文本模式

 

       AT+CMGS            //发送短消息

       AT+CMGL            //读取短消息列表

AT+CMGR            //读取单个短信消息

AT+CMGD            //删除短消息

 

关于AT指令的具体格式,请参考相关模块的AT手册,我下一篇文章《AT指令发送短消息》中也会详细介绍。

 
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值