ImageVerifierCode 换一换
格式:DOCX , 页数:78 ,大小:1.80MB ,
资源ID:9490180      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9490180.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于RC的非接触式IC卡读卡器设计含程序.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于RC的非接触式IC卡读卡器设计含程序.docx

1、基于RC的非接触式IC卡读卡器设计含程序1 绪论11 课题的研究背景工业3.0将世界带入信息化的时代,信息技术的发展日新月异,一个以电子商务为主要特征的经济时代成为主要潮流,智能射频卡是一种将用户数据最快捷地送入到环球信息互联网并获得信息的最有用的工具,智能IC卡成为了人们身份识别和实现电子支付的手段,影响了我们生活工作的方式。智能IC卡与普通磁卡对比具有更高的安全性,所以,对智能IC卡的功能进行研究是非常有意义的。智能IC卡,又是CPU卡。顾名思义, 这种卡片上集成了存储器、通信接口及CPU,具有存储数据、对外交流和数据处理的能力,因此,又是一片卡上的单片机系统。为了使这一系统中的硬件和软件

2、资源充分得到利用, 卡上存放了进行数据读写和安全通信的协议,以及管理这些程序的Chip Operating system卡上操作系统。这操作系统是按照IC卡性能特征而专门设计的操作系统,它极大地不同于计算机上常见的DOS和WINDOWS 等操作系统,IC 卡存储器的容量大小和CPU的性能的限制着Chip Operating system卡上操作系统。主要功能是:控制IC卡与读卡器的数据交流;管理IC卡上各种存储器;在IC卡内执行读写器发来的各种操作命令。有了CPU与COS系统,成就了智能IC卡。所以,智能射频卡具有超强的管理性能,提供很高的数据安全性和可靠性1。1.2 非接触式IC卡1.2.1

3、 非接触式IC卡的简介非接触式IC卡又称射频卡,由IC芯片、感应天线组成,封装在一个标准的PVC卡片内,芯片及天线无外露部分2。它是全球上最近发展成熟的一项技术,射频识别技术和IC卡技术被成功地结合起来,解决了无源和非接触这一难题,无源即卡中没有电源,这是电子科学领域的一大突破2。卡片接近读写器天线产生电磁场的一定空间范围 (通常为50100mm),通过电磁波的发送来完成数据的读写操作。1.2.2 非接触式IC卡的特点(1)操作快捷卡与读卡器之间的通讯是非接触的。不用定向使用和插拔卡。操作时,卡也可以不用拿出,可以放在钱夹、裤子口袋中,极大加快了刷卡速度。同时,卡与读卡器进行通信时的载波频率较

4、高,卡内芯片可以在较高的频率时钟下工作,提高了二者的通信速率3。(2)高抗干扰性射频卡具有防冲撞机制,读卡器可以同一时间读写多张卡片,并且不会导致卡片之间产生数据干扰,用算法逐一选定一张卡,相当于读卡器添加了“并行”处理功能。(3)具有多种工作距离目前,IC卡的工作距离有好几米的远距离IC卡,可用于车库门禁收费系统中,又有工作距离为几厘米、可作为电子支付的近距离IC卡,使得应用灵活多变。(4)高可靠性非接触式IC卡与读卡器之间无机械接触,不会产生由接触通信而导致的各种故障,同时,无需担心由于触点残损或金属生锈而导致卡片接触不良4,增强了通信的可靠性,增加了读卡器和卡的寿命。而且尘土、潮气和震动

5、的干扰不会影响无线电磁波,使得非接触式IC卡在多变的环境下使用。(5)高安全性厂商在产品投入批量生产之前,将卡的卡号一次性写入第一个存储区的块0中,以后不可再更改,保证此的序列号是唯一的。读写前射频卡与读写系统要进行三次应答认证,并且通信过程会产生随机数和加密的数据,防止各种破解和篡改,卡内每个存储区的访问密码和条件都不同。1.2.3 非接触式IC卡的发展趋势随着非接触式IC卡的广泛应用与迅速发展,从目前看来,非接触式IC卡主要有以下几个发展趋势:(1)大容量“一卡多用”的新功能处于新的阶段,这种功能使得目前卡内16K的存储容量远远不能满足要求。将来用户只用带着的一张具有多个功能IC卡,既能成

