基于51单片机的接触式IC卡设计.docx
- 文档编号:24454195
- 上传时间:2023-05-27
- 格式:DOCX
- 页数:51
- 大小:219.94KB
基于51单片机的接触式IC卡设计.docx
《基于51单片机的接触式IC卡设计.docx》由会员分享,可在线阅读,更多相关《基于51单片机的接触式IC卡设计.docx(51页珍藏版)》请在冰豆网上搜索。
基于51单片机的接触式IC卡设计
摘要
本文设计了一个接触式IC卡读写器。
所设计的读写器以8051单片机为核心,配以IC卡接口电路、串行通信电路、存储电路、掉电检测电路、键盘显示电路等部分。
通过读写器插槽与IC卡芯片通信,由51单片机控制数据传输过程,实现读卡和写卡操作。
论文从IC卡的国际标准入手,介绍了实现IC卡数据存储的控制方法,并以西门子公司的SLE4442型逻辑加密卡为基础,详细分析了单片机控制IC卡数据读写的软/硬件实现。
在读写器的人机界面(包括显示和键盘)的设计中,设计了一种适合本设备的技术方案。
关键词:
IC卡;SLE4442芯片;读写系统
ABSTRACT
Inthispaper,thedesignofacontactlessICcardreader.Thereaderisdesignedwith8051asthecore,togetherwiththeICcardinterfacecircuit,serialcommunicationcircuitry,memorycircuits,power-faildetectioncircuit,displaycircuit,suchasthekeyboardpart.ThroughthereaderslotwiththeICcardchipcommunications,from51single-chipmicrocomputertocontroldatatransmissionprocess,therealizationofcardreaderandwriteoperations.
PapersfromtheinternationalstandardsforICcardsstarttointroduceICcardstoachievethecontrolofdatastoragemethods,andSiemensSLE4442logicencryptioncardtypebasedonadetailedanalysisofthesingle-chipICcarddatareadandwritecontrolofthehardware/softwaretoachieve.Inthereaderofthehuman-machineinterface(includingthedisplayandkeyboard),designasuitableprogramfortheequipment.
Keywords:
ICcard;SLE4442chip;Readandwritesystem
第1章绪论
1.1IC卡的发展和使用应用情况
卡片是作为个人身份识别的手段而引进的,而作为交易凭证的卡片则早在19世纪80年代就萌芽于英国了,1950年,美国商人设计了第一张现代的塑料信用卡,1951年美国富兰克林银行作为金融机构率先发行了信用卡,到60年代中期,人们在塑料金融交易卡的背面贴上磁条,发展成为能够自动读取信息进行在线处理的磁卡,磁卡因为结构简单,价格低廉,得到迅速推广。
IC卡是近年从欧洲开始出现的,IC卡具有突出的3S特点,即Standard(国际标准化)、Smart(灵巧智能化)、和Security(安全性)[1]。
因而发展迅速,在金融、通讯、交通等众多领域中后来居上,即使那些磁卡已经普及应用的范围也将被取而代之。
IC卡不仅改变了现有多种卡的使用方法和功能作用,还不断开创出新的应用领域。
将IC卡和其他设备组成系统就能提供非常丰富的服务功能,把这些功能与生产或流通领域有机地结合起来,将出现令人意想不到的奇迹,创造出巨大的经济和社会效益。
随着信息技术的发展,IC卡作为一种先进的信息存储介质,它的应用己经渗透到各国的经济、社会生活、军事等各个方面,将来更有着广阔的发展空间。
1.1.1国外和港台地区IC卡应用概况
IC卡的应用在国外发展很快。
法国作为IC卡的诞生地,也是IC卡应用的先驱。
据Innovation国际发明组织的统计,1988.10至1989.9全世界IC卡硬件产品中,IC卡及读写器产量分别为4200万张和87700台,其中法国分别占98%和71%,处于领先地位。
现在,法国在IC卡应用的广泛程度和普及性方面也都处于先进行列。
美国是信用卡的发源地,拥有两家最大的发卡组织Master和VISA.1993年仅Master卡和VISA卡的发卡量即达6.6亿张,消费额达8250亿美元。
当前,金融中己开始用IC卡取代磁卡。
在美国,IC卡还成功应用在校园,交通部门,身份验证,作战指挥等领域。
德国的德意志银行从93年5月起,为它的160万客户提供了智能卡,持卡者不仅可以在德意志银行国内1400个ATM机中提款,还可在17000个其他银行的ATM机中提款,并且还适用于全欧4万个ATM机。
德国从94年年底开始,还把使用了近100年的医疗证退役,由智能IC卡取代[2]。
在港台方面,台湾发展IC卡不仅在于台湾本身的应用,还在于要发展成为世界上最重要的IC卡生产基地。
金融IC卡将把公共汽车卡、加油卡、停车卡、家庭/企业银行卡、自动售货卡五者结合成为五合一卡。
香港是世界上三大金融中心之一,信用卡的发卡两超过500万张,平均每人0.4张以上。
香港有两大ATM自动提款及网络,汇丰系统有1300台ATM机,银通系统有1000余台ATM机。
另外还有大大小小80个网络支持着30万台阅读器组成的信用卡/储蓄卡网络[3]。
1.1.2IC卡在国内的使用情况和发展前景
在我国的一些领域,如电信、交通、医疗等部门,使用IC卡也已经很普遍,很多单位也已经使用IC卡来进行人员和财务管理。
在金融上我国还基本上是使用磁卡,但是由于IC卡的诸多优点,在不久将来用IC卡取代磁卡已经是必然趋势。
1993年7月我国电子工业部协同银行、邮电及有关部门提出了命名为“金卡”的专项工程,我国发展金卡的方针是“两卡并用,磁卡过渡,发展IC卡为主”。
未来的发展趋势必将是IC卡逐步取代磁卡。
专家们预测在未来,金卡工程对电子产品、软件产业的需求,将提供1000亿元以上的市场,这对我国电子信息产业既是机遇也是挑战,更是巨大的推动力。
目前正值中国IC卡行业大变革、大发展的时代,在当前经济形势下,研究开发IC卡的使用,无论是对于中国IC卡行业的长远发展,还是对IC卡行业在具体工作中的突破都具有积极的指导作用[4]。
1.2IC卡应用技术
IC卡比磁卡存储容量大,可靠性和安全性高,在应用上除了覆盖磁卡的全部应用范围以外,还提供了许多磁卡所不具备的应用特性。
正是这些特性,使IC卡在脱机业务处理和联网数据一致性等方面表现出前所未有的优势。
IC卡虽然有很强的功能,但仅当IC卡加入到应用系统中,构成发行商、应用系统和持卡人之间的数据传输媒介时,才能有效地发挥其优势。
一个好的IC卡应用系统,应具备良好的应用特性和性能价格比,还要有好的安全特性[5]。
1.2.1IC卡的技术优势
IC卡最初是为了解决金融交易中的安全性问题而设计的,它带来全新的交易概念与巨大的优势。
IC卡在应用中的技术优势在于良好的机器读写能力、共同认可的安全防范技术和相对较大的数据存储能力:
1.良好的机器读写性能便于人—机—卡之间的会话
IC卡是一种电路卡,它在机器读写性能上远优于磁卡和光卡,无需往复的机械动作即可完成人—机—卡之间的多次会话过程,使卡在应用时更容易进行操作与相互验证,给卡的应用开发者和使用者都带来了极大的便利。
2.良好的安全防范技术是卡能够脱离网络使用
IC卡采用了为国际上各种开发者与使用者所共同认可的半导体密码存放于软件加密技术,它可以有效地阻止卡的非法复制与数据的篡改。
应用设备可以在脱离网络的情况下,不需要人工干预,即可对IC卡进行鉴别,以确定该卡是否是本系统所许可的,是否可在该应用场合中使用等。
通过持卡人输入PIN,与卡内一组密码比较,可以确认持卡人的身份。
这些特点使IC卡能成为传导媒体,再加上认证和数据加密等功能,使卡能够脱离网络使用。
3.大容量的数据存储能力使IC卡成为数据媒体
在一个应用系统使用中,系统必须对所有持卡人建立一份身份与使用的档案。
在磁卡系统中,这组档案存放在中心数据库系统内,持卡人每次使用都需通过终端,以网络形式从数据库系统中提出那份与自己相关的档案。
现在IC卡的存储能力增加了,这份相关信息可以存放在IC卡中,终端设备交易的实时性明显改善,使用的灵活性也大大增加[6]。
1.2.2IC卡的应用范围
IC卡三大特点的结合,构成了IC卡应用的强大优势,它一方面降低了对网络的依赖程度,提高了相应速度;另一方面对发行商、应用商和持卡者三方面的利益提供了有效的保护手段,为IC卡的广泛应用铺平了道路。
IC卡应用范围相当广泛,这里仅根据现有的应用提供部分应用领域:
1.应用于金融领域,可以作为信用卡、现金卡、证券卡或电子资金转账卡等。
2.可以作为身份证明卡使用,如身份证、驾驶执照、会员卡等。
3.在医疗、保健等领域,IC卡可以用于健康卡、少儿疫苗卡、就诊卡等.
4.在商业及服务领域,可以用IC卡作为优惠卡、结算卡、服务卡等。
5.在交通领域,可以用IC卡取代公交或地铁月票,可以改变原有对月票的当月有效限制为有效次数限制。
还可用于公路付费和停车付费等场合。
6.IC卡电话卡,这是至目前为止IC卡用量最大的一种应用.用IC卡公用电话替代磁卡电话与投币电话即可杜绝欺诈行为,又可省去携带零钱所带来的麻烦。
7.IC卡在门禁系统、设备使用等情形中,以钥匙卡的形式出现,使“锁”有了新的一个层次定义。
8.IC卡还可集各种服务功能于一身,如企业的员工卡、校园“一卡通”等即属此类,持卡人可以用卡进行考勤、开门、就餐、借阅图书等[7]。
1.3IC卡读写器市场流行产品介绍和性能分析
IC卡的出现已经有了30年左右的时间,人们根据应用系统的需要,设计了各种各样的IC卡读写器,随着科学技术和制造工艺的进步,IC卡读写器性能越来越好,功能也越来越强。
我们知道IC卡分为非接触式和接触式的,与其对应的读写器也分为非接触式读写器和接触式读写器,虽然这两种读写器的IC卡读写适配接口不同,但其他的接口和功能部件完全相同,所以在以下介绍读写器产品时,不再区别对待这两类读写器。
1.现在市场上主要读写器产品介绍
(1)通用型IC卡读写器
这类读写器又分为联机型和脱机型。
联机型通用读写器一般只提供基本的IC卡读写功能,还带有RS232串口向上位机传输数据以及接收上位机的控制命令,有些机型还带有USB口。
联机型通用读写器需要和上位控制微机一起使用。
由于功能和结构都比较简单,一般采用单个8位通用的单片机就能实现,苏博泰克的S4650型微型读写器,上海泽宇的ZEYU923全功能IC卡读写机都是这类产品。
北京握奇公司还专门设计了IC卡读写器专用芯片WATCHCORE用于制造读写器,他们生产的CRW-V系列外置式读写器更加小巧。
脱机型通用读写器需要脱离上位机独立工作,所以除了提供联机型读写器的功能外,还需要提供键盘和显示功能作为用户界面,为了用户界面的美观,现在读写器的显示很多都采用高分辨率的液晶显示器。
这时如果只采用单个8位通用的单片机做控制,在响应用户输入和处理数据时实时性不好,速度会比较慢。
一般的解决办法是采用性能更高的单片机或者使用双CPU来组成系统,不同的生产厂家选用不同方法设计了多款脱机型通用读写器。
生产通用性IC卡读写器产品的厂家同时还提供高级语言二次开发包,由用户根据需求自行开发应用系统。
上海泽宇,苏博泰克等等公司都提供这类产品。
通用型IC卡读写器使用比较灵活,价格相对比较便宜,但使用还需要进行二次开发,一般有开发能力的公司可以考虑选择这种读写器。
(2)专用型IC卡读写器
这类读写器是根据特定应用要求设计的,它只能在某一个专用领域使用。
除了提供基本的IC卡读写功能和数据传输功能外,一般还根据需要提供适当的键盘、显示人机接口,它同设计厂家提供的管理系统一起提供给用户,用户也可以根据需要向生产厂家定制。
如珠海YD-2001车载收费机是专门为公交车收费设计的非接触式IC卡读写终端,提供乘客用卡、挂失和非法卡(黑名单卡)报警、用户界面、程序下载等功能,很适合公交车收费系统使用。
这类产品是为某一功能专门设计的,使用方便,功能强大,但一般价格相对比较高,也只能应用于特定领域。
2.IC卡读写器中使用的最新技术
(1)网络远程控制技术
使用嵌入式系统网络接口,IC卡读写器能够直接和Internet相连,用户只要通过互联网就可以远程控制读写器,实现实时控制。
如苏博泰克的56760型收费机是一种专用非接触式IC卡读写器,根据使用的环境不同,可提供联网型和无线型两种。
联网型采用RS485网或以太网,实现在线式工作。
无线型既可以通过专用的GSMMODEM与服务器做实时的连接也可以通过连接手持式数据传递汇总机完成数据的非实时交换。
可广泛应用于各类消费场所。
(2)生物识别技术
把多媒体技术和IC卡数据存储技术联系在一起,使用指纹或声音识别用户,进一步方便了使用者,保证了系统安全。
如苏博泰克的F4350/4360指纹IC卡读写器,具有指纹采集与IC卡读写的全部功能,支持多卡应用,内置PSAM卡接口,支持二次开发,提供多平台驱动程序,可将指纹信息写入符合IS07816标准的存储卡、CPU卡、符合ISO14443A的非接触卡中。
并可通过该产品从卡内读取指纹信息[8]。
1.4课题中IC卡读写器的设计目标
读写器是IC卡应用系统的终端设备,只有通过读写设备才能和IC卡建立联系,读写IC卡中的数据;读写器一般还要求和信息网络中的上位机进行通讯,把IC卡中的数据融入到上层数据库。
设计选择读写器是建立IC卡应用系统的关键[9]。
本文是就设计IC卡读写器展开的,课题的设计目标是一种通用的接触式IC卡读写终端,要求读写器能够单独工作。
预期目标:
1.实现用户信息的存储
2.通过键盘显示电路实现人机交互
3.实现卡的插入与退出识别
4.实现伪卡的识别
扩展目标:
5.实现自动计数或计费
6.具有密码识别功能,密码3次错误,实现锁卡功能
第2章IC卡国际标准和设计要求
由于IC卡使用具有流动性与全球性,建立相应的国际标准和国家标准就显得特别重要。
在信息技术领域,ISO(国际标准化组织)和IEC(国际电子技术委员会)共同建立了一个技术委员会ISO/IECJTC1以制定相应国际标准[10]。
在IC卡应用系统的设计中,读写设备对IC卡的读写控制的每一个环节都应当遵照相应的国际标准,才能保证数据的正确读取。
这是IC卡读写器终端设计的基础。
接触式IC卡国际标准的总称为:
识别卡-接触式集成电路卡;国际标准为ISO/IEC7816。
包括以下部分:
第一部分:
ISO7816-1,物理特性
第二部分:
ISO7816-2,触点尺寸和位置
第三部分:
ISO7816-3,电信号和传输协议
第四部分:
ISO7816-4,行业间交换用命令
第五部分:
ISO7816-5,应用标识符的编码系统和注册系统
第六部分:
ISO7816-6,行业间数据元
第七部分:
ISO7816-7,关于结构化卡询问语言的行业间命令
第八部分:
ISO7816-8,与安全有关的行业fal命令
第九部分:
ISO7816-9,附加的行业间命令和复位应答
第十部分:
ISO7816-10,用于同步卡的电信号和复位应答
由于在本课题相关的接触型逻辑加密卡SLE4442的设计中,只涉及到ISO7816-2,ISO7816-3,所以只对这几个标准进行介绍,其中后两个协议直接与读写器设计的细节相关,所以进行了比较详细的介绍[11]。
2.1ISO7816-1接触式集成电路卡的物理特性
本标准制定的物理特性适合于ID-1型识别卡,其尺寸为85.6mm×53.98mm×0.76mm。
ISO7810(识别卡的物理特性)中为各种识别卡定义的物理特性适用于IC卡,ISO7813(作为金融交易卡的磁卡的格式即内容)中对金融交易卡定义的阻燃性和外形尺寸也适用于IC卡。
此外,还提出了以下附加特性:
防护紫外线的能力;X光照射的剂量;触点的表面轮廓;卡和触点的机械强度;触点电阻;磁条与集成电路之间的电磁干扰;指定强度磁场的影响;静电影响;热耗等。
标准规定了上述各项测试的指标,并要求测试后的IC卡不应损坏或丧失功能。
使用过程中卡的表而温度不应超过50摄氏度[12]。
2.2ISO7816-2接触式集成电路卡的触点尺寸和位置
该协议规定了ID-1型集成电路卡各触点的尺寸、位置和功能。
规定每个触点都应有一个不小于2.0mm×1.7mm的矩形表面区域,各触点间应互相隔离,但未规定触点的形状和最大尺寸。
IC卡有8个触点,从C1到C8,触点可安排在卡的正面和反面[13]。
引脚配置如图2.1,触点的位置如下图2.2所示(以卡的接触面的左边和上边为基准线)。
图2.1引脚配置
图2.2触点位置
相邻两个触点之间的最大间距为0.84mm。
8个触点所占最大面积没有规定,但规定最小面积不小于9.62(宽)mm×9.23(高)m的矩形平面。
每个触点的功能见表2-1:
表2-1IC卡触点的功能
触点编号
功能
触点编号
功能
C1
VCC(电源电压)
C5
GND(地)
C2
RST(复位信号)
C6
VPP(编程电压)
C3
CLK(时钟信号)
C7
I/O(输入/输出端)
C4
ISO/IECJTC1/SC17
保留使用
C8
ISO/IECJTC1/SC17
保留使用
2.2ISO7816-3中规定的各触点电压和电流值
先介绍ISO7816-3中规定的触点电压和电流值。
在讨论每个触点的电特性之前,先将所用符号的意义叙述如下:
VIH:
高电平输入电压VIL:
低电平输入电压
VOH:
高电平输出电压VOL:
地电平输出电压
TR:
信号幅度10%-90%之间的上升时间
TF:
信号幅度90%-10%之间的下降时间
CIN:
输入电容COUT:
输出电容
IIH:
高电平输入电流IIL:
低电平输入电流
IOH:
高电平输出电流IOL:
低电平输出电流
Icc:
VCC端电源电流IPP:
VPP端编程电流
所有测量是相对GND(地)定义的。
测量的环境温度在0摄氏度~50摄氏度范围内。
流入卡中的电流被定义为正电流。
当满足下列条件时,定义电路为不工作状态:
触点相对于GND的电压保持在OV-0AV之间,且流向接口设备的电流小于1mA。
另外根据给卡的电压不同而将卡的操作条件分成A,B两类,A类卡VCC上的电压为5V。
B类卡VCC上电压值为3V,一般情况下的我们多使用A类卡。
1.VCC触点:
下表2-2是VCC触点电源电压值,本触点用来提供电源电压。
表2-2正常操作条件下VCC的电特性
符号
条件
最小值
最大值
单位
VCC
A类
4.5
5.5
V
B类
2.7
3.3
ICC
A类,在最大允许频率
60
mA
B类,在最大允许频率
50
时钟停止
0.5
2.I/O触点:
I/O触点用于数据交换的输入(接收方式)或输出(发送方式)。
有两种可能的状态:
传号或高状态(Z状态),空号或低状态(A状态)。
当卡和接收设备均处在接收方式时,I/O处于Z状态,也可被发送方规定为Z状态:
A状态可由发送方规定。
当卡与接口设备均处于不匹配的传输方式时,I/O端的逻辑状态可能是不确定的。
在操作期间,卡与接口设备不能同时处于发送方式。
下表2-3为正常操作状态I/O的电特性:
表2-3正常操作条件下的I/O电特性
符号
条件
最小值
最大值
单位
VIH
IIH
VIH
VIL
0.7×VCC
﹣300
VCC
+20
V
uA
VIL
IIL
VIL
0
﹣1000
0.15×VCC
+20
V
uA
VOH
IOH
外加上拉电阻到VCC
VOH
0.7×VCC
VCC
+20
V
uA
VOL
TR,TF
IOL=1Ma
CIN=30pF;COUT=30pF
0
0.15×VCC
1
V
uS
以上测试I/O上的电压保持在VCC-0.3V~VCC+0.3V之间,接口设备工作时,流入卡的电流不应超过500uA。
3.Vpp触点:
在A类操作条件下卡内的非易失性存储器EEPROM编程或擦除时可以从Vpp端提供电源。
Vpp有两种状态,空闲状态和激活状态。
除编程和擦除外,均处于空闲状态。
一般IC卡不从Vpp取得电压,而由卡内升压电路提供编程和擦除所需电压。
在B类操作条件下,Vpp触点保留于将来使用。
正常操作状态下Vpp的电特性如表2-4所示:
表2-4正常操作条件状态下Vpp的电特性
符号
条件
最小值
最大值
单位
VPP
IPP
空闲状态
0.95×VCC
1.05×VCC
20
V
mA
VPP
IPP
编程状态
0.975×P
1.025×P
1
V
Ma
卡向接口设备提供P和I值(默认值:
P=5,I=50)
电压上升或下降时间:
200us(最大值),Vpp变化速率不超过2V/us.最大功率VPP×IPP在任意一秒时间内的平均值不超过主1.5W。
4.CLK触点:
正常操作状态下的CLK触点电特性如下表2-5所示:
表2-5正常操作条件下CLK的电特性
符号
条件
最小值
最大值
单位
VIH
IIH
VIH
0.7×VCC
﹣20
VCC
+100
V
uA
VIL
IIL
VIL
0
﹣100
0.5
+20
V
uA
TR,TF
CIN=30pF
时钟周期的9%
CLK上的电压保持在﹣0.3~VCC+0.3之间
5.RST触点:
正常操作条件下RST的电特性如下表2-6所示:
表2-6正常操作条件下RST的电特性
符号
条件
最小值
最大值
单位
VIH
IIH
VIH
0.8×VCC
﹣20
VCC
+150
V
uA
VIL
IIL
VIL
0
﹣200
0.12×VCC
+20
V
uA
TR,TF
CIN=30pF
1
us
RST电压保持在﹣0.3~VCC+0.3之间
第3章单元电路方案选择
本章主要介绍IC卡芯片的选择,及其IC卡的特点和协议,另外还有存储电路、串口通信电路、键盘电路与显示电路的选择。
3.1IC卡芯片选择
IC卡是集成电路卡(IntegratedCircuitCard)的简称,有些国家和地区称之为微芯片卡(Microchipcard)或微电路卡(MicrocircuitCard)。
IC卡的大小和磁卡相同,它把集成电路镶在塑料卡片上,芯片一般是不易挥发性存储器(ROM,EPROM.EPROM),保护逻辑电路,甚至于CPU。
本节介绍IC卡的一些基本知识,使读者对IC卡有一个大概的了解。
由于本设计所采用的IC卡为接触型逻辑加密卡(SLE4442),所以本节的内容重点介绍此卡。
SLE4442是由德国西门子公司设计的逻辑加密存储卡。
它具有2K位的存储容量和完全独立的可编程加密代码存储器。
内部电压提升电路保
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 接触 IC 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)