IC卡应用论文.docx
《IC卡应用论文.docx》由会员分享,可在线阅读,更多相关《IC卡应用论文.docx(41页珍藏版)》请在冰豆网上搜索。
IC卡应用论文
更多论文请加QQ1634189238492186520
摘要
IC卡是一个正蓬勃发展的边缘产业,一个与我们的生活正越来越密切的产业。
在普及因特网和计算机的大潮涌来时,IC卡扮演着越来越重要的角色。
IC卡读写设备大致可分为两大类:
一类为专用读写设备或称脱机读写器。
其特点是:
充分利用IC卡存储量大,可以独立存储和工作,不需要和主机相连就可完成数据读写的优点,可与应用设备结合或单独工作。
例如:
IC卡电表,水表,ATM机,商场收款机。
另一类为通用读写设备,或称联机读写器,是带有单片机和存储器的设备,通过并行或串行口与PC机或应用系统网络相连接。
在运行不同软件时可以读写不同种类的IC卡,组成不同的应用系统。
如果配备开发系统软件,可对IC卡做初始规划,数据加密和初始写入,从而构成IC卡应用开发制作环境。
在本设计中,我们讨论通用开发系统——基于ATM89C51单片机的IC卡读/写器的设计。
通过89C51单片机来实现IC卡的读和写,在系统中设计一个复位电路,接在89C51的复位管脚上。
复位电路是微机应用中重要的一环,一个好的复位电路对微机抗干扰有重要作用。
另外还在单片机上接了一个时钟电路,用来设置单片机内部震荡的时间。
RS232串行接口在本设计中用于单片机与PC机之间的连接,IC卡座用于插卡,实现IC卡与读写器的连接。
本设计中所涉及的主要是接触式逻辑加密卡SLE4442卡。
另外一些外围电路的设计使整个IC卡读写器显得完美。
前言……………………………………………………………..3
第一章概述......................................................................5
一IC卡技术……………………………………………………5
二IC卡应用……………………………………………………8
第二章系统原理框图...........................................10
一系统原理框图的绘制………………………………………10
二原理图………………………………………………………13
第三章硬件部分...........................14
一AT89C51单片机简介………………………………………..14
二RS232串行接口……………………………………………16
三SLE4442简介………………………………………………18
四IC卡座……………………………………………………18
五外围电路……………………………………………………20
第四章软件部分…………………………………….25
一工作过程、流程图……………………………………………25
二用C51实现的读/写主程序.......................................................27
三上位PC机通信接口软件…………………………………….34
第五章总结……………………………………………..36
一总结……………………………………………………………36
二致谢……………………………………………………………37
三参考文献………………………………………………………38
前言
IC卡是一个正蓬勃发展的边缘产业,一个与我们的生活正越来越密切的产业。
在普及因特网和计算机的大潮涌来时,IC卡扮演着越来越重要的角色。
IC卡读写设备大致可分为两大类:
一类为专用读写设备或称脱机读写器。
其特点是:
充分利用IC卡存储量大,可以独立存储和工作,不需要和主机相连就可完成数据读写的优点,可与应用设备结合或单独工作。
例如:
IC卡电表,水表,ATM机,商场收款机。
另一类为通用读写设备,或称联机读写器,是带有单片机和存储器的设备,通过并行或串行口与PC机或应用系统网络相连接。
在运行不同软件时可以读写不同种类的IC卡,组成不同的应用系统。
如果配备开发系统软件,可对IC卡做初始规划,数据加密和初始写入,从而构成IC卡应用开发制作环境。
在本设计中,我们讨论通用开发系统——基于ATM89c51单片机的IC卡读/写器的设计。
IC卡读/写设备由IC卡卡座,单片机,数据存储器RAM,程序存储器EEPROM,接口电路和外围设备等组成。
IC卡读/写器各部分结构与功能简单介绍如下:
1.IC卡卡座
IC卡卡座是连接IC卡与读写器的。
其功能包括对IC卡供电,提供读写信号和传送数据。
要求提供方便的插拔方式和可靠的接触,并带有带电插拔,过流保护,插卡检测等能力。
IC卡和插座的结构尺寸必须符合国际标准化组织(ISO)7816的标准。
对触点数目、位置、信号名称和功能都有明确规定,以保证兼容性。
2.单片机和存储器
读写器中配备单片机和ROM,RAM存储器,构成微机系统,单片机运行ROM中固化的软件,执行与IC卡和上位PC机的通信规程。
控制对IC卡的读写,完成IC卡与主机间数据的格式转换。
为减轻单片机负担,提高读写速度,常配置有硬件密文转换和单元。
3.接口电路和外围设备
通用读写器一般与PC机或网络联机工作,常用标准并行或串行口与上位机连接和通讯。
常用的是带有25芯或者9芯插口的RS232-C型串行接口,可直接接到PC机的COM1或COM2上。
此时,可利用主机的显示器作监视器,主机键盘作控制和输入,利用主机打印机输出。
此时主机与读写器组成了IC卡应用与开发系统,操作与一般微机相仿,但用户界面将随所配软件而有很大不同。
4.IC卡系统软件
本设计的系统软件是通过C51编写的。
第一章概述
一、IC卡技术
IC卡概述
1.什么是IC卡
IC卡是英文集成电路卡(integrtedcircnitcard)的缩写,其大小和名片相当,但比名片稍厚些。
国际标准化组织ISO为它制定了国际标准,对卡的长度、宽度及厚度都做了比较明确的规定。
制作时,将一个专用的集成电路芯片镶嵌于基片中,封装成形,即为IC卡。
IC卡的概念是20世纪70年代初提出来的,法国人RoLaMdMoreMo与1970年首先将IC卡芯片放于卡片中。
2.IC卡的分类
(1)根据卡中所镶嵌的集成电路的不同分类
存储卡:
卡中的集成电路为EEPROM。
逻辑加密卡:
卡中集成电路为带加密逻辑和EEPROM。
CPU卡:
卡中的集成电路包括中央处理器CPU、EPROM、随机存储器RAM以及固化在只读存储器ROM中的片内操作系统。
严格的讲只有CPU才是真正的只能卡。
(2)根据卡与外界数据传送的形式分类
IC卡可分为接触型与非接触型。
非接触型IC卡又称射频卡。
当前使用广泛的是接触型IC卡。
在这种卡上,起IC芯片有8个触点可与外界接触;射频卡的集成电路不向外引出触点,因此,它除了包含前述三种IC卡的电路外,还带有射频收/发电路及其相关电路。
(3)根据应用领域分类
IC卡分为金融卡和非金融卡。
金融卡又分为信用卡和现金卡。
信用卡由银行发行并管理,持卡人用它作为消费时的支付工具,可使用预先设的的透支限额资金。
现金卡可用作电子存折和电子钱包,不允许透支
.
3.IC卡技术
(1)IC卡读/写技术
IC卡是一种集成电路卡,它的读写设备是每个IC卡应用系统不可缺的周边设备。
该设备通过IC卡的8个触点向IC卡提供电源与IC卡相互交换信息。
虽然IC卡是从磁卡发展而来的,但他在机器读/写性能上却远优与磁卡,无需往复的机械动作即可完成人-机-卡之间的多次会话过程,使卡在应用时操作简单,给人们带来极大的便利。
(2)IC卡的安全技术
信息安全的目的就是保证数据在确定的时间内,在确定的地点,在确定的条件下,只能被却定的对象使用。
而IC卡正是为了解决数据是安全问题而设计的,它采用的是半导体密码存放与软件加密技术,能够有效地阻止卡的非法复制与数据篡改,应用设备设备在脱离网络的情况下,可以对IC卡进行鉴别。
IC卡的信息安全一般具有以下特征:
保密性:
既防止XX的使用者获取信息;
完整性:
防止XX的信息改变(更改、删除、增加);
可获取性:
防止XX的截取信息;
真实型:
即通过一系列的技术措施验证信息的真实性;
持久性:
即长久时间信息保存的可靠性。
(3)数据存储技术
在一个应用系统的使用中,系统必须对所有持卡人建立一份身份与使用的档案。
在磁卡系统中,这组档案存放在中心数据库系统内,没次持卡人使用必须通过终端,以网络形式从
数据库系统中提出那分与自己有关的档案,IC卡的数据存储能路比磁卡要强得多,卡把持卡人有关的大量信息存放在卡中,因而使得IC卡使用的灵活性大大增强,交易的实时性也明显改善。
目前,IC卡的存储容量可达近1MB。
4.IC卡的技术特点
(1)芯片的制造技术与工艺
目前,IC卡用芯片扑片采用较为先进的CMOS,BICMOS等集成电路制造工艺,具有较好的点性能及抗干扰能力,一采用CMOS工艺制造的IC卡芯片为例,起主要技术指标为;
写入/删除次数最少可大100000次。
数据保存时间最少为10年。
工作电压为5V。
抗静电4000V左右。
噪音容限也较高。
(2)IC卡座的技术要求
IC卡卡座哈IC卡应有良好的接触点,应有尽量小的摩擦。
具有生产制造时的质量稳定性。
具有对应用环境(温度、湿度、震动及电磁干扰等)的适应性。
其中正确的工作顺序较为重要。
按有关ISO/IEC7816标准规定,在IC卡的触点和读/写设备的触点之前,读/写设备不应对磁卡施加有关点信号,以免造成不可预料的损坏。
IC卡读/写设备作为系统和用户交互的接口,必将棉队各种各样复杂的应用环境,如在金融系统应用中的ATM(自动柜员机),有可能放置在露天公共场合,处于高/低温、潮湿、电磁干扰等环境;在电车
、汽车自动售票系统应用中,处于振动、电磁干扰等环境。
因此,在设计阶段就应注意;IC卡读/写设备环境适应性问题。
二.IC卡的应用
IC卡的应用领域非常广泛。
它除了涵盖传统磁卡的全部功能外,还拓展到许多磁卡所不能胜任的领域。
这在很大程度上归功与IC卡的大容量数据存储能力和强有力的安全特性。
目前,IC卡除在金融系统外,在非金融系统也得到了广泛的应用。
如在通信领域中的公用电话卡,移动电话中的SIM卡;在交通领域中的驾驶员执照卡、停车收费卡、公交交通设施是自动收费卡及公共交通工具的自动收费卡等;另外在医疗保健、个人身份识别、预收费仪表、校园及消费娱乐领域中也得到了具体的应用。
(1)通信领域
数字移动电话中的用户识别模式智能卡(SIM卡)及公用电话用IC卡。
(2)医疗卫生和计划生育管理
卫生部计划发行医疗IC卡;国家计划生育委员会准备发行育龄妇女计划生育IC卡
(3)企业保险领域
用于医疗保险、失业保险、养老保险及儿童免疫接种等,目前海南、褡裢等地已发行IC保险卡。
(4)交通领域
用于汽车驾驶员管理、公交路费及公交或地铁自动售票,目前公安部已完成“机动车辆驾驶员违章处理IC卡”的标准起草工作,并已通过专家审定。
(5)对企、事业单位和社会团体的管理
国家工商局准备发行工商企业监管IC卡,并在部分省市试点。
(6)企、事业单位内部管理
目前已包括单位职工内部管理、场区内部通行控制、校园师生管理、饭店IC卡门锁及饭店内部消费等。
这类IC卡以集团、单位内部发行为主。
(7)公共事业
目前IC卡水表、电气及煤气表已在许多城市使用,今后会进一步推广。
(8)税务(包括国税和地税)
许多省市已开始使用IC卡进行税金的征收和稽查。
(9)加油
中国石化总公司和地方石油公司都已有组织地建立IC加油卡收费系统。
随着时间的推移,IC卡的应用范围将会越来越广泛。
它给人们的工作和生活带来很大的方便,相信在不远的将来,IC卡会真正走进我们的工作和生活。
第二章原理图
一.系统原理框图的绘制
1.Protel99软件的概述
(1)随着电子技术的飞速发展,新型电子器件和集成电路的永远日趋广泛,电子电路也变得越来越复杂,这给电路的设计工作带来了更大的难度。
因此通过计算机进行电子电路的互助设计成为设计电路板的一个基本手段。
Protel99包含众多的服务器,总提上可以分为5种组件,分别为:
原理图设计组件、PCB设计组件、布线组件、可边成逻辑器件组件和仿真组件。
由于其性能优越,Protel99已成为电路设计不可缺少的理想工具。
(2)下面简单介绍电路原理图的设计步骤。
总体来说,设计一个电路原理图,首先要设置图纸的大小和外形,对电路图进行总体规划,然后在图纸上放置元件,(其中,库里面没有我们所需的元件需要我们自己画)进行布局布线,接着对这个版面进行编辑和调整,最后保存或打印,具体的电路原理图的设计流程如图1所示:
图1
设计PCB板首先要启动Protel99-PCB编辑器。
启动该编辑器的操作步骤如下:
新建或打开一个设计数据库文件(*.ddb)。
进入设计文件夹Documents。
选择File/New命令,打开对话框。
双击该对话框中的
即可创建一个新的元件库文件,默认的文件名为PCB1。
在工作窗口中该文件的图标上单击或在设计浏览器中该文件名上双击,即可进入PCB板编辑器。
然后即可在PCB编辑板上画出所需的电路原理图,如下页所示:
二原理图:
第三章硬件部分介绍
一AT89C51单片机简介
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89c51是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C51是它的一种精简版本。
AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
1.主要特性:
·与MCS-51兼容
·4K字节可编程闪烁存储器
寿命:
1000写/擦循环
数据保留时间:
10年
·全静态工作:
0Hz-24Hz
·三级程序存储器锁定
·128*8位内部RAM
·32可编程I/O线
·两个16位定时器/计数器
·5个中断源
·可编程串行通道
·低功耗的闲置和掉电模式
·片内振荡器和时钟电路
2.管脚说明:
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
口管脚备选功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断1)
P3.4T0(记时器0外部输入)
P3.5T1(记时器1外部输入)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
3.振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配置为片内振荡器。
石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
4.芯片擦除:
整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。
在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。
此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。
在闲置模式下,CPU停止工作。
但RAM,定时器,计数器,串口和中断系统仍在工作。
在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。
二RS232串行接口
EIA-RS-232C是由美国电子工业协会EIA制订的一种串行物理接口标准。
RS-232C采用负逻辑,-5~-15V为逻辑1,+5~+15V为逻辑0。
而TTL电
平的“1”和“0”的特征电压分别为2.4V和0.4V,用RS-232C总线进行
串行通信需外接电路实现电平转换。
在发送端需用驱动电路将TTL电平转换
成RS-232C电平,在接收端用接收电路将RS-232C电路转换为TTL电平。
本
设计是用的TI公司的RS-232C收发器MAX232,可用单一+5V电源供电实现
电平转换。
RS-232C在设计中主要永远用于PC机与IC卡读/写器之间的通信,框图如下
RS-232C芯片的引脚结构如图5所示:
图5
图5中的C1、C2、C3、C4及V+、V—是电源变换电路部分。
在实际应用中,器件对电源噪音很敏感。
因此,VCC必须要对地加去耦电容,其值为0.1μF。
电容C1、C2、C3及C4取同样的数值的钽电解电容,用以提高抗干扰能力,在连接时必须尽量靠近器件。
MAX232的13、14管脚为串行异步通信发送及接受引脚。
三SLE4442卡简介
SLE4442卡内部有一个256 8bit EEPROM,不可逆的4个写保护字节,具备密码保护功能,可以随时读取主存储器内容;在校验成功后,可读保护存储器、读写安全存储器和写主存储器。
SLE4442有一个密码逻辑,用以控制对存储器的读写。
为此,SLE4442包含一个4字节加密存储区,该存储区有一个错误计数器EC(0-2位)和三个字节的参考数据,这三个字节作为一个整体,称为可编程密码(PSV)。
整个数据区除了参考数据,其它的数据都能被读取,在校验数据与内部参考数据比较正确后才能进行读写操作,连续三次比较错误后,错位计数器将阻止任何比较尝试,从而也消除了任何擦写操作。
四IC卡座
IC卡座引脚如图6所示,其中引脚SW1、SW2为微动开关在无IC卡状态时,处与断开状态;有卡插入时,IC卡卡座上的微动开关闭合。
因此,此开关往往是用来判断是否插IC卡的传感器件。
其引脚VCC:
工作电压;
SCL(CLK):
串行时钟;
GND:
接地;
SDA(I/O):
串行数据(输入/输出);
SW1、SW2:
微动开关
本设计中与逻辑有关的引出端先只有2条:
SCL和SDA。
所有的地址、数据及读/写控制命令等信号均从SDA端输入/输出。
为了区分线上的数据、地址、操作命令以及各种状态的“开始”与“结束”,卡片内设计就多个逻辑控制单元。
其中,启动与停止逻辑单元产生控制读/写操作的“开始”与“停止”标志信号。
“开始”状态:
当SCL处于高电平时,SDA从高电平转向低电平,即产生“开始”标志信号。
“停止”状态:
当SCL处于高电平时,SDA从低电平转向高电平,即产生一个“停止”标志信号,如图6所示:
图6读/写的启动与停止时序
SDA和SCL通常各自通过一个电阻拉到高电平,当SCL为高电平时,对应的SDA上的数据有宵;而当SCL为低电平时,允许SDA上的数据变化。
数据输入/输出应答逻辑单元产生数据输入/输出操作应答信号。
操作时所有的地址和数据字均一8位码串行输入/输出于卡片。
卡片没收到一个8位码长的地址或数据后都以置SDA线为低电平方式“确认”应答信号,其波形如图7所示
图7
五外围电路
(1)状态灯
IC卡的上电一般是可知的,即对IC卡读/写时,须给IC卡上电(送电源),因此,IC卡的上电控制比较简单。
由于IC卡读/写电流很小,一般为几个A,因此其实现可按照图8所示。
由单片机89C51的P14信号通过小功率三极管9012控制系统的+5V电源切入IC卡座。
当IC卡上电后,发光二极管L2被点亮,起读/写指示作用。
每次对IC卡读/写完成后。
即及时先电,以减少插拔时带电的可能性,要保证IC卡能任意插拔(有可能处于带电状态),不致IC卡损坏,必须使IC卡拔电过程处于断电的状态。
要做到这点,必须保证IC卡的下电迅速及时
图8
(2)蜂鸣器
一般所指的蜂鸣器是以压电陶瓷为主要元件的。
压电陶瓷是一类有将压力与电流相互转换能力的特殊陶瓷。
这种能力缘于其特殊的晶体结构。
当压电陶瓷在一定方向上受到一个压力使其晶体结构发生形变时,它就会在内