6、为身份证和护照,又可以当做电子钱包、工作证,能存储个人简历,因此,研发更大卡内存储器的容量变得重要。除了目前已经广泛使用的E2PROM存储器,一些新的存储器技术也正在开发,列如Flash技术和铁电技术,未来IC卡行业使用的主要存储器极大可能是铁电存储器(FeRAM)4。(2)更强的处理能力IC卡在日常生活的普及,相关技术迅速发展,我们需要一张具有更强的处理能力的IC卡,有两种增强处理能力的方法:其一是增加具有多样寻址方式的汇编指令,它能加快寻找有效数据的地址的速率,减少指令译码的工作量;二是增加数据总线位数到32位,同时还可以提高内部时钟频率从5MHz到10MHz。(3)低功耗无论非接触式IC

7、卡的是有源还是无源,低压低功耗设计对卡内芯片都是非常重要。可以使用新型低功耗电池,达到增加电源提供给IC卡的时间,相当于增加了卡的使用时间;可以增加无源非接触式IC卡的工作距离,远距离卡在通信效率和快捷性上都超过了近距离卡,远距离低功耗成为非接触式IC卡发展的必然趋势4。(4)发展复合式IC卡复合式卡的意思是双界面卡,接触式和非接触式的通信工作方式集成在一张卡上,也就是一卡两用,所以在结构上既有天线也有触点,使用起来更加灵活多变。如今大多数国际大企业都成功开发并开始使用复合式卡。1.3 非接触式IC卡读卡器发展状况现在,由于应用的场合不同,国内外出现大同小异的非接触式IC卡读卡器,有读卡器模块

8、、便携式读卡器、高低频读卡器、双频标签读卡器、微波读卡器等各种各样的产品5。这些产品有适合读写的距离大大不同。但都有一个共同的特征,各种产品之间的区别不大,同质化严重,性能也相似,结构上都是读卡器芯片结合单片机,而并没有核心技术,缺乏成套技术的自主产权。国外公司手中拥有读卡器的读卡器芯片的核心技术的控制权,在整个读卡器市场的利润,国外公司如TI、NXP等芯片厂商占绝大部分。随着市场的发展,这些国外公司又同时在加强对整个非接触式IC卡技术的掌控,却有新的实力雄厚的ST(意法半导体)公司加入这一行,许多公司也觊觎这一迅速发展的市场。TI和NXP公司牢牢控制着市场的主动权,提供从读卡模块、读卡器、读

9、卡芯片及系统应用等一整套设备及服务。令人欣慰的是,我国在这项技术的研究方面发展迅猛,在IC卡身份识别技术研究及产品研发方面,我国已经能够独立开发微波、低频和高频波的电子标签,拥有系统集成能力及读写器的技术。1.4 课题的设计内容非接触近距离识别技术主要研究基于射频原理的非接触IC卡识别技术,具有操作快捷便利、可靠性高、安全性好、寿命长、防伪性好、抗干扰能力强等优点,被广泛应用于各种身份识别、收费系统中。本次研究将掌握非接触式IC卡读卡器的原理,实现对非接触式IC卡的读写,能够正确读取IC卡的序列号及读卡用户信息,并通过计算机将信息显示出来。2 非接触式IC卡Mifare 1 S50技术支持2.

