昆仑山

首页 » 问答 » 问答 » 单片机实例分享,RFID卡读写器的设计
TUhjnbcbe - 2024/8/22 19:22:00
北京白癜风到哪里治 https://wapjbk.39.net/yiyuanzaixian/bjzkbdfyy/mbbdf/

RFID(RadioFrequencyIdentification,射频识别)技术是一种非接触自动识别技术,利用射频信号通过空间耦合(电感或电磁耦合)实现无接触信息传递,并通过所传递的信息达到识别目的。

RFID卡技术成功地融合RFID技术和IC卡技术,解决了无源(卡中无电源)和免接触的难题,是电子信息技术领域的一大突破。由于RFID卡方便、耐用,且可高速通信、多卡操作,在门禁安防、身份识别、公共交通等众多领域正逐渐取代传统的接触式IC卡,在市场上所占的份额越来越大,应用日益广泛。高速公路、停车场、加油站收费,智能卡水表、电表、煤气表等应用,也可使用RFID卡。从长远角度看,RFID卡将会替换目前广泛使用的接触式IC卡。

RFID卡的突出优点

与接触式IC卡相比,RFID卡具有以下优点。

(1)高可靠性:由于无触点,可最大限度地避免由接触读写而产生的各种故障,提高了抗静电和抗环境污染能力,因此提高了使用的可靠性,延长了读写设备和卡片的使用寿命。

(2)易用性:操作方便、快捷,无需插拔卡,完成一次操作只需0.1~0.3s。使用时,卡片可以任意方向掠过读写设备表面。

(3)高安全性:序列号是全球唯一的,出厂后不可更改。卡与读写设备之间采用双向互认验证机制,即读写器验证卡的合法性,同时卡验证读写器的合法性。通信过程中所有的数据都加密,卡片上不同分区的数据可用不同的密码和访问条件进行保护。

(4)高抗干扰性:对有防冲突电路的RFID卡,在多卡同时进入读写范围内时,读写设备可一一对卡进行处理,抗干扰性高。

(5)一卡多用:卡片上的数据分区管理,可以很方便地实现一卡多用。

(6)多种工作距离:作用距离从几厘米到几米,适应不同的应用场合。

RFID卡读写器工作原理

RFID卡的结构如图15.1所示。

图15.1RFID卡的结构

RFID卡读写器是连接RFID卡与应用系统间的桥梁,RFID卡读写器的基本任务就是启动RFID卡,与RFID卡建立通信,在应用系统和卡片间传递数据。

RFID卡读写器将要发送的信息编码后加载到一固定频率的载波上,当RFID卡(卡片内有一个谐振电路,其频率与读写器发送的载波频率相同)进入读写器的工作区域后,谐振电路发生谐振并产生电荷积累,当电荷积累到一定数值时,就能为RFID卡内的电路提供工作电压,使卡内的芯片开始正常工作,处理读写器发送的数据信息。RFID卡系统的模型如图15.2所示。

一个完整的RFID卡读写器应包括以下几个部分(见图15.3):单片机、射频处理模块、天线、与PC的通信接口以及键盘、显示等部件。

图15.2RFID卡系统模型图图15.3系统设计框图

单片机是读写设备的数据处理控制核心。它不仅要控制射频处理模块完成对RFID卡的读写,还要负责通过通信接口与PC进行通信,并对键盘、显示设备等其他外部设备进行控制。

射频处理模块负责射频信号的处理和数据的传输,完成对RFID卡的读写。

天线的作用有两个:一是产生电磁能量,为卡片提供电源;二是在读写设备和卡片之间传送信息。天线的有效电磁场范围就是系统的工作区域。

与PC的通信接口以及键盘、显示等部件主要实现与PC的通信,以及操作时的人机界面。

根据RFID卡与读写器之间能可靠交换数据的距离,RFID卡天线和读写器之间的耦合可以分为3类:密耦合系统、遥耦合系统和远距离系统。

