APP下载

基于RFID的单片机系统设计

2013-04-16中北大学信息与通信工程学院朱炳瑞裴焕斗刘春力

电子世界 2013年1期
关键词:IC卡读写器卡片

中北大学信息与通信工程学院 朱炳瑞 裴焕斗 刘春力

1.引言

射频识别即RFID(Radio Frequency Identification)技术,是利用射频方式在非接触式射频IC卡和读写器之间进行无线双向通信的一种新的自动识别技术。读写器通过无线电讯号识别特定目标并读写相关数据,实现无接触信息传递,识别工作无须人工干预。与我们目前最常见的条形码技术相比,RFID具有很大的优势,如非接触识别、识别距离长、信息存储量大、读取信息快速方便、标签可重复使用以及标签能适应复杂环境等。RFID技术广泛应用于图书馆、门禁系统、食品安全溯源、物流管理和城市一卡通等领域。

一套完整RFID系统由读写器和应答器两部分组成。应答器是射频识别系统的数据载体,即射频IC卡(又称电子标签、临近卡等)。当射频IC卡进入读写器的射频磁场中时,会处于被激发状态从而产生感应电流驱动卡片电路,将它储存的信息发射出去。读写器获取到射频IC卡发送的信息后通过解码系统识别该信息,并可将识别信息进一步传递到信息处理系统中进行分析处理。

本文详细论述了射频识别卡Mifare1与其读卡芯片MFRC522的特点与逻辑结构,基于模块化的思想设计开发了基于单片机控制系统的射频读写模块并简要分析了RFID读写模块的程序控制和数据读写的设计与实现。

2.射频识别卡与读写卡芯片介绍

2.1 Mifare1射频IC卡

射频IC卡选用MIFARE MF1标准卡片,MF1是符合ISO/IEC 1443A的非接触智能卡,卡片上除了IC微型芯片及一个高效率天线外,无任何其他元件。MF1卡的核心是Philips公司的MF1 IC S50系列微晶片,内建有高速的CMOS、EEPROM、MCU等。8K Bits的EEPROM存储器空间被划分为16个扇区,每个扇区4块,每块16个字节,以块为存取单位,整张卡片可设计为城市一卡通形式。内含加密控制逻辑和通讯逻辑电路,可设计为增/减值的专项数学运算电路,非常适合公共交通行业的检票/收费系统。MF1卡的天线是只有几组绕线的线圈,很适于封装到IS0卡片中。微晶片连接到天线线圈上,并嵌入塑料中,形成了一个无源的非接触卡片。工作时的能量由读写器天线发送频率为13.56MHz无线电载波信号,以非接触方式耦合到卡片上天线而产生电能,通常可达2V以上。卡片标准读写距离高达10cm,卡与读写器之间的通信速率高达106Kbit/s。

2.2 MF RC522读写卡芯片

MF RC522是Philips公司推出的一款非接触式低功耗读写基站芯片,利用先进的调制和解调概念,完全集成了13.56MHz下所有类型的被动非接触式通读方式和协议。MFRC522支持ISO14443A所有的层,传输速度最高达424kbps。内部发送器部分不需要增加有源电路就能直接驱动近操作距离的天线与ISO14443A/MIFARE卡和应答机的通信。接收器部分提供一个功能强大的高效的解调和译码电路,用来处理兼容ISO14443A/MIFARE的卡和应答机的信号。芯片具有充裕的64字节的发送接收缓冲区,内置CRC协处理器,带低功耗功能的硬件复位电路和软件掉电模式,还有内部的自检电路。MF RC522带有灵活高速的串行接口IIC、SPI、Serial UART,方便连接到各种各样的MCU上。

MF RC522芯片逻辑结构框图如图1.1所示。

3.读写系统设计思想

图1.1 RC522逻辑结构图

图2.1 读写系统结构图

图3.1 RC522接口

图3.2 天线电路

图3.3 软件流程图

图3.4 读卡号结果

图3.5 读写块数据、修改块密码结果

