1、 1 基于单片机的短信收发系统设计 前言 SMS(Short Message Service)短信息服务是 GSM(Global System for Mobile Communication) 系统中提供的一种 GSM 终端 (手机) 之间, 通过服务中心(Service Center) 进行文本信息收发的应用服务,其中服务中心完成信息的存储和转发功能。短信息服务 作为 GSM 网络的一种基本业务,已得到越来越多的系统运营商和系统开发商的重视,基 于这种业务的各种应用也蓬勃发展起来。以 GSM 网络作为数据无线传输网络,可以开发 出多种前景极其乐观的各类应用,如无线数据的双向传送、无线远程检
2、测和控制等。典 型的应用有:变电站、电表、水塔、水库或环保监测点等监测数据的无线传输和无线自 动警报;远程无线控制高压线路断路器、加热系统、防洪拦阻系统或其它机电系统的启 动和关闭;车队交通管理和控制指挥系统;控制和监测香烟、食品和饮料自动售货机的 运行状态和存货水平;远程加点控制等等。鉴于此,本文对基于单片机的短消息收发系 统进行了设计研究。 1 系统模型 中国联通数字移动电话(GSM)网是向社会公众提供通信服务的公用通信网,与中 国电信网同为国家通信网的有机组成部分。两网互联互通,自动接续,共享国家通信资 源。 目前, 中国联通数字移动电话业务由 GSM 网 130、 131 业务和 CD
3、MA 网 133 业务组成。 基于 GSM 的短信信息服务,是一种在移动网络上传送简短信息的无线应用,是一种信息 在移动网络上存储和转寄的过程。本软件的设计基于 GSM 网络的温度数据采集与无线传 输系统正是借助该网络平台,利用短信息业务实现数据的自动双向传递。系统模型图如 图 1-1 所示。 本系统由数据采集部分、数据接收和发送部分、终端处理部分三个模块组成。数据 采集模块将采集到的温度数据存入存储器中。数据收发模块采用双单片机共用 EERPOM 的方式,单片机 2 控制数据从存储器转存入 EEPROM 中;单片机 1 负责将数据从 EEPROM 中读出, 并经 GSM 模块 2 借助 GS
4、M 网络将数据发送出去。 单片机 1 不仅控制数据的发送, 也控制数据的接收。在这里,EEPROM 是温度数据临时存储和上传的中转站。终端处理模 块负责将接收到的数据交给计算机处理, 并将处理后的结果存放到数据库中, 以供查询。 当终端处理模块需要向 GSM 模块 2 发送控制命令时,GSM 模块 2 接收过程正好与上述过 程相反,从而实现数据的自动双向传递。 2 图 1-1 系统模型 2 工作原理及其软件设计 2.1 串口控制 SMS 的工作原理 单片机与 GSM 模块一般采用串行异步通信接口, 通信速度可设定, 通常为 19200bps。 采用这种 RSM232 电缆方式进行连接时,数据传
5、输的可靠性较好。RS232 接口方式连接, 通过串行接口集成电路和电平转换电路与 GSM 模块连接,电路比较简单,所涉及的芯片 包括单片机 89C51 和电平转换芯片 MAX232,是非常常见的接口电路。 GSM 的短信息业务 SMS 利用信令信道传输,这是 GSM 通信网所特有的。它不用拨号 建立连接,把要发的信息加上目的数据发送到短信息服务中心,经短信服务中心完成存 储后再发送给最终的信宿。所以当目的 GSM 终端没开机时信息不会丢失。每个短信的信 息量限制为 160 字节。及以的 AT 指令如表 2.1-1 所列。 表 2.1-1 AT 指令 AT 指令 功 能 描 述 AT+OFF 关
6、机并重新启动 AT+CSDH在 TEXT 模式下在返回值中不显示详细的 3 =0 头信息 ATE0 关闭回显 AT+CMGF =1 选择短信格式为 TEXT 模式 AT+CMGS 发送短信息 AT+CMGR 读取短信息 AT+CMGD =0 删除全部短信息 2.2 软件实现 2.2.1 上位机模块、下位机模块 2.2.1.1 应答和重发 上位机模块和下位模块的通信双方遵照半双工通信方式进行,即数据传送是双向 的。但是,任何时刻只能由其中的一方发送数据,另一方接收数据,因为 EEPROM 的读 出和写入不能同时进行。为了避免一方在发送信息帧时(这里的信息帧指的是下位机模 块发送的数据帧和上位机模块发送的命令帧,下同) ,另一方也会发送数据,必须把信 道变成半双工方式。尽管这样效率可能不如全双工方式,但通过此举牺牲效率可以换取 模块工作性能的稳定。双方采取的顺序是:发收到应答后再发。 按照整个系统的设计思路,上位机模块(即图 1-1 中的 GSM 模块 1,下同)发送的 帧包括命令帧、确认帧和非确认帧;下位机模块(即图 1-1 中的 GSM 模块 2,下同)发 送的帧包括数据帧、确认帧