密耦合系统的典型作用距离范围是0~1cm。在实际应用中,必须把卡插入阅读器中或者放置到阅读器的天线表面。密耦合系统的卡与阅读器之间是电感耦合,其工作频率一般在30MHz以下。密耦合系统适合于安全要求较高,但不要求作用距离的应用系统,如电子门锁等。

遥耦合系统的典型作用距离可以达到1m。遥耦合系统又可以细分为近耦合系统和疏耦合系统,前者的典型作用距离为15cm,后者为1m。所有遥耦合系统在卡和阅读器之间都是电感耦合,典型工作频率为13.56MHz,也有其他频率,如6.75MHz、27.MHz或者kHz以下。

远距离系统的典型作用距离是1~10m,个别系统也有更远的作用距离。所有的远距离系统的卡和阅读器之间都是电磁反向散射耦合,在微波范围内用电磁波工作,发送频率通常为2.45GHz,也有系统使用5.8GHz和24.GHz的频率。

Philips公司的Mifare卡

Philips公司是世界上最早研制RFID卡的公司之一,其Mifare技术已经被定为IS0/IECTYPEA国际标准。使用Mifare芯片的RFID卡占世界范围内同类智能卡销量的60%以上。这里简单介绍一下Mifarestandard卡:MF1ICS50(简称Mifare1卡)。

Mifare1卡除了微型IC芯片及一个高效率天线外,无任何其他元器件。卡片电路不用任何电池供电,工作时的能量由读写器天线发送频率为13.56MHz无线电载波信号,以非接触方式耦合到卡片天线上产生电能,电压通常可达2V以上。标准操作距离可达10cm,卡与读写器之间的通信速率高达kbit/s。芯片设计有增/减值的专项数学运算电路,适合公共交通、地铁车站等行业的检票/收费系统,其典型交易时间最长不超过ms。

Mifare1卡芯片内含1KB的EEPROM存储器,其空间被划分为可由用户单独使用的16个扇区。数据的擦写次数超过10万次,数据保存期大于10年,抗静电保护能力达2kV。

Mifare1卡的芯片在制造时具有全球唯一的序列号,具有先进的数据通信加密和双向密码验证功能,还具有防冲突功能,可以在同一时间处理重叠在读写器天线有效工作距离内的多张卡片。

Mifare1芯片内部结构较为复杂,可划分为射频接口、数字处理单元、EEPROM这3大部分,其中数字处理单元又分为若干小部分,如图15.4所示。

◆射频接口:在RF射频接口电路中,含有波形转换模块。它可接收读写器上的13.56MHz的无线电调制频率,一方面送调制/解调模块,另一方面进行波形转换,然后对其整流、滤波,接着对电压进行稳压等进一步处理,最终输出供给卡上的电路工作。

图15.4Mifare1卡逻辑框图

◆防冲突模块:如有多张Mifare1卡处在读写器的天线的工作范围之内时,防冲突模块的防冲突功能将被启动,根据卡片的序列号来选定一张卡片。被选中的卡片将直接与读写器进行数据交换,未被选中的卡片处于等待状态。

◆认证模块:在选中一张卡片后,任何对卡片上存储区的操作都必须经过认证,只有经过密码校验,才可对数据块进行访问。Mifare1卡片上有16个扇区,每个扇区都可分别设置各自的密码,互不干涉。因此每个扇区可独立地应用于一个应用场合,整个卡片可以设计成“一卡通”形式来应用。

◆控制和算术运算单元:这一单元是整个卡片的控制中心,它主要对整个卡片的各个单位进行微操作控制,协调卡片的各个步骤,同时还对各种收/发的数据进行算术运算处理、CRC运算处理等。

◆EEPROM接口:连接到EEPROM。

◆加密单元:Mifare的CRYPTOL数据流加密算法将保证卡片与读写器通信时的数据安全。

表15.1Mifare1卡的存储器组织结构

