GSM串口通信:短消息(PDU模式)收发详解

需积分: 0 0 下载量 120 浏览量 更新于2024-09-01 收藏 110KB PDF 举报
"通过串口收发短消息(上),主要介绍了如何利用串口连接GSM手机进行短消息的发送和接收,以及相关的技术规范,包括GSM03.38、GSM03.40和GSM07.05。本文主要关注PDUMode,这是所有手机都支持的模式,适用于任何字符集。" 在GSM网络中,短消息服务(SMS)是一种广泛使用的通信方式,尤其是在基于GSM的GPS系统中。为了通过串口连接GSM手机收发短消息,开发者需要理解SMS的相关规范和技术细节。其中,GSM03.38、GSM03.40和GSM07.05是重要的标准文档,它们分别涉及SMS的技术实现、编码方式和DTE-DCE接口(AT命令集)。 发送和接收SMS信息有三种模式:BlockMode、TextMode和PDUMode。BlockMode已经过时,而TextMode虽然简单,但由于国内手机不支持中文,所以不适合用于中文短信的发送。因此,PDUMode成为最常用的方式,它支持任意字符集,并且是手机的默认编码方式。 PDUMode下,短信信息以PDU(Protocol Data Unit)的形式传输,表现为一串由ASCII码表示的十六进制或BCD码十进制数。PDU串不仅包含消息内容,还包括SMSC(短消息服务中心)号码、目标号码、编码方式等多种信息。例如,发送一条短信时,PDU串的各个部分会有特定的含义,如08表示SMSC地址信息的长度,91表示SMSC地址格式,683108200505F0是SMSC的实际号码,11表示基本参数,00表示消息基准值,91表示目标地址格式,68则是目标号码的前两位。 在实际编程实现中,需要解析和构造这样的PDU串。发送短信时,需要将短信内容转换为PDU格式,而接收短信时,需要从接收到的PDU串中提取出原始信息。这个过程涉及到对PDU编码规则的理解和处理,包括字符集转换、地址解析以及消息内容的解码。 为了实现这一功能,通常会使用到AT命令集,这是GSM07.05中定义的一系列控制命令,用于与GSM设备进行交互。通过AT命令,开发者可以控制手机进行短信的发送和接收,例如设置SMS服务中心号码、读取未读短信、发送新短信等。 在基于GSM短消息的GPS系统开发中,数据通信的关键在于能够可靠地发送和接收PDU格式的短信。系统需要能够解析接收到的GPS数据,将其转换为PDU,然后通过串口发送给GSM手机。同时,系统还需要监听串口,当接收到短信时,将PDU解码并处理其中的数据。这个过程需要精确的编程和对GSM通信协议的深入理解。 通过串口连接GSM手机收发短消息涉及多个技术层面,包括理解GSM规范、操作AT命令集以及处理PDU编码。在开发过程中,开发者需要熟悉这些概念,并能够实现相应的程序逻辑,以确保数据通信的准确性和可靠性。