10、1 Mifare 1 S50简介MIFARE 1 s50是非接触智能IC卡。其通信协议符合ISO/IEC 14443A,通讯层(MIFARE RF 接口)符合ISO/IEC 14443A标准的第2和第3部分。其安全层支持域检验的CRYPTO1数据流加密。在MIFARE卡结构中,芯片与一个几匝的天线线圈相连接,并封装到塑料中,制作了一个无源的近距离卡,不需要电池。当卡接近读写器天线时,进入带有能量的电磁场,高速的RF通讯接口将以106 kBit/s 的速率传输数据6。图2.1 Mifare 1 s50卡2.1.1 Mifare 1 S50的特性(1) MIFARE RF 接口 (ISO/IEC

11、14443 A) 非接触数据通信并提供能量(无需电源) 通信距离:大约100mm (取决于天线尺寸匝数) 工作频率:13.56 MHz 数据传输速率:106 kbit/s 高度数据安全性:16位CRC,奇偶校验,位编码,位计数 多卡防冲撞 典型票务交易: 100 ms(2) EEPROM 1 Kbyte,分为16个区,每区4个块,每块16字节。 用户自定义存储块的读写条件 数据可存储长达10年 可重复写入10万次(3) 安全性安全的重点是防盗窃。相互随机数和应答认证、数据加密和报文鉴别检查和,防止各种破解和篡改,使其更适于票务应用。不可更改的序列号,保证了每张卡的唯一性7。 相互三轮应答认证(

12、ISO/IEC DIS9798-2) 射频通道数据加密 每个区的尾块有两个密钥,按应用场合不同密钥分级 每张卡的序列号唯一 在通信过程中以发送密钥保护对存储区的访问权2.1.2 结构功能说明图2.2 Mifare卡内部结构图2.3 Mifare卡的功能说明RF接口: 调制解调器 检波器 时钟发生器 上电复位 稳压器防冲突:一一选定通信范围内的几张卡,然后先后操作。认证:在对任意存储器的存储块进行读写操作之前得先通过认证,必须各个存储区指定的密钥相匹配才能获得访问资格。 控制和算术逻辑单元:写入特定的冗余格式的数据,可以读写、加减。EEPROM接口加密单元:每次数据交换的 CRYPTO1 数据流

13、都进行加密,防止数据被非法盗窃。EEPROM: 1 KB,分16区,每区4块。每一块有16字节。2.1.3 存储区结构1024 x 8 bit EEPROM存储器分为16区,每区4块,每块16字节。 在擦处后的状态下,EEPROM的单元读为逻辑“0”,写后的状态下读为“1”。表2.1 存储区扇区结构块内字节编号扇区块0123456789ABCDEF说明153KEY A控制位KEY B扇区15尾块2数据1数据0数据143KEY A控制位KEY B扇区14尾块2数据1数据0数据:13KEY A控制位KEY B扇区1尾块2数据1数据0数据03KEY A控制位KEY B扇区0尾块2数据1数据0制造商占

14、用块(1)制造商占用块第1个区的第1个块(块0)。它含有卡的序列号、检查字节和制造商数据。由于安全和系统要求,此块只能由制造商在生产过程进行一次编程。用户对块0只能进行只读,前4个字节是卡的序列号,此值唯一。图2.4 块0的存储结构(2)数据块各区均有3个16字节的块用于存储数据,除区0只有两个数据块以及一个只读的厂商代码块。数据块可以通过读写控制位设置为: 读写块,比如用于非接触门禁系统,存储用户资料。 数值块,可以加减,可作电子钱包的用途。在进行任一数据块操作之前,必须先通过认证环节。此次研究我只使用读写块功能,用于存储用户的信息,我将自己的名字存储到0区的块1中。(3)尾块各区都有一个尾

15、块,存有:密钥A和B(可选),读块时返回逻辑“0”。该区四个块的读写条件,存储在字节6至9 。读写控制位也指定了数据块的类型(读写块或数值块)。每张卡的密钥A的默认密码是6个字节的“FF”。如果不需要密钥B,块3的最后6字节可以用作数据字节,尾块的字节9可用于用户数据,因为此字节享有与字节6、7、8相同的读写权限7。表2.2 尾块的存储结构字节号0123456789101112131415说明密钥A读写条件密钥B(可选)2.2 通信原理图2.5 通信流程图读写器发出或根据commandReg寄存器里得到的命令,按照对应区访问条件,再由数字控制单元来处理。2.2.1 寻卡(REQUEST)读卡器