◆EEPROM:容量为1KB,分16个扇区,每扇区有4个块,每块16字节。其组织结构如表15.1所示。每个扇区的块3也称作尾块,是扇区的控制块,其结构如表15.2所示。前6个字节为密码A(KeyA),永远不能被读出,但在满足一定条件下,可被改写;后6个字节为密码B(KeyB),当密钥使用时是不可读的,但用来存储数据时则是可读的;中间4个字节为权限位,存放本扇区的4个数据块的访问条件。控制块使用两个密码,是为了给用户提供多重控制方式。例如,用户可以用一个密码控制对数据块的读操作,用另一个密码控制对数据块的写操作。其余3个块是一般的数据块。扇区0中是特殊的块,包含了厂商代码信息,在生产卡片时写入,不可改写。其中第0~4字节为卡片的序列号,第5个字节为序列号的校验码,第6字节为卡片的容量“SIZE”字节,第7~8字节为卡片的类型号(Tagtype)字节,其他字节由厂商另加定义。

表15.2中,C1、C2、C3三个数据位表达各块的具体访问权限,下标0、1、2、3分别表示在扇区内的块号。“C13、C23、C33”即为扇区第3块(尾块)的访问权限。为了可靠,访问条件的每一位都同时用原码和反码存储,共存储了两遍。尾块的读写权限的意义如表15.3所示。

表15.2尾块组成及访问权限字节结构表15.3尾块的权限代码与访问权限

(注:N表示不能,A表示KeyA,B表示KeyB,A/B表示KeyA或者KeyB)

在空卡状态下,每个扇区的尾块数据(16进制)为:“0xFFFFFFFFFFFFFF”。空卡时的密码A和密码B均为“0xFFFFFF”,由于密码A不可读,读出的数据显示为“0x”。在空卡默认读写权限下可以利用密码A对所有块进行读写操作,以及更改各块的读写权限,但不可以利用密码B进行读写操作(此时密码B可读)。

权限位为:“0xFF”,由表15.2,得:

C13=0 C12=0 C11=0 C10=0

C23=0 C22=0 C21=0 C20=0

C33=1 C32=0 C31=0 C30=0

C13C23C33=,根据表15.3,密码A不可读,但通过密码A校验后,可改写密码A,权限字节及密码B的读写权限均可用密码A读写。

另外,由表15.3可知尾块的下列属性:密码A永远不可读,因此一旦设定就必须记住,不过在、、、几种情况下可以改写;访问权限字节仅在、、三种状态下可写;密码B在、、、四种状态下可写,在、、三种状态下可读(此时密码B的6个字节用于存储数据,不再作为密钥)。

数据块的读写权限如表15.4所示。对数据块的增值、减值操作,仅在状态“”和“”下可进行。而第0块(厂商数据块)虽然也属于数据块,但是它不受权限字节影响,永远只读。在空卡情况下,数据块的读写权限代码C1iC2iC3i=,密码A和密码B的读写访问权均为“A/B”,表示可用密码A或者是密码B对各数据块进行读写,但实际上由于在空卡默认状态下密码B是可读的,所以不可用密码B读写数据。

表15.4数据块(i=0、1、2)的权限代码

电路设计

RFID卡读写器主板的电路原理图如图15.5所示,由单片机、与PC的通信接口、键盘、LCD显示等部分组成。RFID卡读写器射频处理模块及天线等的电路图如图15.6所示。

图15.5RFID卡读写器主板电路原理图图15.6RFID卡读写器射频处理模块

射频处理模块(也称为射频基站模块)是射频卡读写器的关键部件,RFID卡读写器通过该模块与射频卡进行数据通信。射频处理模块的主要部件就是射频基站芯片,这里我们选用Philip公司的MFRC。它是13.56MHz非接触式通信中高集成读卡IC系列中的一员,利用先进的调制和解调概念,完全整合了在13.56MHz下任何类型的被动非接触式通信方式和协议。它内部包括微控制器接口单元、模拟信号处理单元、IS0A规定的协议处理单元,以及Mifare卡特殊的Cryptol安全密钥存储单元,可以与所有兼容Intel或Motorola总线的微控制器直接连接,其内部还具有64个字节的先入先出(FIFO)队列,可以和微控制器实现高速传输数据。

