基于RI-R6C-001A IC与ISO15693标准的读卡器设计

2007-03-09 19:03:27来源: 互联网
摘要:文中给出了采用TI公司最新的射频收发器芯片RI-R6C-001A,并结合微处理器设计ISO/IEC15693读卡器的具体方法,同时介绍了RI-R6C-001A的通信协议和ISO/IEC15693标准。 关键词:IC卡;射频识别;ISO15693;读卡器 1 概述 IC卡的发展经历了从存储卡到智能卡、从接触式卡到非接触式卡、以及从近距离到远距离的过程。对于接触卡(ISO/IEC7816标准定义),读卡机必须和卡的触点接触才能与卡进行信息交换,因此存在磨损严重、易受污染、寿命短、操作费时等缺点。为解决上述问题,人们开始采用非接触式卡技术。 非接触式卡又称射频卡或感应卡。它采用无线电调制方式和读卡机进行信息交换。射频识别RFID技术是从九十年代兴起的一项自动识别技术。它利用无线射频方式进行非接触双向通信,以达到识别目的并可进行数据交换。 RFID与磁卡、IC卡等接触式识别技术不同,RFID系统的电子标签和读写器之间无须物理接触就可完成识别,因此它具有多目标识别、运动目标识别的特点。 目前ISO/IEC10536定义的卡称为密耦合卡;ISO/IEC 14443定义的卡则是近耦合卡(PICC),对应的读卡机简写为PCD;而ISO/IEC15693对应的卡是遥耦合卡(VICC),对应的读卡机简写为VCD。VICC比PICC具有更远的读卡距离(为1m左右),二者均采用13.56MHz工作频率,并都具有防冲突机制。 2 硬件设计 图1所示是一个射频读写系统的工作原理图,它主要由ASIC和VICC两部分组成。 2.1 ASIC电路的工作原理 对于图1所示的射频读写系统,ISO/IEC 15693-2所规定的VCD与VICC通信物理层协议全部可由ASIC芯片RI-R6C001来实现,用户通过同步串行接口(SPI),并遵照ASCI的通信要求就可实现VICC的读写操作。MCU和ASIC的通信接口有三根线:SCLOCK、DIN、DOUT,分别代表时钟线、数据输入线、数据输出线。时钟线是双向的,发送数据时由MCU控制,接收数据时则由ASIC控制, ASIC在时钟的上升沿锁存数据。DOUT除了具有在接收数据期间的数据输出功能外,还有表征ASIC内部FIFO的功能。DOUT带有内部下拉,平时为低电平。输入数据过程中,当ASIC的16位FIFO寄存器满时,DOUT线会自动跳变为高电平,直到FIFO寄存器为空,DOUT线又会跳变为低电平。在DOUT为高电平期间,输入数据无效。除了通信线外,系统还有一条M_ERR线,用于在同时读多张卡的时候表征数据的冲突情况。同样,M_ERR线也有内部下拉,平时为低电平,冲突时此线会升为高电平。 对ASIC的操作有三种模式:普通模式、寄存器模式和直接模式。直接模式下,MCU要直接面向射频信号处理,比较复杂,所以此种模式一般不用。普通模式和寄存器模式均为标准的数字信号操作,其区别在于规定芯片操作的一些参数不同(例如规定所采用的射频协议、调制方式及传输速率是在命令序列中规定,还是由寄存器来设定的)。普通模式每条指令均含有该指令使用的参数,而寄存器模式指令序列中并不含这些参数,而是由预先写入的寄存器中的数值来决定。若使RI-R6C-001A芯片正常工作,ASIC上电后必须首先初始化时间寄存器。 2.2 VICC-Tag-it应答器 VICC-Tag-it应答器完全兼容于ISO/IEC15693标准协议。VICC-Tag-it应答器内有国际统一且不重复的8字节(64bit)唯一识别内码(Unique identifier,简称UID)。图2是UID唯一识别内码的格式示意图,其中第1~48bit共6字节为生产厂商的产品编码;第49~56bit的1个字节为厂商代码(ISO/IEC7816-6/AM1),最高字节固定为“EO”;8位AFI(应用识别号)和8位DSFID(数据存储格式)用来对卡和特定应用的特征进行标识。卡内有2kbit EEPROM,分成64个块,每块32个bit。每个块均可以锁定,以保护数据不被修改。AFI、DSFID和32个块均可读可写,用以存储用户数据。VICC-Tag-it采用13.56MHz的载波频率,工作于“READER TALKS FIRST”模式,即一问一答的模式。卡内有防冲突机制,可以同时读取多张卡而不会造成冲突。特别应当指出:VICC-Tag-it内没有逻辑加密电路,无法实现密码功能,也正是这一点限制了VICC-Tag-it在其它保密性要求较高领域的应用。 3 通信协议 发给ASIC的命令序列必须符合ASIC通信协议和ISO/IEC15693-3规范。 3.1 命令结构 图3所示是该系统的命令序列时序图。在普通模式下,该系统的命令序列结构如下: 起始位(S1) 命令字(CMD) 数据 结束位(ES1) 起始位(S1):收发器和微处理器之间的通信开始位,当SCLOCK位保持高电平时,将在DIN产生一个上升沿(参见图3)。 命令字节:用于规定ASIC与VICC通讯时的有关参数。如果该端为30H则表示该系统支持的射频协议是ISO15693(256选1),采用FM调制方式,调制率10%,返回数据波特率为6.67kb/s。注意:命令字节的发送顺序是高位在先,即:MSB FIRST。 数据:数据域内容由15693-3规定这个数据一般发送到TAG。 结束位(ES1):收发器和微处理器之间的通信结束位,当SCLOCK位保持高电平时,将在DIN产生一个下降沿(见图3)。 通常在寄存器模式下,命令字节是1位,且该位为1。 ISO15693-3命令的一般格式如下: 起始位(S1) FLAGS 命令顺号 命令内容 CRC16 结束位(ES1) 在ISO15693命令序列中,FLAGS用于规定命令内容中某些可选域的存在。由于S1和ES1在ASIC命令序列中已经存在,所以只须把ISO15693命令序列中FLAGS、命令序号、命令内容、CRC16等域的内容取出并填入ASIC序列中的数据域然后打包即可。数据域的发送顺序为低位在先,即:LSB FIRST。 3.2 响应结构 图4所示是VICC的响应时序。VICC响应的一般格式是: 起始位(S2) FLAGS 响应内容 CRC16 结束位(ES2) 其中起始位S2用于表示VICC响应数据的开始,其定义是当SCLOCK为高电平时,DOUT产生一个上升沿(参见图4)。而结束位ES2则表示VICC响应数据的结束。它被定义为当SCLOCK为高电平时,DOUT产生一个下降沿(如图4)。 4 结束语 考虑到命令字节(8位)发送的顺序是MSB FIRST,其它数据均是LSB FIRST;而且“S1 01111011 00000001 11000ES1”是时间寄存器的初始化序列;同时,在命令发送过程中,双向时钟SCLOCK线由MCU控制,因此,在接收VICC响应之前必须进行时钟线的切换,以将控制权交由ASIC控制。对于FIFO管理,发送每一位时都要检测DOUT的电平,DOUT为高时停止发送,直到DOUT恢复到低电平为止。发送命令字节后,应适当延时,以利于ASIC正确动作,同时应考虑电路的抗干扰能力。对于ISO15693-3规定的FLAGS、命令序列号、命令内容等字节,还应进行CRC16校验。关于反碰撞问题,可采用“二进制搜索”算法并选用曼彻斯特编码。为实现这种算法,需要一组命令并由应答器处理,同时应答器要拥有唯一的序列号(UID),例如磁场中有两张卡,其UID分别是:“E00700000234D1E1”和“E00700000234D2D8”,那么,用命令来查询当前磁场范围内卡的卡号,就能很好的解决碰撞问题。

关键字:标准  读卡器  设计

编辑: 引用地址:http://www.eeworld.com.cn/wltx/RFID/200703/1940.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
标准
读卡器
设计

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved