网站首页
IC库存
IC展台
电子资讯
技术资料
PDF文档
我的博客
IC72论坛
ic72 logo
资料首页最新产品 技术参数 电路图 设计应用 解决方案 代理商查询 IC替换 IC厂商 电子辞典
关键字: 技术文章 PDF资料 IC价格 电路图 代理商查询 IC替换 IC厂商 电子辞典

非接触式IC卡读写模块的应用开发

    摘要:本文介绍了PHILIPS公司的MF1ICS50非接触式IC卡的内部结构、工作原理及基于基站芯片MFRC500的嵌入式读写模块的软硬件设计。

    关键词:IC卡;非接触式;嵌入式MF1卡RC500

    引言

    近几年来,随着IC卡中非接触式射频卡的高度安全保密性、使用简单等特点,使之在各领域的应用中异军突起,成为当今IC智能卡中的流行宠物,应用前景十分广阔。我们在深入了解了PHILIPS公司的MF1ICS50非接触式IC卡和读卡设备的核心模块MFRC500的工作原理后,开发出了MF1卡读写模块。本读写模块能完成对MF1卡所有读写及控制操作,并且还可以方便的嵌入到其他系统(如:考勤,门禁)中,受控于主控模块,成为用户系统的一部分。用户利用本模块可以方便的构成自己的智能卡应用产品。

    内部结构及工作原理

    MF1卡系统的核心是PHILIPS公司的MIFARE1ICS50系列晶片,该技术已定为国际标准:ISO/IEC14443TYPEA。目前许多较大的IC卡卡片制造商均以MIFARE技术为标准。

    MF1卡中包含一块ASIC微晶片和一个高频天线,其基本工作原理是:读写器中的MIFARE基站向MIFARE卡发一组固定频率(13.56MHz)的电磁波,卡片内有一个LC串联谐振电路,其频率与基站发射的频率相同,在电磁波的激励下,LC谐振电路产生共振,使卡片内具有电荷,当所积累的电荷达到2V时,卡片中芯片将卡内数据发射出去或接收基站对卡片的操作。

    RF射频接口电路

    在RF射频接口电路中,主要包括有波形转换模块。它可将卡片读写器上的13.56MHz的无线电调制频率接收,一方面送调制/解调模块,另一方面进行波形转换,将正弦波转换为方波,然后对其整流滤波,由电压调节模块对电压进行进一步的处理,包括稳压等,最终将输出电压供给卡片上的各电路。

    在数字电路部分模块中

    ATR模块

    当一张MF1卡片处在卡片读写器的天线工作范围之内时,程序员控制读写器向卡片发出RequestAll(或RequestStd)命令后,卡片的ATR将启动,将卡片Block0中的卡片类型(TagType)号,共2个字节传送给读写器,建立卡片与读写器的第一步通信联络。如果不进行第一步的ATR工作,读写器对卡片的其他操作(Read/Write等)将不会进行。卡片的类型(TagType)号共2个字节,可能为:0004H。

      AntiCollision模块

    如果有多张MF1卡片处在卡片读写器天线的工作范围之内,AntiCollision模块的防重叠功能将启动工作。在程序员控制下的卡片读写器将会首先与每一张卡片进行通信,取得每一张卡片的序列号。卡片读写器中的AntiCollision防重叠功能配合卡片上的防重叠功能模块,由程序员来控制读写器,根据卡片的序列号来选定一张卡片。被选中的卡片将直接与读写器进行数据交换,未被选择的卡片处于等待状态,随时准备与卡片读写器进行通信。AntiCollision模块(防重叠功能)启动工作时,卡片读写器将得到卡片的序列号。序列号存储在卡片的Block0中,共有5个字节,实际有用的为4个字节,另一个字节为序列号的校验字节。序列号中实际有用的4个字节,可能为:773B72A9。

    Select Application 模块

    当卡片与读写器完成了上述的二个步骤,程序员控制的读写器要想对卡片进行读写操作,必须对卡片进行"Select"操作,使卡片真正地被选中。被选中的卡片将卡片上存储在Block0中的卡片容量"Size"字节传送给读写器。当读写器收到这一字节后,即可对卡片进行深一步的操作。例如,可以进行密码验证等。读写器收到的"Size"字节可能为:88H。

    认证及存取控制模块

    经过上述三个步骤,确认已经选择了一张卡片时,程序员对卡片进行读写操作之前,必须对卡片上已经设置的密码进行三级认证,如果匹配,则允许进一步的Read/Write操作。MF1卡片上有16个扇区,每个扇区都可分别设置各自的密码,互不干涉。因此每个扇区可独立地应用于一个应用场合。整个卡片可以设计成"一卡通"形式来应用。

      控制及算术运算单元

    这一单元是整个卡片的控制中心,是卡片的"头脑"。它主要进行对整个卡片的各个单位进行微操作控制,协调卡片的各个步骤;同时它还对各种收/发的数据进行算术运算处理,递增/递减处理,CRC运算处理等,是卡片中内建的中央微处理机(MCU)单元。

    数据加密单元

    该单元完成对数据的加密处理及密码保护。

    存储器及其接口电路

    该单元主要用于存储数据,EEPROM中的数据在卡片失掉电源后(卡片离开读写器天线的有效工作范围内)仍将保持,用户所要存储的数据存放在该单元中。MF1卡片中的这一单元容量为8196bit(1Kbyte),分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,(我们也将16个扇区的64个块按绝对地址编号为0~63)。第0扇区的块0(即绝对地址0块),它用于存放厂商代码,已经固化,不可更改。

    每个扇区的块0、块1、块2为数据块,可用于存贮数据。每个扇区的块3为控制块,包括了密码A、存取控制、密码B。

    每个扇区的密码和存取控制都是独立的,可以根据实际需要设定各自的密码及存取控制。

    存取控制为4个字节,共32位,扇区中的每个块(包括数据块和控制块)的存取条件是由密码和存取控制共同决定的。三个控制位以正和反两种形式存储于存取控制字节中,决定了该块的访问权限(如:进行减值操作必须验证KEYA,进行加值操作必须验证KEYB,等等)。

    读写模块的结构及工作原理

    模块的核心部份包括一个控制用微处理器和一个MIFARE基站芯片。它能独立完成对MIFARE卡的所有操作,还具有与用户主系统的串行通信能力,可根据用户系统的命令完成对MIFARE卡的读写操作,并将所得数据返回给用户系统。这个用户系统可以是一个主控板或PC机。

    模块硬件主要由中央微处理器(89C52)、MIFARE基站芯片、高频电路、模块天线、RS232通信电路、复位电路、LED状态显示和喇叭驱动电路等组成。

    写模块的核心是PHILIPS公司生产的读写卡专用芯片MFRC500。RC500符合ISO14443A,外接天线后读卡距离可达到10cm。RC500与CPU接口非常简单,上电或复位后能自动监测与CPU的接口方式,我们采用地址数据总线复用方式。

    RC500内部有8个寄存器页,每页有8个寄存器,每个寄存器有8位数据。这些寄存器可统一编址(在我们的系统中为0x00--0x3F),CPU将这些寄存器作为外部RAM进行操作。例如,CPU需要让RC500执行某个命令(如:Transmit)时,把此命令的代码(0x1a)写入Command寄存器可以了。

    RC500与卡片的通信是通过天线发送一些指令代码来完成,并且要按照特定的通讯流程,具体的通信流程:CPU对卡片的操作不是简单的一条指令所能完成的,其中必须有对RC500硬件内部寄存器的设置。例如对卡片进行读(READ)操作,程序员必须对RC500内部的BitPhase、Rxthreshold、TimerControl、InterruptEn、InterruptRq等寄存器进行配置,还要读PrimaryStatus、SecondaryStatus等寄存器的状态,对最终读得的数据还必须进行校验。一般的操作步骤如下:寄存器初始化,把要发送的数据(如:Read=0x30)放到RC500内部的FIFO(先入先出)寄存器中,然后把命令代码(如;Transceive=0x1e)写到Command寄存器。RC500便会执行命令,按照特定格式把数据发出去,然后等待卡片返回的数据(也放到FIFO中),CPU从FIFO中读走数据,完成操作。

    在读写模块主程序中,标准配置以RS232方式与主控模块进行通信。一条指令包括命令码、命令块长度、命令块、异或校验几部分。主程序运行时循环等待主控模块的指令,有指令收到,便跳出循环执行该指令。这样即使用户不清楚MFRC500和MF1卡的工作原理,也可将读写模块方便的嵌入到自己的系统中。

    此外,我们还根据用户需要有ABA,WIG26等其它串行输出方式。

    结束语

    IC卡以其高度的信息集成及安全性已经融入当今信息技术的主流,越来越受到人们的青睐。本文介绍了PHILIPS公司的MFICS50非接触式IC卡的内部结构和工作原理,以及基于MFRC500的嵌入式读写模块的软硬件设计。此读写模块的使用使复杂的IC卡技术变得非常简单,对非接触式智能卡的推广有重要意义。

热门搜索:UL603CB-6 UL17CB-15 2839211 SBBSM2120-1 PDU1220 BT137S-500E 01T5001JF 2856087 PS-415-HG-OEM 2838733 PDU12IEC 02T0500JF 2839240 TLM825SA BSV17-16 01M1001JF 1553DBPCB 02B1001JF 6NX-6 SS240806 2320335 PS-615-HG-OEM UL24RA-15 2804623 TLP602
COPYRIGHT:(1998-2010) IC72 达普IC芯片交易网
客户服务:service@IC72.com 库存上载:IC72@IC72.com
(北京)联系方式: 在线QQ咨询:点击这里给我发消息 联系电话:010-82614113 传真:010-82614123
京ICP备06008810号-21 京公网安备 11010802032910 号 企业资质