16、向所有在天线范围内未进入休眠状态的卡发出的请求(0x26)命令,进入电磁场的卡被唤醒后,发送请求应答码(ATQA 符合ISO/IEC 14443A)。2.2.2 防冲突循环(ANTICOLL)在防冲突过程中,读回一张卡的序列号。若在读卡器的通信范围内同时有几张卡,这过程可以通过唯一序列号一一选定,并进行下一步操作。没被选定的卡转入待命状态,等待新的请求命令。2.2.3 选卡(SELECT CARD)然后选定卡片,得到校验码,将2个字节的卡片类型、4个字节的序列号和1字节的校验码进行CRC计算,将其发送给卡片,通信成功,则返回SAK(选择确认)SAK 1字节+2字节CRC校验(0x18(24)共

17、3个字节)。2.2.4 三轮认证(3 PASS AUTHENTICATION)选卡后,读写器指定后续读写的存储器位置,并用相应密钥进行三轮认证8。认证成功后,所有的存储器操作都是加密的。图2.6 三轮认证的流程图认证过程:A环:卡片向读卡器发送一个随机数据RB;B环:读卡器发出一组携带随机数据RA的令牌数据TOKEN AB;C环:当卡片收到令牌数据TOKEN AB后,对TOKEN AB进行解密并得到RB,校验得到的RB与A环中发出的RB是否相同;D环:若校验得到的RB与A环中发出的RB相同,则卡片再次向读卡器发出令牌数据TOKEN BA;E环:读卡器收到令牌数据TOKEN BA后,对TOKEN

18、 BA进行解密并得到RA;校验得到的RA与B环中发出的RA是否相同。如果以上的每一个环节都能顺利进行,每次校验结果都相同,则整个的认证过程将成功。2.3 存储器读写在此强调,必须先依次通过防冲突和密钥认证过程,才能进行存储器操作。先把该区的访问条件设置好了,区块才会执行相对应的操作。表2.3 存储器操作说明存储器操作操作说明使用块型读读存储器块读写、数值和尾块写写存储器块读写、数值和尾块增值增加块的内容,并将结果存入内部寄存器数值减值减少块的内容,并将结果存入内部寄存器数值转存将内部寄存器内容写入块中数值恢复将块中内容写入内部寄存器数值2.3.1 读写条件对该区块是读是写需要设置3个控制位,并

19、以原码和反码格式存放在每个区的尾块中。这3个读写控制位还控制密钥A和B的访问权限。如果知道正确的密钥,并且对应读写条件许可,读写条件是可以修改的9。表2.4 控制位对块的影响读写控制位有效命令块说明C13 C23 C33read, write3尾块C12 C22 C32read, write, increment, decrement, transfer, restore2数据块C11 C21 C31read, write, increment, decrement, transfer, restore1数据块C10 C20 C30read, write, increment, decreme

20、nt, transfer, restore0数据块 在表2.4中访问条件的每一位都用符号来表示,其中C13,C23,C33用来控制本区块3的访问条件;C1X,C2X,C3X(X=0-2)用来控制本区块0-块2的访问条件8。在每一次读写存储区时,存储条件必须正确。如果发现是错误的,会锁死这个区块。2.3.2 尾块的读写条件对密钥和控制位的读写取决于尾块(块3)的访问控制位,分为“禁止”、“KEY A”、“KEY B”和“KEY A|B”( KEY A或KEY B)9。图2.7 访问条件的组成 为了安全起见,访问条件的每一位即用原码又用反码存储,相当于存放了两遍。特定的数据存放于访问条件的最后一个

21、字节(9)。表2.5 块3的访问条件访问控制位所控制的访问对象注释KEY A访问控制位KEY BC1C2C3读写读写读写000禁止Key AKey AKey BKey AKey AKey B可读010禁止禁止Key A禁止Key A禁止Key B可读100禁止Key BKey A|B禁止禁止Key B110禁止禁止Key A|B禁止禁止禁止001禁止Key AKey AKey AKey AKey AKey B可读传输配置状态011禁止Key BKey A|BKey B禁止Key B101禁止禁止Key A|BKey B禁止禁止111禁止禁止Key A|B禁止禁止禁止附注2.1 灰色行为key

22、B可读并可用于存储数据的访问控制条件。 如果C1、C2、C3=000,则key A不能读,而持卡人在正确输入key A后,可以改写key A,读访问条件和读写key B。 Key A在任一条件下都禁止读出,但达到特定条件下可以修改。Key B作为密钥使用时,也是不能读出,但达到一定条件(输入正确的key A)下能读出时,这时存放在key B位置的内容为数据而不是密钥9。尾块和key A被预定义为传输配置状态。因为在传输配置状态下key B可读,新卡必须用key A认证。因为访问控制位本身也可以禁止访问,所以个人化时应当特别小心8。2.3.3 数据块的访问控制条件不同的控制位的设置,相关的用途也

