通用射频卡读写模块的设计流程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

通用射频卡读写模块的设计流程

本设计为非接触式射频卡读卡器,它是基于单片机AT89S52与Philips公司的MF RC500嵌入式读写芯片设计开发的,整个系统包括由A T89S52构成控制模块,由MF RC500构成的射频模块,天线模块,由LCD1602构成的显示模块,通信模块以及若干标签等组成。它能完成对Mifare1卡所有读写及控制操作,并且还可以方便的嵌入到其他系统(如:门禁,公交)中,成为用户系统的一部分。

一.设计思想

本设计所研究的读卡器为非接触式的静距离无限读卡系统。该系统为无线通信系统,对通信距离和通信信息的可靠性等都需进行研究。主要考虑的问题在以下几个方面:

①不同的射频读卡器系统拥有不同的通信频带,RFID按应用频率的不同分为低频(LF)、高频(HF)、超高频(UHF)、微波(MW),相对应的代表性频率分别为:低频135KHz以下、高频13.56MHz、超高频860M-960MHz、微波2.4G、5.8G,在设计系统时,标签与天线和读卡芯片模块的带宽需严格匹配,否则将无法进行通行或出现通信错误。本设计中采用的为高频频带,在天线设计过程中需严格遵守天线设计的参数要求,设计与高频相匹配的天线,并选用合适的标签,并且标签和射频芯片的需遵守相同的通信标准才能够成功的进行通信。

②由于RFID通信采用的无线通信方式,无线通信的通信信道是开放性信道,因此对通信安全有比较严格的要求,因此在通信时需要有严格的通信加密方式,才能够确保信息的安全性。

③在读卡的过程中,由于可能同时存在有多个标签在读写范围内,要能识别正确的标签,则需设计相应的防碰撞法则,以能够选择出对应的标签进行操作并防止出现通信混乱。

二.MF RC500芯片概述

1. MF RC500芯片特点

MF RC500是PHILIPS公司生产的高集成度TYPEA读写器芯片。其主要性能如下:

●载波频率为13. 56MHz;

●集成了编码调制和解调解码的收发电路;

●天线驱动电路仅需很少的外围元件,有效距离可达10cm;

●内部集成有并行接口控制电路,可自动检测外部微控制器(MCU) 的接口类型;

●具有内部地址锁存和IRQ线,可以很方便地与MCU接口;

●集成有64 字节的收发FIFO缓存器;

●内部寄存器、命令集、加密算法可支持TYPE A 标准的各项功能,同时支持MIFARE 类卡的有关协议;

●数字、模拟、发送电路都有各自独立的供电电源。

基于以上特点,用MF RC500极易设计TYPE A型卡的读写器,可广泛用于非接触式公共电话、仪器仪表、非接触式手持终端等领域。

2.引脚功能

MF RC500为32脚SO封装,其引脚功能如表1-1 所列。需说明的是:某些引脚(带*号) 依据其所用MCU(微控制器) 的接口情况具有不同功能。

3. 工作原理

MF RC500 的内部电路框图如图 1.1 所示,它由并行接口及控制电路、密钥存贮及加密算法(Cypto1)、状态机与寄存器、数据处理电路、模拟电路(调制、解调及输出驱动电路)等组成。

4.MF RC500寄存器设置

MF RC500芯片的内部寄存器按页分配, 并通过相应寻址方法获得地址。内部寄存器共分8页,每页有8个寄存器,每页的第一个寄存器称为页寄存器, 用于选择该寄存器页。每个寄存器由8位组成,其位特性有四种: 读/ 写(r/ w) 、只读(r) 、仅写(w) 和动态(dy) 。其中dy 属性位可由微控制器读写, 也可以在执行实际命令后自动由内部状态机改变位值。微控制器MCU 通过对内部寄存器的写和读,可以预置和读出系统运行状况。寄存器在芯片复位状态为其预置初始值。了解内部寄存器的设置对于软件编程至关重要,表1-2 给出了寄存器的配置情况。