RFID读写模块主要由主控MCU、射频读写芯片、天线及匹配电路三部分组成。主控MCU通过对射频读写芯片内寄存器的读写来控制芯片,芯片收到MCU发来的命令后,按照非接触式射频卡协议格式,通过天线及其匹配电路向附近发出一组固定频率的调制信号(13.56MHz)进行寻卡,若此范围内有卡片存在,卡片内部的LC谐振电路在电磁波的激励下产生共振,在卡片内部电压泵的作用下不断为其另一端的电容充电,获得能量,当该电容电压达到2V时,即可作为电源为卡片的其他电路提供工作电压。

当卡片上电路正常工作之后进入通信流程,MCU向卡片发出寻卡命令,卡片将回复卡片类型,建立卡片与读卡器的第一步联系,若同时有多张卡片在天线的工作范围内,读卡器通过启动防冲撞机制,根据卡片序列号来选定一张卡片,被选中的卡片再与读卡器进行密码校验,确保读卡器对卡片有操作权限以及卡片的合法性,而未被选中的则仍然处在闲置状态,等待下一次寻卡命令。密码验证通过之后,就可以对卡片进行读写等应用操作。系统结构如图2.1所示。

4.设计步骤

4.1 接口设计

MF RC522与MCU接口采用了四线制SPI,通信中的时钟信号由MCU产生,RC522芯片接收来自MCU的数据以设置寄存器,并负责射频接口通信中相关数据的收发。RC522的SPI总线接口有其自身的时序要求。它只能工作于从模式,最高传输速率为10Mbps,数据与时钟相位关系满足“空闲态时钟为低电平,在时钟上升沿同步接收和发送数据,在下降沿数据转换”的约束关系。数据的传输路径为:MCU通过MOSI线将数据发到RC522,RC522通过MISO线发回至MCU,并且两根线上的每一个字节都是先发高位。两根数据线上的信号电平在时钟信号必须保证上升沿稳定,在下降沿才允许改变,可以连续读写N个字节。此外,MCU向RC522发送的第一个字节定义操作模式和所要操作的寄存器地址,最高位代表操作模式,1表示读,0表示写,中间六位(bit1~bit6)表示地址,最低位预留不用,默认为0。

4.2 电路设计

MFRC522芯片接口和天线部分电路如图3.1和图3.2所示。

4.3 软件设计

MCU首先对RC522进行初始化设置,寄存器配置,设置完成后RC522就可以与MF卡片通信了。RC522根据接收MCU的指令执行相应的操作,操作过程主要包括:寻卡,防冲突处理,选择卡片,验证卡片,读写操作。当有MF卡进入到射频天线的有效范围时,读卡程序开始进行上述一系列操作,操作流程如图3.3所示。

4.4 读写卡操作

RC522的驱动程序调试成功之后,下载到实验板进行检验。按照通信协议分别对读卡、读块数据、写块数据、修改块密码等操作封装,操作结果显示在个性化的的人机交互界面。实验过程分别对读卡号操作以及选定卡片后对卡片的块进行读写数据和修改密码等项进行测试,测试结果如下图3.4和图3.5所示。

5.结束语

本文将高性能的读卡芯片MFRC522和普通单片机结合在一起使用,没有复杂的外围电路,整个系统简洁明了。MFRC522通过SPI方式与单片机通信,适应市场上大部分的MCU,系统适应性强。模块化的设计了射频读写系统,方便用户调用。以上介绍了基于RFID的单片机系统的设计方法和工作原理,实验表明,此设计的电路运行稳定,读写数据准确,操作时间较短。

[1]王爱英.智能卡技术(第三版)[M].北京:清华大学出版社,2009.

[2]陈保平,王月波,马伯元.基于MF RC522的Mifare射频卡读写模块开发.微计算机信息(嵌入式与SOC)[J].2007,23(11-2).

[3]严雄武.基于Mifare非接触式IC卡的射频识别系统研究与实现[D].武汉理工大学,2005.

[4]严光文,张其善.射频识别卡读写模块的设计[J].北京航空航天大学学报,2003,29(2).

猜你喜欢

IC卡读写器卡片
工商业IC卡控制器改造为物联网控制器实践
摆卡片
倒过来的卡片
在用电梯加装外接式IC卡运行控制系统设计改进
一张卡片
长春开通公交IC卡充值平
基于视频抓拍读写器的高速公路防倒卡研究
湖北省高速公路IC卡管理系统浅谈
基于随机时隙的RFID读写器防冲突方法
基于 LMAP和 EAP-SAKE的 RFID系统安全解决方案