23、不同。 读写块:可读、写。 数值块:运行另外的数值操作加值、减值、转存和恢复。在用于非充值卡的一种情况(001)下,只能够读和减值。在另一种情况(110)下,可以用key B充值。 制造厂商块:只读,不受访位控制位设置的影响! 密钥管理:在传输配置状态下,必须用key A 认证。表2.6 数据分组的访问条件访问控制位所控制的访问操作用途C1C2C3读写加值减值转存恢复000key A|B1key A|B1key A|B1key A|B1传输配置状态010key A|B1key B1禁止禁止读写块100key A|B1key B1禁止禁止读写块110key A|B1key B1key B1key

24、 A|B1数值块001key A|B1禁止禁止key A|B1数值块011key B1key B1禁止禁止读写块101key B1禁止禁止禁止读写块111禁止禁止禁止禁止读写块3 MF RC522射频芯片3.1 概述MF RC522是具有高集成度读写卡芯片,也是一款常用的非接触式通信芯片,工作于13.56MHz的时钟频率。也是NXP公司针对三表应用推出的一款低 电压、低成本、体积小的非接触式读写卡芯片,是智能仪表和便携 式手持设备研发的较好选择10。MF RC522 利用了先进的调制和解调概念,完全集成了在13.56MHz 下所有类型的被动非接触式通信方式和协议11。支持 ISO14443A

25、的多层应用。其芯片的TX1和TX2引脚可驱动读写器天线,发送经过调试的13.56MHz载波能量信号,该信号上就有我们需要的数据。接收到的载波信号会通过接收器解调成有效信号,有效信号再经过A/D转换器转换成数字信号,该信号会依照ISO14443A协议处理,先进行错误检测(奇偶 &CRC)。另外,它也能对数据进行算法加密,MFRC522 支持MIFARE系列的卡,可验证该系列产品。相比于其他芯片,它具有更快的近距离双向数据传输速率通信,高达424kbit/s。MF RC522 与MF RC500和 MF RC530相比,即相似点也有很多差异。它与微控制器间的数据交换可用SPI串行通信,也能根据应用

26、场合功能不用,采用I2C 或串行UART(类似RS232)模式。当然,SPI通信连线更少,制作的PCB 板体积更小,降低成本。3.2 特性 高集成度的调制解调电路; 可将发送器控制的TX管脚直接驱动天线; 支持 ISO/IEC 14443 TypeA 通信协议; 读写器模式中的ISO 14443A协议的工作距离高达60mm,与天线的长度和匝数有关。 支持 ISO 14443 212kbit/s 和424kbit/s 的更高传输速率的通信。 支持 MIFARE® Classic 加密; 支持的主机接口:-10Mbit/s 的SPI 接口-I2C 接口,快速模式的速率为400kbit/s,

27、高速模式的速率为3400kbit/s-串行UART,传输速率高达1228.8kbit/s,帧取决于RS232 接口,电压电平取决于提供的管脚电压 64 字节的发送和接收FIFO 缓冲区; 灵活的中断模式; 可编程定时器。 具备软、硬件掉电和发送器掉电 3 种节电模式,其中发送器掉电则是关闭内部天线驱动器,即关闭电磁场; 内置温度传感器,以便在芯片温度过高时自动停止 RF 发射; 采用相互独立的多组电源供电,以避免模块间的相互干扰,提高工作的稳定性; 具备 CRC 和奇偶校验功能,CRC 协处理器的16 位长CRC 计算多项式固定为:x16+x12+x5+1,符合ISO/1EC14443 和CCTITT 协议12; 内部振荡器,连接 27.12MHz 的晶体; 2.53.3V 的低电压低功耗设计; 工作温度范围-30+85; 5mm5mm0.85mm 的超小体积。3.3 功能结构3.3.1 简化的MF RC522框图图3.1 简化MF RC522框图模拟接口用来处理模

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1