1 引 言
随着通信技术的发展,基于移动通信网络的服务功能正向工业控制和遥控领域扩展。为了适应这种需要,西门子公司推出新一代TC35i型无线通信GSM模块,基于该模块的短消息功能,可以快速、安全、可靠地实现用户信息处理等功能,特别适用于控制中心与终端设备距离很远或不便采用有线通信介质的场合。该系统由控制中心和若干显示屏组成,控制中心实时将最新信息发送到各显示屏,构成控制中心与显示屏端的通信链路。
2 TC35i与单片机的硬件接口电路
TC35i可以快速安全可靠地实现系统方案中的数据、语音传输、短消息服务和传真。模块的工作电压为3.3 V~5.5 V,可以工作在900 MHz~1800MHz。模块有AT命令集接口,支持文本和PDU模式的短消息。此外,该模块还具有电话薄、多方通话、漫游检测等功能,常用工作模式有省电模式、I-DLE和TALK等模式。通过40引脚的ZIF连接器实现电源连接、指令、数据、语音信号及控制信号的双向传输。通过ZIF连接器及50 Ω的天线连接器可分别连接SIM卡支架和天线。
在控制系统中,采用AT89C51型单片机同时扩展RAM6264用于存放与显示屏对应的要显示的128 B数据以及从GSM模块读取的信息。为了增大存放数据的容量,本设计采用了AM29F040型FlashMemory(512 KB),它存储容量大、集成度高、成本低,具有灵活的读写性和较好的数据非易失性。它有15条地址线,其中低8位地址由P0口经74HC373锁存后提供,高11位地址由P2口与P1.4、P1.5、P1.6共同提供。8位数据由PO口直接提供。
采用动态扫描方式,用74HCl54及74HC595进行16行的逐行扫描,利用人眼的视觉暂留效果,可以节省I/O资源,减少发热量。
3 工作原理
如图l所示,在接收终端,单片机通过读取TC35i模块以短消息形式承载的数据,经处理后把它显示到LED显示屏上。因为短信息中的汉字仅仅是1个编码,单片机应用系统将编码变为汉字点阵数据,必须配置汉字字库。因此,设计单片机应用系统时,控制中心编辑PDU数据包数据,采用自定义数据方式。其中,代表汉字的数据直接用汉字的机内码,系统配置的字库为GB-2312编码的汉字库,即区位码汉字库。下面通过对存储在手机中的待发信息的分析来介绍SMSPDU的数据格式。首先,用手机写一条信息,发送手机号码为13605696031,信息内容为“HelloWorld!”。通过执行AT+CMGL=2可以读出此条信息

图1 TC35i与AT89C51的接口电路
操作过程如下(斜体字符为响应信息,{}内为注释):
AT+CMGL=2{读未发短消息}+CMGL:1,2,24{1表示信息个数,2表示未发信息,24表示信息总容量}
08 91 683108501505FO 11 00 0B 81 3106656930F1 0000A7 0B E8329BFD06DDDF723619 OK
下面分析这条消息:
08:短消息中心地址长度
91:短消息中心号码类型,91是TON/NPI。TON/NPI遵守International/E.164标准,指在号码前需加“+”号,此处还可以有其他数值,但91最常用。
683108501505FO:短消息号码,是所使用的服务中心地址。由于位置上略有处理,实际号码应为86138055155500(字母F意指长度减1),这是作者所在地GSM短信息中心的号码。
11:文件头字节(header byte,是一种bitmask)。这里11指正常发送短信息。
00:信息类型。
0B:被叫号码长度。
81:被叫号码类型。
3106656930F1:被叫号码,也经过了移位处理,实际号码为13605696031。
0000A7:短信息编码类型GSM Default Alphabet,如为中文则是0010A7。
0B:短信息长度。
E8329BFD06DDDF723619:短信息内容“Hello World!”。
单片机与手机的软件接口其实就是单片机通过与GSM短信息有关的AT指令控制手机的技术,如读取手机的短信息内容、删除短信息内容、列出手机中还未读的短消息等。执行l条指令,并非某些资料介绍的那么简单,事实上,指令的执行过程需要单片机与手机交互应答完成,每一次发送或接收的字节数有严格的规定,二者必须依据这些规定实现数据交换,否则,通信就是失败的。表1列出AT指令执行过程。
表1 AT指令的执行过程
[本文共有 3 页,当前是第 1 页] <<上一页 下一页>>