非接触式IC卡读写器设计论文.docx
《非接触式IC卡读写器设计论文.docx》由会员分享,可在线阅读,更多相关《非接触式IC卡读写器设计论文.docx(57页珍藏版)》请在冰豆网上搜索。
![非接触式IC卡读写器设计论文.docx](https://file1.bdocx.com/fileroot1/2023-6/3/df92c8b7-8b81-43db-874e-6d5f9774b29c/df92c8b7-8b81-43db-874e-6d5f9774b29c1.gif)
非接触式IC卡读写器设计论文
2008届毕业生
毕业论文
题目:
非接触式IC卡读写器设计
院系名称:
专业班级:
学生姓名:
学号:
指导教师:
教师职称:
2011年05月10日
摘要
本文介绍了以AT89S52单片机作为微控制器,以射频技术为核心,基于PHILIPS公司MF-RC500模块的非接触式IC卡读写器,阐述了该系统的组成、工作原理以及相应的软硬件设计。
本文阐述了非接触式IC卡技术的基本原理,并对其读卡器在工程上的设计和开发作了研究。
论文描述了IC卡系统的发展和现状,通过对射频识别技术原理的研究,揭示了射频IC卡系统的工作原理。
介绍了TypeA型常用的卡片MF1ICS50和对应读卡器的设计方法和电路(使用专用射频读卡集成芯片RC500),并详细阐述了系统各个模块的组成和原理,给出了天线的设计规范。
然后根据课题要求详细介绍了自主设计的一款TypeA型读卡器的核心部件—射频模块的实现方案和具体电路。
最后介绍了系统设计的软件部分,重点介绍了RC500的主要特性、基本指令集以及与Mifare1非接触IC卡数据通信的一些重要模块的编程思路和编程方法,给出了两个编程实例。
实际测试证明该读写器完成了基本功能,运行稳定。
关键词:
微控制器;非接触式IC卡;读写器;MF-RC500;射频识别
TitleDesignofReaderforContactlessICCard
Abstract:
Withmicro-computerAT89S52ascontroller,theradiofrequencytechnologyascore,thispaperdescribesthesystem’scomposition、workprincipleanddesignofhardwareandsoftwareofcontactlessICcardread-writedevicebaseonMF-RC500ofPHILIPSCompany.
ThispaperintroducesthebasicprincipleofthecontactlessICcardtechnologyandtheapplicationofICcardreader.FirstthepaperdescribesthedevelopmentandthestatusquooftheICcardssystem.ThentheworkprincipleoftheradiofrequencyICcardsystemisdiscoveredthroughstudyingtheprincipiumoftheradiofrequencytechnology.Whereafter,thepaperintroducesthecardMF1ICS50whatisusuallyusedinthecardsofTypeA,thedesignmethodandthecircuitofthecardreaderdevice(thedeviceusetheradiofrequencechipreadermoduleRC500),andindetailanalyzestheprincipleofeverymodule,simplyPointstothedesignrulesoftheantennacircuit.Then,thepaperindetailintroducestheimplementprojectaboutcircuitandprogramofthekemelcomponentsofaTypeAICcardsreader,theRFmodule,whatiscompletelymadebydo-it-yourself.Intheend,thepaperintroducesthesoftwareofthesystem,andthemainpropertyandbasicintructionsetofacontactlessICcardreaderRC500basedonPhilips’MIFARE1areintroduced.AndsomeidealsandmethodsofprogrammeaboutthebasilicmodulewithdatacommunicationbetweenthecardsandRC500arepresented.Finallythetwoexamplesofprogrammearegiven.TheRead-WriteDeviceisstabilizedthroughtest.
Keywords:
MCU;ContactlessICCard;Read-WriteDevice;MF-RC500;RadioFrequencyIdentification;
目次
1绪论
1.1课题研究的背景和意义
IC卡是集成电路卡(IntegratedCircuitCard)的英文简称,在有些国家也称之为智能卡、微芯片卡等,IC卡是在较为原始的磁卡的基础上发展起来的,它的最初设想是由日本人提出来的。
1969年12月,日本的有村国孝提出一种制造安全可靠的信用卡方法,并于1970年获得专利,那时叫ID卡(IdentificationCard)。
1974年,法国的罗兰·莫雷诺(RolandMoreno)发明了带集成电路芯片的塑料卡片,并取得了专利权,这就是早期的IC卡。
1976年法国布尔(Bull)公司研制出世界第一枚IC卡[1]。
早期的IC卡系统是接触式的,它有其本身不可克服的缺点,如接触磨损、交易速率慢、难以维护、基础设施投入大等。
随着信息业和服务业的全球化,在一些场合,对信息载体的便携性、安全性及易用性等方面提出更高的要求,于是非接触式IC卡以其无机械磨损、容易维护、方便使用等优点,成为IC卡中潜力最大的新军而备受国内外业界的瞩目。
非接触式IC卡系统是当今世界先进的射频技术和IC卡技术相结合的产物,是世界上最近几年发展起来的一项新技术,它成功地将射频识别技术和IC技术结合起来,解决了无源和免接触这一难题,是电子器件领域的一大突破,使卡片在靠近读写器表面时即可完成卡中数据的读写操作。
非接触式IC卡一经问世,便立即引起广泛的关注。
非接触式IC卡操作方便、抗干扰性高、可靠性高、安全性高的特点,使得它在一些接触式IC卡不适用或者无法使用的场所,具有无可比拟的优势,被广泛应用于公交、收费、门禁系统、考勤系统等领域[2]。
目前非接触式IC卡有很多不同的标准,如IS014443A和IS014443B等,符合不同标准的卡片在不同的领域内相互渗透和竞争。
卡片类型的多样性决定了读卡器的多样性,而市场的多样性则决定了即使是同类型的应用,也可能使用不同类型的卡片,若读卡器只能读取某一种类型的卡片,那么在处理这个应用时,必将需要多台读卡器,造成资源的重复浪费,这样的读卡器必将不能适应市场的需求,这就对读卡器的读卡能力提出了更高的要求。
设计出一种能读取多种类型卡片的读卡器,既是市场应用的需求,也是未来的发展趋势。
目前,读卡器已经开始大量应用于各种“一卡通”系统中,这些应用对读卡器的功能要求越来越高,除了传统的对卡号的读取之外,需要能够对卡片进行更高层的数据操作,与PC设备之间能进行信息交流。
为了适应这种发展趋势,非接触式IC卡的读卡器的开发与设计也迅速发展起来[3]。
1.2目前国内外研究现状
智能卡的发展历史并不久远,而且全球各地发展不均衡,其中欧洲发展得最早、最好。
智能IC卡源于七十年代的欧洲和日本,后来由法国人提出的将处理器置入IC卡卡片中的思想得到了广泛接受,由于其具有完善的密码功能从而有效的解决了智能卡的舞弊行为。
随后智能卡在1977-1998年间得到了迅速发展。
九十年代初期,智能卡开始应用于GSM数字移动通讯、有线电视的收费等领域。
在美国,智能卡发展相对迟缓,但随着智能卡在欧洲的成功使用,其在美国产生巨大影响,尽管如此,美国在智能卡技术等领域仍处于世界领先地位。
据Innovation国际发明组织统计,2005年10月到2006年9月全世界IC卡硬件产业中,IC卡及其读写设备数量分别为42000万张和877000台,其中法国分别占98%和71%,处于世界领先地位。
目前,法国生产制造的IC卡不仅在数量上领先各国,其应用领域也灵活多样,如在金融、电信、医疗和交通运输等各个领域都有IC卡的应用,其中电子金融卡等己经达到经济生产规模。
我国对IC卡行业的发展始于1994年,当时的中央领导特别是江泽民同志高度重视IC卡行业,高瞻远瞩,指示要发展我国自己的IC卡事业,建立“金卡工程”。
虽然至今也只有短短的十几年左右时间,但是己经取得了不小的成就。
我国自1994年实施“金卡”工程以来,推动了金融电子化、商业和流通领域电子化的步伐,使我国银行业务得到迅速发展,并逐渐波及医疗、交通、社会保险、税务等领域。
在我国,智能卡在各种应用领域全面开花,目前超过10个政府部门和行业推广应用了智能卡。
近年来,我国的发卡量年增长率达到30%至40%,已成为世界智能卡应用发展最快的国家之一[4]。
目前在我国,随着金卡工程建设的不断深入发展,IC卡系统已在众多领域获得广泛应用,并取得了初步的社会效益。
随着政府管理和支持力度的加大、技术研发水平的提升,IC卡市场竞争格局将发生深刻的变化。
随着政府智能卡项目的启动,国内企业技术实力和工艺流程的优化,使得国外品牌市场份额受到很大程度的限制,而国内品牌将会有快速的发展。
今后的几年,是我国IC卡系统应用向纵深发展的时期。
我国IC卡系统市场格局必将由无序走向有序,市场竞争必将由有限走向无限,IC卡系统市场将逐步走向成熟。
但是对于尖端的CPU卡及非接触式IC智能射频卡的制卡技术及其相应的读/写卡设备技术,仍处于落后状态。
这极大地制约了IC卡行业的发展,特别是在要求有极高安全性和保密性的金融行业中,制约了我国金卡工程的实施和发展。
设计和开发出更好的读卡设备,对加快我国IC卡行业的发展,特别是尖端的CPU卡及非接触式IC智能射频卡的推广应用,有着重大的意义[5]。
1.3本课题设计的主要工作和任务
非接触式IC卡代表了IC卡发展的方向,同接触式IC卡相比其独有的优点使其能够在绝大多数场合代替接触式IC卡的使用,而在非接触式IC卡应用系统中非接触式IC卡读卡器是关键设备。
根据课题设计要求,本课题将开发一种基于飞利浦公司MF-RC500读卡芯片的非接触式IC卡读卡器,其具有以下特点:
能识别TYPEA型卡片,读取卡号,并有防冲突功能;能对TYPEA的卡片进行高层操作;可以使用RS232通信接口输出来与上位机之间通信;可根据实际需求将其作为门禁系统中的读卡器,或者一卡通系统中的读卡器。
本设计完成后所要达到的主要指标有:
(1)显示系统:
液晶屏显示,能显示系统时钟和卡片信息等;
(2)按键操作:
能实现对系统的设置和卡上数据的操作;
(3)机器读卡速度:
0.5秒可完成一次打卡过程,读卡距离为5至10厘米;
(4)保密性和防伪性:
能辨认卡的密码,非授权范围内的卡作报警处理;
(5)存储容量:
每台读写器最多可存储2000条记录。
本设计中需要解决的若干关键技术有:
(1)射频识别技术;
(2)软件的安全机制;
(3)由于射频的特殊性给系统调试带来的困难。
该读写器完成以后,既可独立使用,完成基本功能,外扩简单接口后,就能构成IC卡考勤、门禁、售饭一卡通等系统,在公交、校园、娱乐场所等方面有广泛的应用前景。
2读卡器系统方案设计与实现
2.1IC卡介绍
目前经常接触到的IC卡有两种:
接触式和非接触式的IC卡。
接触式的IC卡通过机械触点从读写器获取能量和交换数据;非接触式IC卡通过线圈射频感应从读写器获取能量和交换数据,所以又称射频卡。
日前在社会上常见的是接触式IC卡,它具有存储量大,可实现一卡多用等功能。
但是,这类卡的读写操作速度较慢,操作也不方便,每次读写时必须把卡插入到读写器中才能完成数据交换,这样在读写卡片频繁的场合就很不方便,而且读写器的触点和卡片上IC卡的触脚暴露在外,容易损坏和搞脏而造成接触不良。
非接触式智能卡又称射频卡,是近几年发展起来的新技术。
它是根据射频电磁感应原理产生的,它的操作只需将卡放在读写器一定距离内就能实现数据交换。
它成功地将射频识别技术和IC卡技术结合起来,将具有微处理器的集成电路芯片和天线封装于塑料基片之中。
读写器采用兆频段及磁感应技术,通过无线方式对卡片中的信息进行读写并采用高速率的半双工通信协议。
其优点是应用范围广、操作方便。
因此,在公交、门禁、娱乐场所等方面有广泛的应用前景。
目前我国引进的射频卡主要以PHILIPS公司的MIFARE卡为主[6]。
本系统在调试过程中使用的是PHILIPS公司的MFIICS50,其属于TYPEA型卡,下面对其做一些简述:
Mifare1IC卡的核心是PHILIPS公司MF1ICS50系列微模块,它确定了卡片的特性以及卡片读写器的诸多性能。
Mifare1IC智能卡内建有高速的MCU,卡片上除了IC微晶片及一副高效率天线外,无任何其他元件;卡片上无源,工作时的电源能量由读写器天线发送无线电载波信号耦合到卡片上天线而产生电能;它与读写器通信使用握手式半双工通信协议。
2.2读卡器基本原理
非接触式IC卡读写器以射频识别技术为核心,读写器内主要使用专用的读写处理芯片,它是读/写操作的核心器件,其功能包括调制、解调、产生射频信号、安全管理和防碰撞机制。
其内部结构分为射频区和接口区:
射频区内含调制解调器和电源供电电路,直接与天线连接;接口区有与单片机相连的端口,还具有与射频区相连的收/发器、数据缓冲器、防碰撞模块和控制单元。
这是与智能IC卡实现无线通信的核心模块,也是读写器读写智能IC卡的关键接口芯片。
读写器工作时,不断地向外发出一组固定频率的电磁波,当有卡靠近时,卡片内有一个LG串联谐振电路,其频率与读写器的发射频率相同,这样在电磁波的激励下,LG谐振电路产生共振,从而使电容充电有了电荷。
在这个电容另一端,接有一个单向导电的电子泵,将电容内的电荷送到另一个电容内存储。
当电容器充电达到一定电压值时,此电容就作为电源为卡片上的其他电路提供工作电压,将卡内数据发射出去或接收读写器发出的数据与保存[7]。
读卡器的工作过程如下:
(1)读卡器将载波信号经天线向外发送;
(2)卡进入读卡器的工作区域后,卡内天线和电容组成的谐振回路接收读卡器发射的载波信号,射频接口模块将其转换成电源电压、复位信号,使卡片激活;
(3)存取控制模块将存储器中信息调制到载波上,经卡上天线送给读卡器;
(4)读卡器对接收到的信号进行解调、解码后送至后台计算机;
(5)后台计算机根据卡号的合法性,针对不同应用做出相应的处理和控制。
2.3总体方案论证
2.3.1各模块方案选择与论证
(1)控制器的选择
方案一:
采用ATMEL公司的AT89S52作为系统的控制器。
AT89S52单片机算术运算功能强、软件编程灵活、自由度大,可用软件编程实现各种算法和逻辑控制,并且由于其功耗低、体积小、技术成熟和成本低等特点,使其在各个领域应用广泛。
AT89S52是我们熟悉的控制器,编程比较熟悉,易于掌握。
方案二:
采用FPGA(现场可编程门阵列)作为系统的控制器。
由于本设计对数据处理的速度要求不高,FPGA的高速处理优势得不到充分的体现,并且由于集成度高,使其成本偏高,同时由于芯片的引脚较多,实物硬件电路板布线复杂,加重了电路设计和实际焊接的工作。
由于AT89S52控制器能够很好的实现该系统的各项功能,成本低,技术成熟,故采用方案一。
(2)RFID读卡芯片的选择
随着RFID市场的迅猛增长,各大传统IC芯片制造商都加入到RFID读卡芯片的开发当中,可供选择的芯片很多,下面介绍几款主流的RFID读写芯片:
1)TI公司的TRF7960芯片。
TRF7960是一个整合的13.56MHzRFID读卡器系统的模拟前端和数据帧系统,可以用于较宽范围的近耦合RFID系统。
它的特点是完全整合协议处理,内部独立的模拟与数字电源,AM和PM双信号输入接收解调,读卡器与读卡器之间反冲突算法,输出功率可调,内建带通滤波器并且用户可选择边界频率,低功耗设计,掉电模式下电流小于lµA,激活状态10mA;与微处理器接口为8位并行接口或者4线SPI接口[8]。
2)NXP公司(原飞利浦半导体公司)是较早进入RFID芯片行业的国际半导体公司,在射频读写芯片上产品较全。
MF-RC500芯片就是NXP公司生产的。
MF-RC500是高整合的13.56MHz非接触IC卡读写芯片,整合了所有主动非接触通信方式和协议,MF-RC500支持ISO14443A&B的所有层的通信方案;内部收发器部分能够驱动近耦合设计的天线而不需要另外的电路;数字部分能处理完整的ISO14443帧数据还有错误检测;具有合适的并行接口,可以直接与8位的微处理器相连,并且支持SPI兼容接口。
由于MF-RC500能够满足设计需求,而且应用范围比其他的芯片更广,资料齐备,于是选择MF-RC500作为本设计的射频接口芯片。
(3)显示模块的选择
方案一:
使用LED显示。
数码管显示,对外界环境要求低,操作简单,但需要采用动态扫描,占用资源比较多,而且其不能很好的显示字符,由于本系统要显示的信息量较多,所以虽然该方案在程序上容易实现,但并不能满足要求。
方案二:
使用液晶显示屏显示各种信息。
液晶显示屏具有轻薄短小、低耗电量、平面直角显示以及影像稳定不闪烁等优势,并且符合本系统显示信息量多的需求,利用LCD自带的字符库,进行编程就可以实现所需信息的显示,其不必利用控制芯片创建字符库,既节省了资源,又省去了该部分的大量编程任务。
为了使人机界面更加友好,操作更加方便,采用LCD液晶显示。
(4)键盘模块的选择
方案一:
采用独立式按键。
独立式按键接口设计优点是电路的配置灵活,软件实现简单。
但缺点也很明显,每个按键需要占用一跟口线,若按键较多,资源浪费将比较严重。
因此本方法主要用于按键较少或对操作速度要求较高的场合。
方案二:
采用矩阵式按键。
矩阵式按键接口适用于按键数量较多,又不想使用专用键盘芯片的场合。
这种方式的按键接口由行线和列线组成,按键位于行、列的交叉点上。
这种方的优点是可以节省很多I/O资源,相对于专用键盘可以节省成本,且更为灵活。
缺点是需要用软件处理消抖、重键等。
由于该系统要求具有对卡片进行读/写操作,系统时钟的设置等,用到的按键较多,故采用方案二。
(5)系统时钟和存储芯片的选择
刷卡时要记录刷卡的时间,用外接硬件时钟芯片的办法,为系统提供一个准确可靠的时钟,用3V备用电池保证在系统掉电时也能正常走时。
在此选用体积小、接口简单的实时时钟芯片DS1302。
它是美国Dallas公司推出的低功耗串行通信接口专用芯片,采用3线串行方式与单片机进行数据通信[9]。
采用AT24C64作数据存储器。
AT24C64是串行E2PROM存储器,支持I2C总线数据传输协议,8K存储器容量,用两根线与CPU构成串行接口。
由于本设计采用的AT89S52单片机不具备I2C总线接口,因此采用软件法加以解决。
2.3.2总体方案确定
根据上述分析,系统设计方案如下:
本IC卡读写器拟以ATMEL公司的AT89S52单片机作为微控制器,采用MF-RC500芯片作为射频卡读/写模块,采用DS1302作为系统时钟,以AT24C64作为不掉电存储器,采用LCD显示,并以RS232接口和计算机通信,组成一套功能齐全的非接触IC卡读写系统。
当IC卡在天线区域经过时,单片机自动需求对IC卡进行读写,再把读/写卡的时间一起存到存储器中,计算机可以通过串口把相关读/写卡信息读到计算机上,再进行统计、报表和打印输出等。
系统框图如图2.1所示。
图2.1IC卡读写器系统结构框图
3系统硬件设计与实现
3.1电源模块
该电源按常规设计,为系统工作提供所需电源,其输入为220V、50Hz交流电,输出电压等级为±5V,电路原理图如图3.1所示。
该部分主要采用78系列稳压器,结构简单,调整方便,输出电压纹波小。
当所需电流超过稳压器标定值时,可采用外接功率管的方法来扩大输出电流。
市电交流220V经变压器降压为交流6V,经过全桥整流输出直流电流,再经过1000μF的电解电容滤波,除去整流后的交流成分,送至各三端稳压器,输出需要的电压。
经过各三端稳压器稳压后,在LM7805输出端输出+5V直流电压,LM7905输出的端输出-5V直流电压[10]。
图3.1±5V直流稳压电源
3.2人机接口模块
本系统的人机接口部分采用LCD显示、3×2矩阵式键盘,用来实现对IC卡的操作和系统设置等功能。
LCD型号为ACM1602A,该字符型液晶显示模块由字符型液晶显示屏,具有字符发生器ROM可显示192种字符,有64个字节的自定义字符RAM,可自定义8个58点阵字符或四个511点阵字符。
在此系统中采用LCD分屏显示,每一屏第一行的首地址是80H,第二行的首地址是0C0H;每行写入16个字节,每屏写入二行(第一行为系统的时间,第二行为卡片的信息)。
ACM1602A集成度高,其内部已经带有驱动电路,所以不用再为其设计驱动电路,由于1602是一个并口器件所以占用单片机的接口资源较多,为节省单片机接口资源使用了一个74HC595进行串口转并口,使1602与单片机进行间接连接,LCD与单片机的连结图如图3.2所示。
图3.2LCD显示电路
3.3系统时钟模块
刷卡时要记录刷卡的时间,用外接硬件实时时钟芯片的办法,为系统提供一个准确可靠的时钟,用3V备用电池保证在系统掉电时也能正常走时,在此选用体积小、接口简单的实时时钟芯片DS1302。
(1)时钟芯片介绍
DS1302是美国DALLAS公司开发的具备功耗低、接口容易串行实时时钟芯片。
在本设计中使用的DS1302为8脚DIP封装形式,其中1脚和8脚为电源电压引脚,单电源供电时接8脚,双电源供电时,主工作电源接1脚,备份电源接8脚。
2脚和3脚为32.768KHz晶振引脚;5脚RST为复位端,若其被置为低电平,则中止所有数据传送,I/O脚变为高阻态,系统复位;6脚I/O为数据输人/输出端;7脚SCLK为串行时钟输入端,所有地址/命令字节和数据字节都是在时钟的同步控制下从I/O脚串行输入输出的。
DS1302通过SCLK、I/O、RST三根线与外部进行同步串行通信。
(2)DS1302与单片机的连接
在本设计中采用单片机的P1.0-P1.2与DS1302进行数据通信,以提供系统所需的时钟,其连接方法如图3.3所示。
图3.3DS1302与单片机接口电路
3.4存储模块
在本设计中采用串行E2PROM芯片AT24C64作数据存储器。
AT24C64是ATMEL公司生产的采用I2C总线标准常用的串行E2PROM存储芯片,其支持I2C总线数据传输协议,64K(bit)存储器容量,用两根线与CPU构成串行接口。
AT24C64一般具有两种写入方式,一种是字节写入方式,还有一种是页写入方式。
AT24C64的