MFRC内部的发送器部分无需增加有源电路就能够直接驱动近操作距离的天线(可达10cm),接收器部分提供一个高效的解调和解码电路,数字部分处理ISOA帧和错误检测。

天线部分主要包括低通滤波器、接收电路、天线匹配电路和天线线圈,天线拾取的信号经过天线匹配电路送到RX脚,MFRC的内部接收器对信号进行检测和解调,并根据寄存器的设定进行处理。然后数据被发送到并行接口,由单片机进行读取。制作完成的实验样机如图15.7所示。

图15.7制作完成的实验样机

软件设计及使用

程序采用结构化模块方式设计,条理清晰、结构完善,便于整个程序的装配。限于文章的篇幅,本文不对程序作详细介绍,这里只对相关的读写过程作简单介绍。

读写卡是一个非常复杂的程序执行过程,要执行一系列的操作指令,调用多个子函数,包括装载密码、询卡、防冲突、选卡、验证密码、读写卡、停卡等。这一系列的操作必须按固定的顺序进行。在没有Mifare1卡片进入射频天线有效范围时,LCD显示“欢迎光临”;当有Mifare1卡片进入到射频天线的有效范围时,读写器验证卡及密码成功后,将卡号、消费金额、充值金额和余额等数据作为一条记录存入EEPROM存储器中,并同时在LCD上显示出来。

1.写(设置)RFID卡

读卡器对卡进行数据的读写、密码的管理和功能的测试,可以进行寻卡、防冲突、选择和终止等功能。可对RFID卡的16个扇区进行密码的下载及A、B组密码的选择。可对每个扇区3个块的数据进行读写。块值操作包括初始化、读值、加值、减值、密码的修改等。

2.读RFID卡

首先寻卡,进入卡处理程序,紧接着防冲突,成功之后,加载密码,之后便可对卡进行数据的读取和操作。完成之后等待卡的拿开,确保每次只读一次数据。

3.读写器与射频通信程序

RFID卡与读写器间的通信流程如图15.8所示,各功能定义如下。

图15.8RFID卡与读写器间的通信流程

(1)复位应答:射频卡的通信协议和通信波特率是定义好的,当有射频卡进入读写器的操作范围时,读写器以特定的协议与它通信,验证卡片的卡型。

(2)防冲突机制:当有多张卡进入读写器操作范围时,防冲突机制会从其中选择一张进行操作,未选中的则处于空闲模式,等待下一次选卡,该过程会返回被选卡的序列号。

(3)选择卡片:选择被选中的卡的序列号,同时返回卡的容量代码。

(4)3次互相确认:选定要处理的卡片之后,读写器就确定要访问的扇区号,并对该扇区密码进行密码校验。在3次相互认证之后,就可以通过加密流进行通信。当选择另一扇区时,则必须进行另一次密码校验。

(5)对数据块的操作:读一个块、写一个块、对数值块进行加值、对数值块进行减值、将卡置于暂停工作状态。

进入等待状态时,RFID卡读写器的屏幕上显示“欢迎光临”(见图15.9)。图15.5中按键S1~S4的作用如下:按动S1后,读写器进入消费工作模式(见图15.10);按动S2后,读写器进入充值模式(见图15.11);按动S3后,读写器进入注册模式(见图15.12);按动S4后,读写器进入读卡工作模式(见图15.13)。

图15.9进入等待状态图15.10消费工作模式图15.11充值模式图15.12注册模式照片图15.13读卡工作模式
1
查看完整版本: 单片机实例分享,RFID卡读写器的设计