一种无线通信模块在掌上电脑中的实现

时间:2011-06-27

  随着通信技术和微电子技术的快速发展以及人们对信息交流的迫切需求,手持终端式应用的发展进入了一个全新的时期。掌上电脑的功能和应用领域也可以通过增加无线接入网络的功能得到极大的扩展。目前无线技术经历两代的发展,正向3G宽带移动通信系统网络演进。无线通信模块广泛地运用在车辆监控、遥控、遥测、小型无线网络、无线抄表、门禁系统、小区传呼、工业数据采集系统、无线标签、身份识别、非接触RF智能卡、小型无线数据终端、安全防火系统、无线遥控系统、生物信号采集、水文气象监控、机器人控制、无线232数据通信、无线485/422数据通信、数字音频、数字图像传输等领域中。

  非接触IC卡又称射频卡(RFIC卡),RFIC(射频集成电路)是90年代中期以来随着IC工艺改进而出现的一种新型器件。RFIC的技术基础主要包括:1)工作频率更高、尺寸更小的新器件研究;2)专用高频、高速电路设计技术;3)专用测试技术;4)高频封装技术。它的出现和发展,推动了人类生活中支付体系的革命性变革。

  1  GPRS业务的优势

  GPRS是GSM Phase 2+阶段引入的一种基于分组的数据业务,是欧洲电信协会GSM系统中有关分组数据所规定的标准。相对低廉的连接费用  GPRS节水灌溉测控终端资源利用率高在GSM网络中,GPRS首先引入了分组交换的传输模式,使得原来采用电路交换模式的GSM传输数据方式发生了根本性的变化,这在无线资源稀缺的情况下显得尤为重要。按电路交换模式来说,在整个连接期内,用户无论是否传送数据都将独自占有无线信道。在会话期间,许多应用往往有不少的空闲时段,如上Internet浏览、收发E-mail等等。对于分组交换模式,用户只有在发送或接收数据期间才占用资源,这意味着多个用户可高效率地共享同一无线信道,从而提高了资源的利用率。GPRS用户的计费以通信的数据量为主要依据,体现了“得到多少、支付多少”的原则。实际上,GPRS用户的连接时间可能长达数小时,却只需支付相对低廉的连接费用。

  2  系统总体设计

  系统选用的掌上电脑是handspring公司的visor系列,它有助于 IT 和商务人员轻松地可视化、分析和交流复杂信息。它能够将难以理解的复杂文本和表格转换为一目了然的 Visio 图表。该软件通过创建与数据相关的 Visio 图表(而不使用静态图片)来显示数据,这些图表易于刷新,并能够显着提高生产率。使用 Office Visio 2007 中的各种图表可了解、操作和共享企业内组织系统、资源和流程的有关信息。硬件上,掌上电脑要求小型化、省电、高可靠性,因此将GPRS模块和RFIC模块尽可能小地集成在一块四层PCB板上,做成即插即用模块,通过PCMCIA接口与掌上电脑相连。在设计过程中,要同时考虑电磁干扰的抑制和电磁兼容性的设计。图1为系统的整体框图。

  当读58卡时,要在掌上电脑的操作系统中选择此功能,由微处理器通过PCMCIA接口给RFIC卡读写模块一个控制信号,通知读写模块准备读卡。同时GPRS模块也会通过串行口发现这个信号,但是由于命令的数据格式不同,读卡时完成的工作主要包括:卡进入和退出读写范围的识别与控制,通过天线向非接触IC卡提供稳定的电源和时钟,实现与卡的数据交换并提供相应的控制信号等。卡的信息读出后存入程序/数据存储器中,并使RFIC卡读写模块继续处于待机状态。当需要通过GPRS网络发送时,应发送一个控制信号激活GPRS模块,这样就可以通过串行口运用AT命令把接收的IC卡信息通过GPRS发送出去。

  2.1 GPRS模块设计

  目前GSM手机厂商除了生产手机之外,还提供GSM/GPRS通信模块供其他产品配套使用。本系统选用SIMCOM公司的ITM100 GSM/GPRS三频模块,为语音传输、短消息和数据业务提供无线接口。ITM100 集成了完整的射频电路和GSM 的基带处理器,支持GSM900/DCS1800/PCS1900三频。其默认设置为GSM900/DCS1800模式,可以通过AT命令切换到GSM900/PCS1900模式。ITM100有60针外部系统连接器,方便与应用系统对接。

  本系统中,GPRS模块的键盘接口和音频接口都可以不用,而其他的接口包括电源接口、SIM卡接口、RF天线电路接口和UART接口为集成GPRS模块和掌上电脑系统提供了丰富的控制接口资源。这些接口都是由60针外部系统连接器提供的。本系统不需要用到音频,所以GPRS模块的UART接口中只需要用TXD和RXD,而不需要用DCD、DTR、RTS、CTS和RI。由于PCMCIA接口是8位并行输出,因此用ST16C550串并转换芯片负责与GPRS模块实现数据交流,图2为系统接口电路。

  掌上电脑的地址线通过PCMCIA接口连接到ST16C550串并转换芯片的片选信号引脚CS0、CS1、/CS2和地址线上,这样ST16C550就获得了一段端口地址,在底层驱动程序中翻译成映射地址。掌上电脑读写这个地址,并通过ST16C550串并转换芯片传递给GPRS模块或RFIC读写模块。这样就完成了掌上电脑与GPRS模块和RFIC读写模块的通信(GPRS模块和RFIC读写模块共用一个PCMCIA接口)。GPRS模块和RFIC读写模块的数据格式不同,因此不会产生数据干扰和接收错误。未用的输入脚要接高电平,不能悬空。SIM卡直接选择符合GSM规范的3V SIM卡或1.8V SIM卡,模块自动监测和适应卡的类型。为了确保模块与外部的接口,模块专门设置了3V接口电平。使3.6V锂电池通过MAX8885EU30降压变压器提供接口电压。同时,采用高速防静电管和去偶电容保护SIM卡和串口输出等敏感部分免受射频、尖峰脉冲和电源波动干扰。

  本系统需要利用TCP/IP协议完成GPRS业务数据的装帧和拆帧。数据的完整流程为:掌上电脑将信息数据按照TCP数据报的格式封装为TCP数据报,加上IP报头和报尾封装为IP数据报,之后将IP数据报按照PPP帧的帧格式封装为PPP帧,然后通过串口传给GPRS模块。GPRS模块将接收的数据帧通过无线链路传送到SGSN(Service GPRS Support Node)。SGSN进行相应的协议转换,按照GPRS特有的GTP(GPRS Tunnel Protocol)将其封装成GTP包,然后通过GPRS骨干网传送到相应的GGSN(Gateway GPRS Support Node)。GGSN也进行相应的协议转换,再根据外部数据网的协议格式进行新的封装,并且根据其目的IP地址选择路由进行传送,从而终传送到监控中心。建立GPRS链接的数据链路如图3所示。

  ITM100无线模块的软件部分对外提供了一个控制系统操作的AT命令集,通过接收来自串行口的AT命令,解释并执行相应的操作,从而实现无线Modem的对应功能。模块的设置和上网传输数据用到的AT命令主要有:

  (1)运用命令AT+IPR=115200(默认)设置波特率,用此命令可自由切换通信速率。由于支持掉电保存,因此只需要设,不需要每次开机重设。

  (2)运用命令AT+CGDCONT=1、“IP”、“CMNET”设置GPRS接入网关。其中CMNET为移动梦网的接入网关。

  (3)运用命令AT+CGCLASS=“B”设置移动终端的类别为B类,即同时监控多种业务,但只能运行一种业务。

  (4)运用命令AT+CGACT=1,1激活GPRS功能,如果返回OK,则GPRS连接成功;如果返回ERROR,则意味GPRS连接失败。

  (5)运用命令AT+CIPSTART=“TCP”、“客户端IP”、“端口号”来连接客户端服务器。

  (6)运用命令AT+CIPSEND发送数据。

  (7)发送完之后,运用AT+CIPCLOSE关闭连接。

  (8)运用命令AT+CIPSHUT关闭移动场景。

  2.2 RFIC读写模块的设计

  非接触IC卡的读写原理如下:读写器向非接触IC卡发一组固定频率的电磁波,卡片内有一个LC串联谐振电路,其频率与讯写器发射的频率相同;在电磁波的激励下,LC谐振电路产生共振,从而使电容内有了电荷;在这个电容的另一端,接有一个单向导通的电子泵,将电容内的电荷送到另一个电容内储存;当所积累的电荷达到2V时,此电容可做为电源为其他电路提供工作电压,将卡内数据发射出去或接取读写器的数据。本系统采用的是MF500射频读写器,内嵌ISO14443 Type A协议解释器,并具有射频驱动及接收功能,可以简单实现对Mifare Light和Mifare One S50、S70等卡片的读写操作,读写距离可达100mm(与卡片及天线设计有关)。

  本系统属于电感耦合识别系统,天线的设计直接关系到能否正常通信。由于MF500读写芯片是低功耗设计,因此卡与天线的耦合系数必须满足一定的值,不能低于0.3。天线的直径要求介于0.5~1.5mm之间。天线的电感可以通过以下公式计算得出:

  L=2×S×ln(1/D)×N1.8

  式中:L为读卡器天线电感(nH);S为1圈天线导体的长度(cm);D为天线导体宽度;N为天线导体圈数。

  读卡器与卡通信时,需要经过三次握手验证。传输数据加密时,只有知道加解密规则的读卡器才能读出该卡,并且卡中的每个扇区都有不同的密码,具有良好的保密性。三次确认的过程如下:

  (1)射频卡向读写器发送一个随机数Rc;

  (2)读写器返回一个数据Token R后,射频卡译码并校验R中所含的随机数Rc是否与(1)中所发的一致;

  (3)射频卡发给读卡器一个数据Token C;

  (4)读写器收到Token C之后,译码并校验Rc的正确性,同时还验证C中所含的随机数是否与(2)中发出的一致。

  GPRS模块和RFIC模块的程序都是在PALM OS的开发工具CODE WARRIOR下用C语言编写的。GPRS模块是通过串行口用AT命令控制,RFIC模块也可以调用动态链接库RC500_Mifare.dll,通过串行口发送相关指令,即可实现对卡片的所有操作。指令结构定义如下:

  ACK+LEN+DATAS+CHK+ETX

  其中:

  ACK=0x60通信头部,指令启始字节,1B

  LEN=Length(DATAS) 通信数据体长度字节数,1B

  DATAS 通信数据体

  CHK  异或校验和=ACK^LEN^DATAS,1B

  ETX=0x03   结束符,1B

  DATAS中包含对卡操作所需要的参数,如所需的密钥、地址、写入卡片的数据等。掌上电脑通过向串行口发送符合此命令格式的指令,控制RFIC读写模块对卡进行操作。

  整个系统的流程如图4所示。

  3  结束语

  本系统在掌上电脑上实现了GPRS业务的数据传输功能和读写非接触IC卡的功能。系统具有成本低、电路简单的优点,实现了掌上电脑功能的扩展和向高端的升级,在交通管理、第二代身份证管理等领域有很好的应用前景。


  
上一篇:边缘零交叉二值化设计与实现
下一篇:教你安装Windows CE 6.0

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料