NWR NRD NCS ALE A0 A1 A2 D0 D1 D2 D7

PSTPD IRQ

DSCIN AVSS VMID

图1-1 MF RC5OO 芯片内部寄存器

3 接受与解码控制 18~1F Page ,RxControl1,DecodeControl ,BitPhase ,RxThreshold ,PreSet1D ,RxControl2,ClockQControl

4 定时和通道冗余码

20~27 Page ,RxWait ,ChannelRedundancy ,CRCPresetLSB , CRCPresetMSB ,CRCPreSet25,MFOUTSelect ,PreSet27 5 FIFO ,定时器和IRQ 引脚 28~2F Page ,FIFOLevel ,TimerClock ,TimerControl ,TimerReload , IRQPinConfig ,PreSet2E ,PreSet2F 6 备用 30~37 Page ,RFU

7

测试控制

38~3F

Page ,RFU ,TestAnaSelect ,PreSet3B ,PreSet3C ,TestDigiSelect ,RFU ,

5.并行接口

MF RC500芯片可直接支持各种微控制器(MCU) , 也可直接和PC 机的增强型并行接口(EPP) 相连接,每次上电(PON) 或

硬启动(Reset) 后,芯片会复原其

并行接口模式并检测当前的MCU 接

口类型, 通常用检测控制引脚逻辑

电平的方法来识别MCU 接口, 并利

用固定引脚连接和初始化相结合的

方法实现正确的接口。图1-2给出

了本次设计相应的连接接线图。

6. EEPROM 存贮器

MF RC500 的EEPROM 共有32 块, 每块16 字节。EEPROM 存贮区分为四部分:第一部分为块0, 属性

为只读,用于保存产品的有关信息;第二部分为块1 和块2, 它们具有读/ 写属性,用于存放寄存器初始化启动文件; 第三部分从块3 至块7, 用于存放寄存器初始化文件, 属性为读/ 写; 第四部分从块8 至块31,属性为只写, 用于存放加密运算的密钥, 存放一个密钥需要12 字节, EEPROM 密钥存放区共可存放32 个密钥, 实际密钥长度为6 字节, 存放在紧邻的12 个EEPROM 字节地址中。一个密钥字节的8 位必须分开存放, 若设密钥8 位为K7,K6,K5,K4,K3,K2,K1,K0。则存放在两个相邻字节时为k7k6k5k4 K7K6K5K4 和k3k2k1k0 K3K2K1K0 , 例如密钥字节为A0H 时, 则存放内容为5AH 、F0H 两个字节。

7. FIFO 缓存

8×64位的FIFO 用于缓存微控制器与芯片之间的输入/输出数据流。可处理数据流长度达64字节。FIFOData 寄存器作为输入/输出数据流的并/并转换口; FIFOLength 寄存器用于指示FIFO 缓冲器的字节存储量、写时增量、读时减量; FIFO 缓冲器的状态(如空、溢出等) 可由寄存器PrimaryStatus 、FIFOLevel 的相关位指示;对FIFO 的访问则可通过微控制器送出有效命令来实现。

8.中断请求

芯片的中断请求有定时设置到、发送请求、接收请求、一个命令执行完、FIFO 满、FIFO 空等六种。0页寄存器InterruptEn 的相应位(r/w 属性)用于相应中断请求使能设置; InterruptRq 的相应位(dy 属性)用于指示使能情况下的相应中断出现。任何允许中断产生时,0 页寄存器PrimaryStatus 的IRQ 位(r 属性)可用于指示中断的产生,同时可由引脚IRQ 和微控制器进行连接以产生中断请求信号。

9. 定时器

MF RC500内有定时器,其时钟源于13.56MHz 晶振信号,13.56MHz 信号由晶振电路(外

NCS A2 A1 A0 D0~D7 ALE NRD NWR 片选

高 高

复用地址/数据线 地址所存使能 读选通 写选通

图1-2 复用方式连接图

相关文档
最新文档