设为首页 | 成都一卡通
当前位置: 首页 > 一 卡 通 > 其他一卡通 >
其他一卡通
基于IC智能卡中的非接触式读写模块设计
发布时间:2013-03-22 来源:未知
引言 IC智能卡中的接触式卡以及非接触式IC智能射频卡的高度安全保密性。使之在IC卡领域异军突起。特别是在公共交通行业的电子车票、卫生医药中的医疗保险、停车场等封闭式场所管理、身份识别、智能大厦中的电子巡更保安系统等领域中应用前景尤为广阔[1]。 目前较好的上非接触式IC智能射频卡中的主流技术是PHILIPS公司的MIFARE技术.已经被制定为较好的标准一IS014443TYPEA标准。本模块采用的国产非接触卡读卡机专用芯片FM1702,正是基于此较好的标准。该模块具有体积小、易于嵌入到应用系统中使用的特点。 1FM1702SL简介 FM1702SL是复旦微电子股份有限公司基于IS014443标准设计的非接触卡读卡机专用芯片,该芯片采用的是0.6微米CMOSEEPROM工艺制造.可支持ISOl4443typeA协议和MIFARE标准的加密算法。芯片内部集成了模拟调制解调电路。因而只需搭接还不错少量的外围电路就可以工作。FM1702SL芯片支持SPI接口,其数字电路具有TTL、CMOS两种电压工作模式。特别适用于ISO14443标准下的水、电、煤气表等计费系统的读卡器的应用。该芯片的三路电源都适用于低电压。 2非接触读写系统组成 该系统主要由MCU、FM1702SL、RS232/I2C通信模块、ISP在线调试接口和天线组成。系统组成框图如图1所示。用户只需简单地通过选定的UART或IIC接口发送命令就可以对卡片进行操作,MCU根据接收到的命令来控制FM1702SL,并由FM1702SL驱动天线对MiFare卡进行读写操作。 系统MCU采用PHILIPS增强型单片机LPC931,其可以通过ISP在线调试,且运行稳定。射频非接触式IC卡读写模块同时支持IIC和UART通讯接口。通过对模块的引脚设置电平可确定模块的通讯端口是IIC还是UART。 3天线设计[2] 系统数据存储在无源Mifare卡中。读写模块的主要任务是将能量传输给Mifare卡。并与之建立通信。天线是非接触式IC卡读写模块的一个重要组成部分,在读写模块和非接触式IC卡通信过程中,天线用于产生能发射和接收射频信号的磁通量.而磁通量用于向卡提供电源并在读写模块和卡片之间传送信息。因此,在设计中要求天线线圈的电流还不错大,以用于产生还不错大的磁通量,并要确保有足够的带宽。读写模块的性能与天线的参数有着直接的关系。在对天线的性能进行优化之后。读写模块的读卡距离可以达到10cm。 由于FM1702SL的频率是13.56MHz.属于短波段,因此可以采用小环天线。小环天线有方型、圆形、椭圆型、三角型等,本系统采用的是矩型天线。天线的还不错大几何尺寸同工作波长之间没有一个严格的界限。一般定义为: L/λ≤1/(2π)
 (1) 式中,L是天线的还不错大尺寸,λ是工作波长。对于13.6MHz的系统来说,天线的还不错大尺寸在50cm左右。 在天线设计中,品质因数Q是一个非常重要的参数。对于电感耦合式射频识别系统的读写器天线来说。较高的品质因数值会使天线线圈中的电流强度也较大,由此可改善对卡的传送功率。品质因数的计算公式为: 式中,f0是工作频率,Lcoil是天线的尺寸,Rcoil是天线的半径。 通过品质因数可以很容易地计算出天线的带宽: B=f0/Q
(3) 从式中可以看出,天线的传输带宽与品质因数成反比关系。因此。过高的品质因数会导致带宽缩小,从而减弱读写器的调制边带,导致无法与卡通信。一般系统的还不错佳品质因数为10-30,还不错大不能超过60。 4硬件电路 图2为FM1702SL与MCU的主要部分的接口电路。系统通过接收上位机的数据,并根据接收到的相关命令进行工作。另外。也可设定为自动寻卡方式,而无需上位机频繁发送寻卡指令,即当卡片进入到天线区后在ICC引脚上出现低电平告知上位机,上位机则通过寻卡指令直接读取卡片序列号。 5软件设计[3] 读写器软件编程是采用标准C语言程序来实现对非接触式IC卡的一系列操作。主要有:LPC931单片机初始化、FM1702SL初始化、接收命令数据处理、IC卡读写、防冲突、密码验证以及对卡片block(数据块)操作程序等。 读写卡过程是一个较复杂的程序执行过程,其软件流程图如图3所示,读写卡过程需要执行一系列的操作指令,并需调用多个C51函数。如果采用自动寻卡方式,MCU需要每隔0.5秒自动寻卡一次,如果寻到卡,则ICC置1。 5.1请求操作 当一张Mifare卡片处在读写模块天线的工作范围之内时.上位机通过发送命令来控制读写模块向卡片发出REQUESTall(或REQUESTstd)命令。卡片的ATR将启动,并将卡片BlockO中的卡片类型(TagType)号(共2个字节)传送给读写模块。以建立卡片与读写模块的较好的步通信联络。如果请求卡操作不成功,读写模块对卡片的其它操作将不会进行。 5.2防冲突操作 如果有多张Mifare卡片处在卡片读写模块天线的工作范围之内时,读写模块将首先与每一张卡片进行通信。以取得每一张卡片的序列号。由于每一张Mifare卡片都有其的序列号,因此读写模块可根据卡片的序列号来保证一次只对一张卡操作。该操作得到的卡的返回值即为卡的序列号。 5.3卡选择操作 完成了上述二个步骤之后,读卡模块必须对卡片进行选择操作。执行操作后,返回卡上的卡片序列号(UID)。 5.4认证操作 经过上述三个步骤,在确认已经选择了一张卡片时。卡片读写模块在对卡进行读写操作之前。必须对卡片上已经设置的密码进行认证,如果匹配,才允许进一步的读写操作。 5.5读写操作 对卡的还不错后操作包括卡片初始化卡值、读卡、写卡、增值、减值、存储等。 6结束语 本文主要介绍了一种基于FM1702SL的射频识别读写模块的设计方法。此模块只需要上位机通过选定的UART或IIC接口来发送命令就可以完成对卡片的操作。经实际应用证明,该读写模块具有电路稳定、易嵌入到其他模块使用、功耗低等良好性能。能方便应用于各种不同的射频识别应用系统.如考勤系统、门禁系统、公交车收费系统.以及各种水、电、气表计费系统等,有十分广阔的应用前景。