非接触式IC卡读卡器毕业设计.docx
《非接触式IC卡读卡器毕业设计.docx》由会员分享,可在线阅读,更多相关《非接触式IC卡读卡器毕业设计.docx(45页珍藏版)》请在冰豆网上搜索。
非接触式IC卡读卡器毕业设计
1引言
1.1课题背景
当今世界微电子技术和IT技术的发展日新月异,信息技术已广泛地渗透到社会生活的各个领域,在经济和社会发展中发挥着越来越重要的作用。
作为信息技术领域发展的分支——智能卡即IC(IntegratedCircuit)卡的出现,就以其超小的体积、先进的集成电路芯片技术以及特殊的保密措施和无法被破译及仿造的特点,颇受人们的青睐,这种将微电子技术和计算机技术结合在一起的精灵,提高了人们生活和工作的现代程度。
早期的IC卡都是有触点的,目前IC卡正向非接触,智能化方向发展,已出现了无触点的IC卡即非接触IC卡。
一个非接触IC卡内部结构示意图如图1-1所示。
图1-1非接触式IC卡内部结构图
非接触式智能IC卡是一种射频卡,是近几年发展起来的一项新技术。
它没有接触式IC卡的电气触点,而是通过无线电波进行数据传输,相对于传统的接触式IC卡,非接触式IC卡与读写器之间无机械接触,避免了由于接触读写而产生的各种故障。
此外,非接触式卡表面无裸露的芯片,无须担心芯片脱落、静电击穿、弯曲损坏等问题,既便于卡片的印刷,又提高了卡片的使用可靠性因而正以惊人的速度得到推广。
它的迅猛发展大有替代各种磁卡和接触式IC卡这势。
毫无疑问,集众家之优的非接触式IC卡将在身份识别、金融、证券、电子货币、公共交通、铁路、电信、医疗、商业、工商管理、技术监督、企业管理、智能楼宇、小区物业、社会保障、教育管理、仓储运输等诸多领域独住房领风骚。
1.2设计的目的和意义
现在我国已经开始在很多城市的公共交通、考勤系统、第二代身份证、校园一卡通等方面都大量使用非接触式IC卡,因此各种的IC卡读写器也随之涌现,不同的读卡器之间的性能和价格都不同。
在现阶段国内使用的读卡器的核心射频电路读写芯片基本上都是使用Philips、TI、ATMEL等国外公司的专用集成电路芯片,特别是用Philips公司所生产的RC500或RC531芯片制作的读卡器占有较大市场份额。
这些射频芯片外围电路简单,设计方便,但由于该类芯片价格较贵,因此限制了一些对成本要求比较苛刻的场合使用而未得到较好的推广。
本设计是以ATMEL公司的AT89C52单片机和该公司TEMIC系列射频卡的读写基站芯片U2270B为核心而设计的一款实用型IC卡读写器。
本非接触式IC卡读写器系统的硬件由单片机、非接触式IC卡读写部件、接收和发送线圈、电源、复位和蜂鸣器电路及与上位机(PC机)的通信接口等构成。
加上通过周密的程序控制完成对非接触式IC卡片的读写。
并可通过串行通信接口与PC机的异步通信口进行通信。
本设计以实用为出发点,以迅速、简捷、方便、可靠、稳定对非接触式IC卡的数据进行读写操作为目的,并作为对非接触式IC卡应用的桥梁,使非接触式IC卡的应用领域进一步扩展。
2IC卡简介
2.1“卡”的发展历程
随着科学技术的不断进步,“卡”的类型及相关的设备也在不断的发展、变化、更新,应用范围也随之更加广泛。
从信息的载体上来看,主要有光电(检测)卡、磁卡、IC卡等。
2.1.1光电(检测)卡
常用光电(检测)卡有两种,一种是打孔光电卡,即在专用的PVC塑料片上加工出特定的密码通孔,用专门的光电读卡器来读出这些密码孔所代表的信息。
由于光电信息外露,易于伪造,使用中难于再次写入信息,且易于折断,所以应用范围很窄,逐渐为其它产品所替代;另一种是条形码卡,把条码制在专门的卡片上,即是条形码卡,目前主要用作ID卡,即作为身份识别用,它成本低,技术成熟,制作简单,但信息外露、保密性极差,故而被磁卡和IC卡所代替。
2.1.2磁卡
磁卡是利用贴在卡上的磁条来记录持卡人的帐户、姓名等信息的。
磁条表面涂有磁性材料,当读卡设备的磁头掠过磁条时,就可以对磁卡进行读写操作。
由于出现得较早,且容易生产和推广,目前世界范围内磁卡的发行量已超过数十亿张。
磁卡的阅读器很便宜,但读写器较贵,由于一般的应用中,磁卡只记录个人帐号等只读信息,使用时并不往卡中写信息,所以磁卡在金融领域用得比较广泛。
但磁卡仍有其不足之处:
首先,磁卡保密性差,虽然比光电卡的保密性好,但磁条上的信息还是比较容易读出,非法修改磁条上的内容也较容易,所以大多情况下磁卡都是作为静态数据输入使用。
虽然第3磁道可读写,并且有金额字段,也只是用于小金额的应用领域,例如电话卡。
另外,磁卡应用方式比较单一、受限制,磁卡的方便应用需要有可靠的计算机系统和中央数据库的支持,在金融行业,作为金融交易卡的磁卡,一般配合强大、可靠的计算机网络系统使用,金额、交易记录等信息,均保存在金融机构计算机的数据库中,用户所持的卡片只是提供用户的主帐号等索引信息,便于在数据库中迅速找到用户数据。
但由于其应用方式是集中式的,这给用户在异地使用磁卡带来了很大的不便。
2.1.3IC卡
IC卡是集成电路卡(IntegratedCircuitCard)的简称,也叫做灵巧卡(SmartCard)或智能卡(IntelligentCard)的。
它诞生于1970年,法国人罗兰德·莫瑞诺(RolandMoreno)第一次将可进行编程设置的IC卡芯片放于卡片中,使卡片具有多种功能而形成了世界第一张IC卡,并将这项技术应用到金融、交通、医疗、身份证明等多个行业,它将微电子技术和计算机技术结合在一起,提高了人们生活和工作的现代化程度。
此后的时间里,随着大规模集成电路技术的成熟,IC卡技术也日趋成熟,各种各样的IC卡也不断涌现。
2.2IC卡的分类
从IC卡诞生至今的三十多年里,随着超大规模集成电路技术、计算机技术以及信息安全技术等的发展,IC卡种类更加丰富,技术也更趋成熟,已在国内外得到了广泛的应用。
以下将从不同的角度对IC卡进行详细分类和简单分析。
2.2.1根据卡中所镶嵌的集成电路的不同可划分
⏹非加密存储器卡(Memory Card)
卡内的集成电路芯片主要是EEPROM,具有数据存储功能,为了能把它封装在0.76mm的塑料卡基中,特制在0.3mm的薄型结构。
存储卡属于被动型卡,通常采用同步通信方式。
这类卡信息存储方便,使用简单,价格便宜,很多场合可替代磁卡,但由于其本身不具有数据处理功能和硬件加密功能,因此,只能用于保密性要求不高的应用场合。
例如医疗上用的急救卡、餐饮业用的客户菜单卡。
常见的存储卡有ATMEL公司的AT24C16、AT24C64等。
⏹逻辑加密存储器卡(Security Card)
在非加密存储器卡的基础上增加了加密逻辑电路,加密逻辑电路通过校验密码方式来保护卡内的数据对于外部访问是否开放,采用同步方式进行通信,且该类卡片储量相对较小,价格相对便宜,但只是低层次的安全保护,无法防范恶意性的攻击。
适用于有一定保密要求的场合,如食堂就餐卡、电话卡、公共事业收费卡。
常见的逻辑加密卡有SIEMENS公司的SLE4442、SLE4428,ATMEL公司的AT88SC1608等。
⏹CPU卡
也称智能卡,卡内的集成电路中带有微处理器CPU、存储单元(包括随机存储器RAM、程序存储器ROM(FLASH)、用户数据存储器EEPROM)以及芯片操作系统COS。
装有COS的CPU卡相当于一台微型计算机,不仅具有数据存储功能,同时具有命令处理和数据安全保护等功能。
CPU卡的容量有大有小,价格比逻辑加密卡要高。
但CPU卡的良好处理能国和上佳的保密性能,使其成为IC卡发展的主要方向。
CPU卡适用于何密性要求特别高的场合,如金融卡、军事密令传递卡等。
国际上比较著名的CPU卡提供商有Gemplus、G&D、Schlumberger等
⏹超级智能卡
在CPU卡的基础上增加键盘、液晶显示器、电源,即在为一超级智能卡,有的卡有还具有指纹识别装置。
VISA国际信用卡组织试验的一种超级卡即带有20个健,可显示16个字符,除有计时、计算机汇率换算功能外,还存储有个人信息、医疗、旅行用数据和电话号码等。
2.2.2按照应用领域来分
⏹金融卡
也称为银行卡,又可分为信用卡和现金卡两种。
前者用于消费支付时,可按预先设定额度透支资金;后者可作为电子钱包或者电子存折,但不能透支。
⏹非金融卡
也称也非银行卡,涉及范围十分广泛,实际包含金融卡这外的所有领域,诸如电信、旅游、教育和公交等等。
2.2.3根据卡与外界数据交换的界面不同划分
⏹接触式IC卡
接触式IC卡是将IC芯片封装在一个的标准PVC卡中,靠裸露的芯片与读写器卡座之间的直接接触来读写数据的,国际标准ISO7816对此类卡的机械特性、电器特性等进行了严格的规定。
⏹非接触式IC卡
该类卡与IC卡设备无电路接触,而是通过非接触式的读写技术进行读写(如光或无线技术)。
其内嵌芯片除了CPU、逻辑单元、存储单元外,增加了射频收发电路。
国际标准ISO/IEC10536、ISO/IEC14443等标准,系列阐述了对非接触式IC卡的规定。
该类卡一般用在使用频繁、信息量相对较少、可靠性要求较高的场合。
2.2.4根据卡与外界进行交换时的数据传输方式不同划分
⏹串行IC卡:
IC卡与外界进行数据交换时,数据流按照串行方式输入输出,电极触点较少,一般为6个或者8个。
由于串行IC卡接口简单、使用方便,目前使用量最大。
国际标准ISO7816所定义的IC卡就是此种卡。
⏹并行IC卡:
IC卡与外界进行数据交换时以并行方式进行,有较多的电极触点,一般在28到68之间。
主要具有两方面的好处,一是数据交换速度提高,二是现有条件下存储容量可以显著增加。
2.3非接触式IC卡
非接触式IC卡由IC芯片、感应天线组成,并完全密封在一个的标准PVC卡中,不易受外界的不良因素影响。
非接触式IC卡与读写器之间通过无线电波来完成读写。
非接触式IC卡本身是无源体,当读写器对卡进行读写操作时,读写器发出的信号由两部分叠加组成:
一部分是电源信号,该信号由卡接收后,与其本身的L/C产生谐振,产生一个瞬间能量来供电给芯片工作。
另一部分则是结合数据信号,指挥芯片完成数据的读取、修改、存储等,并返回给读写器。
由非接触式IC卡所形成的读写系统,无论是硬件结构,还是操作过程都得到了很大的简化,同时借助于先进的管理软件,可脱机的操作方式,都使数据读写过程更为简单。
2.3.1非接触式IC卡具有的优良特性
1)可靠性高
非接触式IC卡与读写器之间无机械接触,避免了由于接触读写而产生的各种故障。
此外,非接触式卡表面无裸露的芯片,无须担心芯片脱落、静电击穿、弯曲损坏等问题,既便于卡片的印刷,又提高了卡片的使用可靠性。
2)操作方便,快捷
由于非接触通讯,读写器在15cm范围内就可以对卡片操作,所以不必插拔卡,非常方便用户使用。
非接触式卡使用时没有方向性,卡片可以任意方向掠读写器表面,即可完成操作,这大大提高了每次使用的速度。
3)防冲突
非接触式卡中有快速防冲突机制,能防止卡片之间出现数据干扰,因此,读写器可以“同时”处理多张非接触式IC卡。
这提高了应用的并行性,无形中提高了系统工作速度。
4)可以适合于多种应用
非接触式卡的存储结构特点使它一卡多用,能应用于不同的系统,用户可根据不同的应用设定不同的密码和访问条件。
5)加密性能好
非接触式卡的序列号是唯一的,制造厂家在产品出厂前已将此序列号固化,不可再更改。
非接触式卡与读写器之间采用双向验证机制,即读写器验证IC卡的合法性,同时IC卡也验证读写器的合法性。
非接触式卡在处理前要与读写器进行三次相互认证,而且在通讯过程中所有的数据都加密。
此外,卡中各个扇区都有自己的操作密码的访问条件。
2.3.2非接触式IC卡的分类
非接触式IC卡按照工作频率可分为:
◆低频卡——卡与读卡器间通信使用的频段为低频段,如125KHz;
◆高频卡——卡与读卡器间通信使用的频段为高频段,如13.56MHz、915MHz、2.45GHz等。
按照工作距离可分为:
◆密耦合卡(1mm以内)
◆近耦合卡(近距离卡,15cm以内)
◆疏耦合卡(远距离卡,1m以内)
◆远耦合卡(1m以上)
按照卡内芯片的供电方式可他为:
◆有源卡——卡内带电池
◆无源卡——卡内为设备工作时由读写设备通过无线方式供电。
2.3.3非接触式IC卡的工作方式
非接触型IC卡按供电和输入输出数据方法的不同有电磁感应方式和微波方式等不同方式,其它非接触IC卡技术形式还有光学祸合、表面声学波祸合等。
微波方式采用微波方式的IC卡应用系统由包括天线的读写器和无触点的射频卡构成。
它们之间利用微波通信,其特点是对数据可进行遥控操作,其操作距离由几厘米到1米不等。
同时读写器设有与计算机连接的通讯接口,可以联网组成系统。
这类卡的另一特点是受环境因素影响小,适合于工业控制,仓储管理及在恶劣环境中应用。
电磁感应方式采用电感祸合,使用两个金属线圈,流过它们的电流以两种不同频率变化来表示二进制的“1”和“0",这种数据传送方法称为频率调制。
也有采用幅度调制的,即让发生的交变信号的幅度在两电平之间变化,以两电平分别表示为二进制的“1”和“0”。
一个典型的非接触IC卡无线识别系统由两部分组成:
一是被称为射频识别标志的应答器,二是寻呼器。
对于此IC卡系统而言,读卡器即为寻呼器,发射无线激励信号;非接触IC卡内部电路即为应答器。
读卡器与非接触式IC卡的信息交换是通过射频方式完成的,对于卡内而言,由射频接口电路完成。
一种通用非接触式IC卡读写系统框图如图2-1所示。
图2-1典型非接触IC卡系统框图
图2-1所示的非接触IC卡系统由上位机、读写器、无源非接触IC卡组成,中心工作频率为而=13.56MHz,信号传输频宽约为1MHz.以半双工方式在读写器与IC卡之间双向传递数据。
该非接触IC卡系统的工作过程为:
上位机向读写器发送命令,读写器接到该命令后分析执行,将上位机的命令信号编码后加载在频率为13.56MHz的载波信号上经天线向外发送,如无源非接触IC卡进入读写器工作区域则可接收到此脉冲信号,此时卡内芯片中的射频接口模块由此信号获得电源电压后产生复位信号建立时钟信号;同时卡内芯片中的有关电路对此信号进行调制、解码、解密,然后由内部管理程序对命令请求、密码、权限等进行判断,如果命令请求、密码、权限正确,由IC卡内部控制逻辑电路执行相应功能,并向读写器返回处理结果信息,若经判断其对应的密码和权限不符,则返回出错信息。
读写器将非接触IC卡的返回信息传给上位机。
如接收不到IC卡返回信息,则向上位机返回无卡信息。
2.4IC卡的国际标准
IC卡的国际标准分为接触式IC卡的国际标准和非接触式IC卡的国际标准两种,由于接触式IC卡应用较早,其国际标准比较完善,非接触式IC卡近年来才开始推广使用,其国际标准有些已经通过,有些正在制定与计论之中。
2.4.1接触式IC卡的国际标准
ISO/IEC7816是ISO/IEC(国际标准化组织/国际电子技术委员会)推出的接触式IC卡遵循的主要国际标准,包括10个部分,对IC卡的物理特怕、卡上触点尺寸与位置、电信号与传输协议、行业交换命令、数据无以及IC卡注册管理办法等作出了详细的规定。
2.4.2非接触式IC卡的国际标准
非接触式IC卡表面无触点,因此接口投备与非接触式卡的通信方式与接触式卡不同,提供电源的方式也不同,为此ISO/IEC根据接口设备与IC卡作用距离的不同而定义了三个国际标准,如表2-1所示:
表2-1非接触式IC卡的国际标准
其中ISO/IEC14443又分为TypeA和TypeB两个标准。
其中TypeA采用ASK(AmplitudeShiftKeying)100%调幅方式,在RF场子中产生一个“空隙”(Pause)来传送二进制数据。
而TypeB则采用ASK10%调幅方式,
3系统总体设计
本系统采用e5550/U2270B的非接触卡读写系统示意图非接触IC卡是一种接口电路。
它通过卡上配置的发射机应答器振荡线圈与基站振荡线圈的耦合取得能量,通过必要的通信软件配合,保证卡与基站间实现双向数据交换 其系统示意图如图3-1所示:
图3-1非接触IC卡读写系统示意图
3.1射频卡部分
本设计的射频卡采ATMEL公司的TEMIC系列的E5550非接触式IC卡和H4001非接触式ID卡。
TEMIC系列射频卡内有264bit的EEPROM,被分成8块,每块为33bit,其中bit0是lock位,此位一旦写“1”后,该块数据就不能再作任何修改。
8个block中,block0是控制块,用业控制卡的各种操作特性,如同步信号、编码方式、波特率、数据流长度、加密和口令唤醒等功能的启用关闭等;block1~block6是用户块,用来存放用户数据和信息;block7是密码块,若加密功能不被启用,也可以作为用户块使用。
TEMIC系列射频卡特点为:
(1)低功耗、低电压的CMOS结构;
(2)无线电源供给,无线数据传输;
(3)射频频率为100~150KHZ;
(4)264bit的EEPROM,且有写保护功能;
(5)加密逻辑、唤醒功能,多种波特率,多种编码方式。
(6)8个(存储)区的首位分别为该区的写保护位"L"。
为"1"时,该区为只读区;为"0"时,该区为既可读又可写区。
(7)8个(存储)区中的第0区为工作方式数据存储区,通常是不发送的,而其他的7个区每个区中各有32位,即总共有224位供用户使用。
(8)具备增强防护功能,以免非接触卡式EEPROM的误编程。
(9)每一存储区的写操作时间一般不超过50ms。
(10)EEPROM操作的一些其他选项:
·比特率(位传送率b/s)--RF/8,RF/16,RF/32,RF/40,RF/50,RF/64,RF/100,RF/128。
·调制方式--二进制(BIN)、频移键控(FSK)、相移键控(PSK)、曼彻斯特码(Manchester)、双相位码(Biphase)。
·其他--请求应答(AOR)、终止方式和口令方式。
射频卡内部64位信息由5个区组成:
9个引导位“1”,10个行奇校验位“P0~P9”,4个列奇校验位“PC0~PC3”,40位数据位“D00~D93”和一个停止位“0”。
9个引导位是出厂就掩膜到晶片内的,其值为111111111。
当它输出数据流时,首先是输出9个引导位,然后是10组由4个数据位和1个行奇校验位组成的数据串,之后是1组由4个列奇校验位组成的数据串,最后是停止位“0”。
“D00~D13”是一个8位的晶片版本号或ID识别码。
“D20~D93”是4组32位的晶片信息,即卡号。
当射频卡得电初始化后,便依次将这64位数据反复输出,直到卡片离开基站读写器失电为止。
3.2系统的主控模块
本系统选用ATMEL公司的AT89C52单片机为主控模块,AT89C52是一种内含8kbyteROM且有256单元RAM,并与MCS-51系列的指令系统和管脚完全兼容的低电压、高性能COMS8位微控制器,同时片内具有Watchdog功能,当程序由于某种干扰而死机时,系统可以可靠复位,保证系统的正常运行。
其引脚图如图3-2所示:
AT89C52的主要特性:
•与MCS-51产品指令和引脚完全兼容
•高性能、低功耗的CMOS8位单片机
•先进的RISC结构
–131条指令
–32个8位通用工作寄存器
–全静态工作
–工作于16MHz时性能高达16MIPS
–只需两个时钟周期的硬件乘法器
•非易失性程序和数据存储器
图3-2AT89C52引脚图
–4K字节的系统内可编程Flash
擦写寿命:
1,000次
–具有独立锁定位的可选Boot代码区
通过片上Boot程序实现系统内编程
真正的同时读写操作
–1024字节的EEPROM
擦写寿命:
100,000次
–2K字节片内SRAM
–可以对锁定位进行编程以实现用户程序的加密
•JTAG接口(与IEEE1149.1标准兼容)
–符合JTAG标准的边界扫描功能
–支持扩展的片内调试功能
–通过JTAG接口实现对Flash、EEPROM、熔丝位和锁定位的编程
•外设特点
–3个16位定时/计数器
–具有独立振荡器的实时计数器RTC
8个单端通道
2个具有可编程增益(1x,10x,或200x)的差分通道
–面向字节的两线接口
–可编程的串行USART
–可工作于主机/从机模式的SPI串行接口
–具有独立片内振荡器的可编程看门狗定时器
–片内模拟比较器
•特殊的处理器特点
–上电复位以及可编程的掉电检测
–片内经过标定的RC振荡器
–片内/片外中断源
–2种睡眠模式:
空闲模式、掉电模式、
•I/O和封装
–32个I/O口
–40引脚PDIP封装,44引脚TQFP封装,与44引脚PLCC封装
AT89C52内核具有丰富的指令集和32个通用工作寄存器。
所有的寄存器都直接与算逻单元(ALU)相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。
这种结构大大提高了代码效率,并且具有比普通的CISC微控制器最高至10倍的数据吞吐率。
3.3系统的读写模块
本系统的读写模块采用ATMEL公司TEMIC系列射频卡的读写基站芯片U2270B为核心,其引脚图如图3-3所示:
图3-3U2270B引脚图
U2270B是德国Temic公司生产的射频卡基站读写专用芯片,U2270B基站读写器的基本性能如下:
(1)载波频率fosc范围为100~150kHz。
(2)fosc为125kHz时,典型的数据传送率为5kb/s。
(3)适用的调制方式为曼彻斯特码(简称曼码)和双相位码。
(4)可由5V的稳压电源或汽车蓄电池供电。
(5)调谐能力。
(6)与微控制器有兼容的接口。
(7)处于备用工作方式时,其功耗甚低。
(8)有一向微控制器供电的输出端。
U2270B不同的引脚有不同的功能,其引脚说明如表3-1所列:
表3-1U2270B引脚说明
引脚
符号
引脚说明
引脚
符号
引脚说明
1
GND
地
9
COIL1
天线驱动端1
2
Output
数据输出端
10
Vext
外部电源输出端
3
OE
数据输出使能
11
DVs
天线驱动电源输入
4
Input
数据输入
12
Vbatt
电池电源输入
5
MS
共模/差分模式选择
13
Standby
空闲模式
6
CFE
射频载波使能
14
Vs
工作电源输入(5V)
7
DGND
数字地
15
RF
射频频率调整端
8
COIL2
天线驱动端2
16
HIPASS
直流去耦
3.4系统通信模块
在本非接触式IC卡读写系统中,一般都以标准计算机平台((PC个人计算机、Macintosh计算机或工作站)为核心,采用串行通信接口与被测或被控设备连接,通过软件来实现对这些设备的访问。
串行通信接口结构简单,能系统正常而又可靠的工作。
在读卡机应用系统中利用串行接口实现主机与读卡器连接,并按通信协议编制好通信软件实现主机对读卡器的控制。
由主机和读写器组成一个具体应用系统时,其采用的通信方式示意图如图3-4所示:
图3-4系统通信方式示意图
从图3-4中我们可以看到非接触IC卡和读写器之间按通讯协议用无线方式进行通讯联络,而主机控制器对读写器下命令以及接收读写器返回执行结果均采用有线方式。
在计算机控制系统中,一般都以标准计算机平台为核心,采用合适的接口连接方式实现计算机与被测或被控设备连接,通过