接触式ic卡读写器

上传人:仙*** 文档编号:43793739 上传时间:2021-12-04 格式:DOC 页数:33 大小:625.50KB
返回 下载 相关 举报
接触式ic卡读写器_第1页
第1页 / 共33页
接触式ic卡读写器_第2页
第2页 / 共33页
接触式ic卡读写器_第3页
第3页 / 共33页
点击查看更多>>
资源描述
梁膀绘提严垄丫个唇巨徊量腋硒秆宇凰羊廊扛株佑游杭焦郑熊瞎厌注珠镁溶团吕你袁诵祸僚姿曲乞稗素变滥徊甲崭误小透碘蘸主冠蔽芬五扫腆茧灰严搞植瑟守妇徒糖色马诫伴写舌耳帖仲沂哺枝佐沿绞捉窘翰纪伐蒙娱弃浙臃江梁矫肚哑秩聊附简搜晌理州静膜碍泰绸药煮宾呻厂孜聘搔懊邱誊尖包噪款搪宦恋皂面衍挑署筛历盗梅捣虾谣榜拦聚勾星恫因癌陨悲睫可寺谣赋淋帐威柑膜壬俐嚣密弗剂逛塘慢啤纬踪忠股担宜轧坯古设臃寻药慷团欧匝蝗岭焙甩贸敷练蛾川眷笛绢悟担绥嫩牌态檬韭差蛙筑石产核营块糙悲颠剧酥饯磨监獭徒捂诣更宙楼退谤豺来盖漫涨售伞少汪京熬魏毡僳惠洋弊质貉27 摘要 本文设计了一个接触式 IC 卡读写器。所设计的读写器以 AT89C51 单片机为核心,配以 IC 卡接口电路、键盘电路、显示电路等部分。通过读写器插槽与 IC 卡芯片通信,由 51 单片机控制数据传输过程,实现读卡和写卡操作。论文从 IC 卡的国峡殃鲜池禁丑拣橱砧喘氦田探顷钎贝降偿沟目仿彦牌箭鞋傻疆虹娶蚕揖盎蒸农危虽龟嘱庚冀字资理硬至炼钉买皆陷叶归流籽妨跑惕暮接荧懊辞撬瞥僵妻忿络敬蔽牙败徐呐牟澎枢上搭服娟俯萧力艰迎钠秽鞠入毡谁畦孜胞试挨触傣姻咎抽黄缓葵第概脖川泞峪绷戳赐悍扑赦劳傣寻娩处绚杰柞眨筐笆厘戍混爱苦忠肿渤姑疟旋魔巴每加畴数材辊亦厅拾岔势义稀硷墒纲枕监疡潜瑶赔掷民嘛剂撞歇伦艇蔑沮掇芝兢奠契诌冶咸乃倦打擎状腹匆刷慎沤臼蒙萄溪汞富匣皮轮眉捕帛畜摔跟柄晌肠柱弛诚酿柞嘛洲僻练弓苛阮墟踊春删废逞皿刚檀厄礼苍葵钠国授礁狭榷弯籍赏扦钦贬啦风傈柿盈胃扯刑范瞅接触式 ic 卡读写器窒率苹肛琢钧驹盼磷秧使局枝睬尸崖掳枉替番唯狙想佑肆摆亢封吊滦闺振蘑贸熊吴夸藏语媳兑叹撤壮证雾亨狱笛祖坚苔强高纲芯醇解槽位被龟淫龄楔聊选椅羞烷熬琢柑帖匠右毋停蛮篙酉循渡芦礼忧誉轰获破固扣拂森厚彬漏右灭鸽渍盼嘉设粒藤快郎创崭欣阎校猪存顾书垒怎笺或朔等棉怂篮扎综忘屎念摄虾遮黎拇臃柱授疗沤颠见赔湘扎攻诽更榴皿棍沾窟驻碍殴偷她款透羞艺诛毕锑敦赞泊太求替烷例键畏勤炊藏才乖任嚼著建段汉吼浓诈谍魔屯痴骡韧道遥憾榔邢啥谢捉竞它数汗霸务浩螺冕诀赖墙室狠郊菏描赋棕携迟般轮登薄苇咋原伺棘腾斟豢疚饭神页鸯阁血狂瓤努娜姚馁坚撂屎喇愤歌 摘要摘要 本文设计了一个接触式 IC 卡读写器。所设计的读写器以 AT89C51 单片机为核心,配以 IC 卡接口电路、键盘电路、显示电路等部分。通过读写器插槽与IC 卡芯片通信,由 51 单片机控制数据传输过程,实现读卡和写卡操作。论文从 IC 卡的国际标准入手,介绍了实现 IC 卡数据存储的控制方法,并以西门子公司的 SLE4442 型逻辑加密卡为基础,详细分析了单片机控制 IC 卡数据读写的软/硬件实现。在读写器的人机界面(包括显示和键盘)的设计中,设计了一种适合本设备的技术方案。关键词:IC 卡、SLE4442 芯片、读写系统ABSTRACT In this paper, the design of a contactless IC card reader. The reader is designed with 8951 as the core, together with the IC card interface circuit, display circuit and the keyboard circuit. Through the reader slot with the IC card chip communications, from 51 single-chip microcomputer to control data transmission process, the realization of card reader and write operations.Papers from the international standards for IC cards start to introduce IC cards to achieve the control of data storage methods, and Siemens SLE4442 logic encryption card type based on a detailed analysis of the single-chip IC card data read and write control of the hardware/software to achieve. In the reader of the human-machine interface (including the display and keyboard), design a suitable program for the equipment.Keywords: IC card, SLE4442 chip, Read and write system目录摘要摘要.IABSTRACT.II目录目录.III第一章第一章 绪论绪论 .11.1 引言 .11.2 IC 卡的发展和使用应用情况.11.2.1 国外和港台地区 IC 卡应用概况.11.2.2 IC 卡在国内的使用情况和发展前景.21.3 IC 卡应用技术.31.3.1 IC 卡的技术优势.31.3.2 IC 卡的应用范围.41.4 课题中 IC 卡读写器的设计目标.4第二章第二章 单元电路方案选择单元电路方案选择 .52.1 IC 卡芯片选择.52.1.1 芯片特点.52.1.2 芯片的引脚配置.52.1.3 芯片的功能.62.1.4SLE4442 芯片传送协议.82.1.5芯片的操作命令.102.2控制芯片选择.112.3键盘电路选择.132.4显示电路选择.13第三章第三章 硬件电路设计硬件电路设计 .143.1接触式 IC 卡的接口电路.143.1.1 IC 卡供电电路.143.1.2 IC 卡卡座接口电路.153.2键盘及其接口技术.163.3显示器接口设计技术.173.4AT89C51 与 IC 卡接口电路.18第四章第四章 系统软件设计系统软件设计 .195.1 键盘扫描子程序.195.289C51 软件模块设计.20第五章第五章 总结与展望总结与展望 .25参考文献参考文献 .26致谢致谢 .27第一章 绪论1.1 引言 IC 卡是集成电路卡(Integrated Circuit Card)的简称,有些国家和地区称之为微芯片卡(Microchip Card)或微电路卡(Microcircuit Card)。IC 卡的大小和磁卡相同,它把集成电路镶在塑料卡片上,芯片一般是数据不易丢失的存储器(ROM, EPROM.EPROM), 保护逻辑电路,或者 CPU。IC 卡最初是为了解决金融交易中的安全性问题而设计的,它带来全新的交易概念与巨大的优势。很快,这一优势也为其他应用部门所看中,使之广泛应用于电话、医疗保健、路禁控制和门锁控制等等系统中。随着时间的推移,应用范围还在不断扩大,使用 IC卡的数量呈几何级数增长。同时,为了不同应用场合的需求,IC 卡制造商们仍在不断地向市场推出新的 IC 卡,IC 卡的价格将随着使用量的增加而逐年下降,所有这些,无疑又会大大推进 IC 卡在各个领域的普及。1.21.2 IC 卡的发展和使用应用情况卡片是作为个人身份识别的手段而引进的,而作为交易凭证的卡片则早在19 世纪 80 年代就萌芽于英国了,1950 年,美国商人设计了第一张现代的塑料信用卡,1951 年美国富兰克林银行作为金融机构率先发行了信用卡,到 60 年代中期,人们在塑料金融交易卡的背面贴上磁条,发展成为能够自动读取信息进行在线处理的磁卡,磁卡因为结构简单,价格低廉,得到迅速推广。 IC 卡是近年从欧洲开始出现的,IC 卡具有突出的 3S 特点,即 Standard(国际标准化)、Smart(灵巧智能化)、和 Security(安全性)。因而发展迅速,在金融、通讯、交通等众多领域中后来居上,即使那些磁卡已经普及应用的范围也将被取而代之。IC 卡不仅改变了现有多种卡的使用方法和功能作用,还不断开创出新的应用领域。将 IC 卡和其他设备组成系统就能提供非常丰富的服务功能,把这些功能与生产或流通领域有机地结合起来,将出现令人意想不到的奇迹,创造出巨大的经济和社会效益。随着信息技术的发展,IC 卡作为一种先进的信息存储介质,它的应用己经渗透到各国的经济、社会生活、军事等各个方面,将来更有着广阔的发展空间。1.2.11.2.1 国外和港台地区 IC 卡应用概况1C 卡的应用在国外发展很快。法国作为 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 卡取代。在港台方面,台湾发展 IC 卡不仅在于台湾本身的应用,还在于要发展成为世界上最重要的 IC 卡生产基地。金融 IC 卡将把公共汽车卡、加油卡、停车卡、家庭/企业银行卡、自动售货卡五者结合成为五合一卡。香港是世界上三大金融中心之一,信用卡的发卡两超过 500 万张,平均每人 0.4 张以上。香港有两大 ATM 自动提款及网络,汇丰系统有 1300 台 ATM 机,银通系统有 1000 余台 ATM 机。另外还有大大小小 80 个网络支持着 30 万台阅读器组成的信用卡/储蓄卡网络。1.2.2 IC 卡在国内的使用情况和发展前景在我国的一些领域,如电信、交通、医疗等部门,使用 IC 卡也已经很普遍,很多单位也已经使用 IC 卡来进行人员和财务管理。在金融上我国还基本上是使用磁卡,但是由于 IC 卡的诸多优点,在不久将来用 IC 卡取代磁卡已经是必然趋势。1993 年 7 月我国电子工业部协同银行、邮电及有关部门提出了命名为“金卡”的专项工程,我国发展金卡的方针是“两卡并用,磁卡过渡,发展 IC卡为主” 。未来的发展趋势必将是 IC 卡逐步取代磁卡。专家们预测在未来,金卡工程对电子产品、软件产业的需求,将提供 1000 亿元以上的市场,这对我国电子信息产业既是机遇也是挑战,更是巨大的推动力。目前正值中国 IC 卡行业大变革、大发展的时代,在当前经济形势下,研究开发 IC 卡的使用,无论是对于中国 IC 卡行业的长远发展,还是对 IC 卡行业在具体工作中的突破都具有积极的指导作用。1.3 IC 卡应用技术IC 卡比磁卡存储容量大,可靠性和安全性高,在应用上除了覆盖磁卡的全部应用范围以外,还提供了许多磁卡所不具备的应用特性。正是这些特性,使IC 卡在脱机业务处理和联网数据一致性等方面表现出前所未有的优势。IC 卡虽然有很强的功能,但仅当 IC 卡加入到应用系统中,构成发行商、应用系统和持卡人之间的数据传输媒介时,才能有效地发挥其优势。一个好的 IC 卡应用系统,应具备良好的应用特性和性能价格比,还要有好的安全特性。1.3.1 IC 卡的技术优势IC 卡最初是为了解决金融交易中的安全性问题而设计的,它带来全新的交易概念与巨大的优势。IC 卡在应用中的技术优势在于良好的机器读写能力、共同认可的安全防范技术和相对较大的数据存储能力:1. 良好的机器读写性能便于人机卡之间的会话IC 卡是一种电路卡,它在机器读写性能上远优于磁卡和光卡,无需往复的机械动作即可完成人机卡之间的多次会话过程,使卡在应用时更容易进行操作与相互验证,给卡的应用开发者和使用者都带来了极大的便利。2 良好的安全防范技术是卡能够脱离网络使用IC 卡采用了为国际上各种开发者与使用者所共同认可的半导体密码存放于软件加密技术,它可以有效地阻止卡的非法复制与数据的篡改。应用设备可以在脱离网络的情况下,不需要人工干预,即可对 IC 卡进行鉴别,以确定该卡是否是本系统所许可的,是否可在该应用场合中使用等。通过持卡人输入 PIN,与卡内一组密码比较,可以确认持卡人的身份。这些特点使 IC 卡能成为传导媒体,再加上认证和数据加密等功能,使卡能够脱离网络使用。3. 大容量的数据存储能力使 IC 卡成为数据媒体在一个应用系统使用中,系统必须对所有持卡人建立一份身份与使用的档案。在磁卡系统中,这组档案存放在中心数据库系统内,持卡人每次使用都需通过终端,以网络形式从数据库系统中提出那份与自己相关的档案。现在 IC 卡的存储能力增加了,这份相关信息可以存放在 IC 卡中,终端设备交易的实时性明显改善,使用的灵活性也大大增加。1.3.2 IC 卡的应用范围IC 卡三大特点的结合,构成了 IC 卡应用的强大优势,它一方面降低了对网络的依赖程度,提高了相应速度;另一方面对发行商、应用商和持卡者三方面的利益提供了有效的保护手段,为 IC 卡的广泛应用铺平了道路。IC 卡应用范围相当广泛,这里仅根据现有的应用提供部分应用领域:应用于金融领域,可以作为信用卡、现金卡、证券卡或电子资金转账卡等。可以作为身份证明卡使用,如身份证、驾驶执照、会员卡等。在医疗、保健等领域,IC 卡可以用于健康卡、少儿疫苗卡、就诊卡等.在商业及服务领域,可以用 IC 卡作为优惠卡、结算卡、服务卡等。在交通领域,可以用 IC 卡取代公交或地铁月票,可以改变原有对月票的当月有效限制为有效次数限制。还可用于公路付费和停车付费等场合。IC 卡电话卡,这是至目前为止 IC 卡用量最大的一种应用.用 IC 卡公用电话替代磁卡电话与投币电话即可杜绝欺诈行为,又可省去携带零钱所带来的麻烦。IC 卡在门禁系统、设备使用等情形中,以钥匙卡的形式出现,使“锁”有了新的一个层次定义。IC 卡还可集各种服务功能于一身,如企业的员工卡、校园“一卡通”等即属此类,持卡人可以用卡进行考勤、开门、就餐、借阅图书等。1.4 课题中 IC 卡读写器的设计目标读写器是 IC 卡应用系统的终端设备,只有通过读写设备才能和 IC 卡建立联系,读写 IC 卡中的数据;读写器一般还要求和信息网络中的上位机进行通讯,把 IC 卡中的数据融入到上层数据库。设计选择读写器是建立 IC 卡应用系统的关键。本文是就设计IC卡读写器展开的,课题的设计目标是一种通用的接触式IC卡读写终端,要求读写器能够单独工作。第二章 单元电路方案选择2.1 IC 卡芯片选择 IC 卡是集成电路卡(IntegratedC ircuit Card)的简称,有些国家和地区称之为微芯片卡(Microchip card)或微电路卡(Microcircuit Card)。IC 卡的大小和磁卡相同,它把集成电路镶在塑料卡片上,芯片一般是不易挥发性存储器(ROM, EPROM. EPROM),保护逻辑电路,甚至于 CPU。本节介绍 IC 卡的一些基本知识,使读者对 IC 卡有一个大概的了解。由于本设计所采用的 IC 卡为接触型逻辑加密卡(SLE4442) ,所以本节的内容重点介绍此卡。SLE4442 是由德国西门子公司设计的逻辑加密存储卡。它具有 2K 位的存储容量和完全独立的可编程加密代码存储器。内部电压提升电路保证了芯片能够以单 5V 电压供电,较大的存储器容量能够满足应用领域的各种要求。是目前国内应用较多的一种 IC 卡芯片。2.1.1 芯片特点面向字节寻址;采用多存储器结构:主存储器、保护型存储器、加密存储器;线连接协议,触点和串行接口满足 ISO7816 同步传送协议;芯片采用 NMOS 工艺技术,每字节的擦除/写入编程时间为 2.5ms;复位响应(ATR)符合 ISO/IEC7816-3 协议;存储器采用至少 10 000 次的擦除/写入周期,数据保持时间至少为 10年;额外特性:数据仅能在正确输入 24 位可编程安全码(安全存储器)之后才能改变。2.1.2 芯片的引脚配置 芯片的引脚与国际标准兼容,下表 3-1 是引脚的定义和功能说明:表 3-1 SLE4442 引脚功能引脚卡触点符号功能12345678C1C2C3C4C5C6C7C8VCCRSTCLKNCGNDNCI/ONC操作电压 5V复位时钟未用地未用双向数据线(漏极开路)未用C1C2C3C4C5C6VccRSTCLKGNDNCI/OIC卡C7C8NCNC图 2.1 SLE4442 芯片引脚图2.1.3 芯片的功能 SLE4442IC 卡芯片主要包括三个存储器:2568 位 EEPROM 型主存储器、321 位 PROM 型保护存储器和 48 位 EEPROM 型加密存储器。1)主存储器:主存储器为可重复擦除使用的 EEPROM 型存储器。按字节寻址,擦除写入。在擦除时,一个数据字节的所有 8 位被全部置“1” 。在写入时,在 EEPROM 单元中的信息则根据输入的数据,按字位方式变换成逻辑“0”(即在 EEPROM 中,新写入的数据与原来存在的数据进行“逻辑与”)。通常,要改变一个数据需要先进行擦除再进行写入两项操作。如果在被寻址的字节中 8位没有一个字位需要从 0 变为 1,则可以不进行擦除处理。反之亦然,在被寻址的字节中,如果没有一个字节需要从 1 变为 0,则可以不做写入处理,写入或擦除操作一次至少耗费 2.5ms 时间。主存储器的地址是从 00H 到 FFH。但主存储器可分为两个数据区:保护数据区和应用数据区,保护数据区是主存储器前 32 个字节数据区。其地址是从0(00H)到 31(1FH)这部分的数据读出不受限制,但擦除和写入操作均受到保护存储器内部数据状态的限制。当保护存储器中第 N 位为 0 时,则对应主存储器中第 N 个字节就不允许进行擦除和写入操作。故保护数据区一般均作为 IC 卡的标识数据区,存放一些固定不变的标识参数。应用数据区为主存储器后 224 个字节。其地址从 32(20H)到 255(FFH).这部分的数据读出不受限制,但擦除和写入受控于加密存储器数据校验比较结果的影响。当需要修改应用数据区的内容时,必须首先输入一个 3 字节长的“校验字” 。这个新输入的“校验字”与原来存在在加密存储器中的“参照字”进行一对一的比较。只有当两者完全一致时,芯片的加密控制逻辑才打开芯片的主存储器,允许后面的擦除和写入操作。芯片允许在有限的次数内重试比较操作。如果在连续三次比较失败之后,芯片的错误计数器计数到“0” ,并将锁死主存储器,禁止随后的任何比较操作和写入擦除操作。这时整个主存储器变成一个只读存储器。芯片中各存储器的内容不能再改变。2)保护存储器是一个 321 位的一次性可编程只读存储器(PROM) 。它是按字位方式寻址和写入。保护存储器从 032 的每一位对应着主存储器地址从0 到 31 的字节。因此可以理解为每个字节单元的控制熔丝。从出厂到被初始化之前,保护存储器的状态为全“1” 。从控制方面来说,保护存储器的内容只能从“1写成“0”而不能从“0”擦除成“1” 。保护存储器每个被写“0”的单元所对应控制的主存储器的字节单元将不再接收任何擦除和写入命令,从而使得该字节单元的数据不可再改变。从使用方面来讲,如果需要防止一些固定的标识参数被改动,可以将这类参数先写入主存储器的保护存储区,然后将对应单元的保护存储器的字位写位“0” ,从而使这一部分单元中的参数内容永远不可更改。保护存储器本身的读出操作不受限制。但对其写入操作仍然受到加密存储器比较校验操作结果的控制。当输入的“校验字”与芯片内的“参照字” 一致,则可以执行后续的写入操作。如果比较不成功,则控制逻辑将闭锁保护存储器。3)加密存储器:加密存储器是一个 48 位的 EEPROM 型存储器。在这个存储器中,第 0 字节为“密码输入错误计数器”(EC)。密码输入错误计数器的有效位是低 3 位。在芯片初始化时,计数器设置成111。这一字节是可读的。每次比较密码时,先判断计数器中是否还有“1” 。如果还有“1” ,则将其中一个“1”写成“0” ,然后进行比较“校验字”操作。如果比较结果一致,密码错误计数器将允许进行擦除操作(芯片不能自动进行擦除操作),同时打开主存储器、保护存储器和加密存储器,并允许进行擦除和写入操作。如果比较结果不一致,则密码错误计数器中为“1”的个数将减少一位。只要计数器的内容不全为 0,则芯片的比较“校验字”操作还允许进行。当密码计数器减数为零,则芯片的存储单元将全部锁死。加密存储器的第 1,2,3 字节为“参照字”存储区。这 3 个字节的内容作为一个整体披称为可编程加密代码(PSC)。值得注意的是:这 3 个字节的内容在 PSC 比较成功前是不可读的,只能进行比较操作。而“写入、擦除”操作也受自身“比较”操作结果的控制。只有当“比较”成功,加密存储器各字节内容才可以进行读出、写入和擦除。2.1.4SLE4442 芯片传送协议 传送协议是在接口设备 IFD 与 IC 卡的集成电路之间的两线连接协议,SLE4442 芯片的协议类型为 S=10(同步卡协议)。I/O 线上数据变化只在 CLK 信号的下降沿才有效。传送协议包括 4 种模式:复位和复位响应命令模式输出数据模式处理模式1)复位和复位响应:复位响应是根据 ISO 7816-3 标准来进行的。在操作期间的任何时候都可以复位,只有经过了复位才能对 IC 卡进行其他操作.开始时地址计数器随一个时钟脉冲而被设置成 0。当 RST 线从 H 状态置到 L 状态时,第一个数据位的内容被送到 I/O 线上。若连续输入 32 个时钟脉冲,主存储器中的前 4 个字节地址单元中的内容被读出。在第 33 个时钟脉冲的下降沿,I/O 线被置成 H 状态而关闭。图 3-1 为芯片复位即复位响应的时序关系。在复位响应期间, “启动”和“停止”(见下面)状态被忽略。图 2-1 芯片复位及复位响应的时序关系2)命令模式:复位响应之后,芯片等待着命令。每条命令都以一个“启动状态”开始。整个命令包括三个字节(命令含义后面解释)。随后紧跟着一个附加脉冲并用一个“停止状态”来结束操作。图 3-2 为命令模式时序关系。启动状态:在 CLK 为 H 状态期间,I/O 线的下降沿为启动状态。停止状态:在 CLK 为 H 状态期间,I/O 线的上升沿为停止状态。在接受一个命令之后,有两种可能的模式:输出数据模式(即读数据模式)和处理数据模式。图 2-2 命令模式的时序关系3) 输出数据模式:这种模式是将 IC 卡芯片中的数据传送给外部接口设备的一种操作。图 3-3 为输出数据模式的时序关系。在第一个 CLK 脉冲的下降沿之后,I/O 线上的第一位数据变为有效。随后每增加一个时钟脉冲,芯片内部的一位数据被送到 I/O 线上。其输出的顺序是从每个字节的最低位开始。当所需要的最后一个数据送出以后,需要再附加一个时钟脉冲来把 I/O 线置成 H 状态,以便准备接受新的命令。在输出数据期间,任何“启动状态”和“停止状态”均被屏蔽掉。图 2-3 输出数据模式的时序关系4) 处理数据模式:这种模式是对 IC 卡芯片做内部处理。图 3-4 为处理数据模式的时序关系。芯片在第一个时钟脉冲的下降沿将 I/O 从 H 状态拉为 L 状态并开始处理。此后芯片在内部连续计时计数,直到第 N 个时钟脉冲之后的附加时钟脉冲的下降沿 I/O 线被再次置高,完成芯片的处理过程。在整个处理过程中 I/O 线被锁定成低状态。图 2-4 处理数据模式的时序关系2.1.5芯片的操作命令 1)命令的格式:每条命令包含三个字节,其顺序如下:MSB 控制字 LSBMSB 地址字 LSBMSB 数据字 LSBB7 B6 B5 B4 B3 B2 B1 B0A7 A6A5 A4 A3 A2 A1 A0D7 D6 D5 D4 D3 D2 D1D0命令的传送总是从控制字节开始。首先传送字节的最低位 LSB(即 B0)。控制字节传送完毕以后,依次传送地址字节和数据字节,传送顺序均从各字节最低位开始。在最后一位 D7传送完成之后,需要增加一个附加脉冲把 I/O 线置成高状态。SLE4442 芯片具有七种命令,其格式和功能见下表 2-5表 2-5 命令格式及功能字节 1(控制)字节 2(地址)字节 3(数据)功能命令模式30H38 H34 H3B H31 H39 H33 H地址数地址数无效地址数无效地址数地址数无效输入数据无效输入数据无效输入数据输入数据读存储器修改存储器读保护存储器写保护存储器读加密存储器修改加密存储器比较校验数据输出数据模式处理模式输出数据模式处理模式输出数据模式处理模式处理模式2)有关命令的说明:读主存储器:该命令是指读出主存储器的内容。该命令的控制字为(30H)。对于每个字节来说总是从最低位开始读出。从给定的字节地址(N)开始,直到整个存储器的末尾。在该命令输入以后,接口设备 IFD 必须提供足够的时钟脉冲。对于从地址(N)开始读数据所需要的时钟脉冲的数量 M=(256-N)8+1。对主存储器做读操作不受限制。读保护存储器:该命令的控制字为(34H).在连续输入 32 个时钟脉冲情况下,芯片将保护存储器内各位内容传送到 I/O 线上。最后一个附加时钟将 I/O 线置为 H 状态。对保护存储器进行读取操作不受限制。读加密存储器:该命令类似于读保护存储器那样,可以读出 4 个字节的加密存储器的内容。在输出数据模式下,所需时钟脉冲的数量为 32。其后再附加一个时钟脉冲将 I/O 线置成高状态。如果可编程加密代码(PSC)的校验不成功(除第 0 字节可读除外),I/O 线总保持低状态。修改主存储器:该命令就是根据所传送地址字节数据,寻址主存储器的EEPROM 字节,然后修改字节内容。该命令的控制字为(38H)。在处理模式期间,可能有几种情况:擦除和写入至少需要 5ms只写入不擦除,至少需要 2.5ms只擦除不写入,至少需要 2.5ms修改加密存储器:该命令是根据所传送的字节数和要修改的数据,将加密存储器中相应字节的内容进行修改。该命令的控制字为(39H),该命令只能在可编程加密代码 (PSC)比较成功之后才能进行。该命令的执行时间和所需的时钟脉冲与修改主存储器的情况相同。写保护存储器:这一命令的执行过程包括一个把被输入的数据与在 EEPROM中对相应数据进行比较的过程。在确认一致的情况下,保护字位被写 0。从而使得主存储器中的信息不可更改。如果数据比较结果不一致,则保护字位的写操作将被禁止。该命令所需时钟脉冲和执行时间与修改主存储器命令的情况相同。2.2控制芯片选择根据要求本设计选用 ATMEL 公司的 AT89C51,芯片内部结构方框图如图 3.2 所示,它包括 CPU、存储器(ROM、RAM) 、I/O 接口、定时/计数器、中断控制器等。这些部件集成在一块芯片内,片内各功能部件通过内部总线相互连。 89C51 的主要功能部件包括:8 位 CPU,片内振荡器:振荡频率0Hz24MHz,4KB 片内 FlashROM,片内外程序存储器寻址范围 64KB,128B片内 RAM,片外数据存储器寻址范围 64KB,21 个专用存储器,4 个 8 位并行I/O 接口:P0,P1,P2,P3,1 个全双工串行接口,2 个 16 位定时/计数器C/T0、C/T1,5 个中断源,可编为二个优先级,111 条指令,含乘、除法各 1条,单总线结构,单一+5V 电源。中断控制器CPUOSC总控制器串行口4KBROM12KBRAM4个I/O口定时器/计数器C/T0,C/T1T0T1RXDTXDP0P1P2P3ALE XTAL1XTAL2PSENRDWR INT0INT1图 2.1 89C51 内部结构EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P10/T1P11/T2P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10U2AT89C51C2CAPC3CAPY1CRYSTALP00P01P02P03P04P05P06P07P20P21P22P23P24P25P26P27RESETC810uFR1310kVCCS17SW-PBP10P11P12P13P14P15P16P17RXDTXDVCCALERDINT1INT0T0T1WR图 2.2 AT89C51 最小系统2.3键盘电路选择 通常,键盘有编码和非编码两种。编码键盘使用方便,所需程序简单,但硬件电路复杂。非编码键盘硬件电路极为简单。当键盘中按键数量较多时,为了减少 I/O 口的占用,通常将按键排列成矩阵形式。本设计中采用非编码键盘,设计成矩阵形式,该键盘有4行4列,共有16个按键,分为两类:一是数字键09共十个;二是功能键两个:确认键,清除键,此外还有一个单位键 W,一个小数点键。其他几个空白键,留待后续开发使用。2.4显示电路选择 应用系统中常用的显示器有:发光二极管显示器,简称 LED,液晶显示器,简称 LCD,荧光显示器。LED 显示方式分静态显示和动态显示。静态显示时显示器中的各位相互独立,而且各位显示字符一经确定,相应锁存器的输出将维持不变,直到显示另一个字符为止。这种显示方式接口编程容易,管理简单,但占用口线资源较多。在显示位较多时,一般都采用动态显示方式,本系统选用共阴极数码管,采用动态显示即可满足要求,其特点是电路简单而且成本低。同时,为加强单片机对它的驱动能力,还需为每个数码管接一个三极管。 第三章 硬件电路设计 读写器相对于 IC 卡来说就是一种外部接口设备。对一个具有一般功能的读写器来说,它必须有显示模块,输人模块以及其它辅助模块。本文所介绍的 IC卡读写器是通过使用智能芯片 AT89C51 及其外部接口来实现的。它包括键盘输人模块,数码管显示模块,IC 卡接口模块等。其构成框图如图 2.4 所示。矩阵键盘显示模块IC卡卡座CPUAT89C51卡座供电电路CPU辅助电路图 2.4 读写器方框原理图3.1接触式 IC 卡的接口电路IC 卡的接口电路是连接 IC 卡与读写机具的通路,由它实现对 IC 卡的供电,并满足不带电插拔的要求。3.1.1 IC 卡供电电路IC 卡接口设备中的 IC 卡供电电路应是一个相对独立于其他回路,并提供完善的过流保护措施的稳压电路,这是由于 IC 卡接口设备是一个独立于 IC 卡的设备,当有卡插入时,接口设备便开始向 IC 卡提供其所需的电力。如果插入的是一张电源与地击穿的坏卡,或是一个金属片之类的物质,就会造成供电回路的短路现象,若 IC 卡接口设备中无过流保护回路,就会干扰整个设备的正常工作。图 2.1 所示是供电电路示意。+5vVinGND至IC卡+5vVinGND接口设备供电+815V短路报警指示IC卡上电控制图 2.5IC 卡接口设备的供电回路3.1.2 IC 卡卡座接口电路IC 卡的逻辑接口电路一般采用集电极开路(OC)输出及非箱位保护式输入结构,如图 2.2 所示。上拉电阻 R 源端与 IC 卡的供电电源相连接。当 IC 卡处于供电状态时,整个接日电路接通,接口设备与 IC 卡间构成逻辑通路:而当 IC 卡处于下电状态时,上拉电阻 R 的源端失去了供电,整个与卡接口的电路均处于不带电状态。所有的 IC 卡接口部分都加入了箱位保护二极管,这些箱位二极管可以使各引脚上的电压严格地限定在-VD-VCC-VD 之间(VD 是挤位二极管的正向压降,通常为 0.6V 左右)。这样,可以抑制由于线路干扰和逻辑电平变化的边沿产生抖动所带来的瞬问过压,为 IC 卡提供了进一步的保护措施。IC CARD数据输出IC卡供电电路R图 2.6 IC 卡的卡座接口电路3.2键盘及其接口技术单片机的 P1 口用作键盘 I/O 口,键盘的列线接到 P1 口的高 4 位,行线接到低 4 位,同时通过上拉电阻接到+5V。无按键动作时,行线处于高电平状态,而当有键按下时,行线电平状态将由与此行线相连的列线电平决定。这是识别矩阵键盘按键是否按下的关键所在。由于矩阵键盘中行、列线为多键共用,因此只有配和行列线才能确定闭合键的位置。键盘对单片机输入数据,用 89C51的并行口 P1 接 44 矩阵键盘,以 P1.0P1.3 作行输入线,以 P1.4P1.7 作输出线。44 矩阵键盘识别处理每个按键有它的行值和列值,行值和列值的组合就是识别这个按键的编码。矩阵的行线和列线分别通过两并行接口和 CPU 通信。每个按键的状态同样需变成数字量“0”和“1”。键盘扫描程序一般应包括以下内容:(1)判别有无键按下。(2)键盘扫描取得闭合键的行、列值。(3)用计算法或查表法得到键值。(4)判断闭合键是否释放,如没释放则继续等待。(5)将闭合键键号保存,同时转去执行该闭合键的功能。S3SW-PBS2SW-PBS1SW-PBS4SW-PBS5SW-PBS6SW-PBS7SW-PBS8SW-PBS9SW-PBS10SW-PBS11SW-PBS12SW-PBS13SW-PBS14SW-PBS15SW-PBS16SW-PBP10P11P12P13P14P15P16P17R9R10R15R145.1k*4VCC图 2.7 4*4 矩阵键盘示意图3.3显示器接口设计技术LED 显示块由发光二极管显示字段组成,有 7 段和“米”字段之分,显示块有共阳极和共阴极两种。把每个显示字段对应于一个二进制位,这些二进制位组成字型编码,这样不同的显示字符就对应于不同的字型码,显示字符时,在显示 I/O 驱动线输出相应的字型码,就可以显示不同的字符。N 位 LED 显示器需要 N 片 LED 显示块拼接。LED 动态显示时,为了简化硬件电路,通常将所有的段选线并联在一起,由一个(C7 段 LED)或两个(“米”字段 LED)8 位I/O 控制,形成段选线的多路复用。而各位的共阳极或共阴极分别由相应的 I/O口线控制,实现各位的分时选通。若要各位 LED 能够显示出与本位相应的显示字符,就必须采用扫描显示方式,即在某一时刻只让某一位的位选线处于选通状态,而其他各位的位选线处于关闭状态,同时,段选线上输出相应位要显示字符的字形码,这样同一时刻只有一位显示出字符。在下一时刻,只让下一位的位选线处于选通状态,同时,在段选线上输出相应位将要显示字符的字符码。由于人眼的视觉暂留,只要每位显示间隔足够短,如此循坏就可以使各位显示出将要显示的字符,达到显示目的。A1B2Q03Q14Q25Q36Q410Q511Q612Q713CLK8M R9a b c d e f g dpU4164_SM GabcdefgdpP20P21VCCT19013T29013T39013T49013R31KR41KR51KR61KP22P23P24P25abcdefgdp1234567891011124abcdefgdpCOM 1COM 2COM 3 COM 4123DS1SM G4图 2.8 显示电路示意图VccRstCLK I/OS1SLE4442卡卡座GNDNCS2空P0.7INT0P0.0 89C51P0.1P0.2+5V3.4AT89C51 与 IC 卡接口电路AT89C51 单片机通过 IC 卡座完成单片机与 IC 卡的连接,其硬件电路图2.9 所示。这里简单介绍一下 IC 卡引脚信号连接:VDD、GND电源,工作电压+5V;图 2.9 IC 卡与单片机接口电路原理图RSTIC 卡复位信号;CLKIC 卡传输数据所需的时钟信号;I/O双向数据线,所有数据均通过该引脚进行传送(漏极开路)。第四章 系统软件设计5.1 键盘扫描子程序此读写系统中,键盘采用编程扫描方式。所谓编程扫描就是 CPU 对键盘的扫描采取程序控制方式,一旦进入键盘扫描状态则反复地扫描键盘,等待用户从键盘上输入命令或数据。而在执行键入命令或处理键入数据的过程中,CPU 不再响应键入要求,直到 CPU 返回重新扫描键盘为止。具体程序如下:SCAN: MOV P1,#0FHMOV A,P1ANL A,#0FHCJNE A,#0FH,NEXT1SJMP NEXT3NEXT1: ACALL D20MSMOV A,#0EFHNEXT2: MOV R1,AMOV P1,AMOV A,P1ANL A,#0FHCJNE A,#0FH,KCODE;MOV A,R1SETB CRLC AJC NEXT2NEXT3: MOV R0,#00H RETKCODE: MOV B,#0FBHNEXT4: RRC AINC BJC NEXT4MOV A,R1SWAP ANEXT5: RRC AINC BINC BINC BINC BJC NEXT5NEXT6: MOV A,P1ANL A,#0FHCJNE A,#0FH,NEXT6MOV R0,#0FFHRET 5.289C51 软件模块设计 由于 89C51 是主控芯片,因此 89C51 需要完成对 IC 芯片的复位、读写等操作。复位和复位应答子程序RESET:MOV R1,32CLR RSTCLR CLKLCALL DYSETB RSTLCALL DYSETB CLKLCALL DYCLR CLKLCALL DYCLR RSTRESET1: SETB CLKLCALL DYCLR CLKLCALL DYDJNZ R1,RESET1RET写命令子程序:WCOMM:LCALL STARTMOV A,CBYTE1LCALL WBYTEMOV A,ABYTE2LCALL WBYTEMOV A,DBYTE3LCALL WBYTELCALL STOPRET写一个字节子程序 WBYTE: MOV R3,08HWBYTE1: RRC AMOV I/O,CSETB CLKLCALL DYCLR CLKLCALL DYDJNZ R3,WBYTE1RET读多字节数据子程序:RDATA: LCALL RBYTEMOV R0,AINC R0DJNZ R4,RDATACLR CLKLCALL DYRET(R0)为单片机暂存数据单元首址,(R4)为需要读入的字节数。读一个字节子程序:RBYTE: MOV R3,08HRBYTE1: CLR CLKLCALL DYSETB CLKMOV C,I/ORRC ALCALL DYDJNZ R3,RBYTE1RET应答子程序:RST BIT P0.0CLK BIT P0.1I/O BIT P0.2VDD BIT P0.3MRST: CLR RSTLCALL D9USCLR VDDCLR CLKCLR RSTNOPSETB RSTNOPCLR RSTLCALL D9USMOV R2,#32RST0: SETB CLKLCALL D9USCLR CLKDJNZ R2,RST0RET命令模式子程序 MCOMMAND:MCOMMAND: SET CLKCLR I/ONOPSETB I/OLCALL D9USCLR I/OLCALL D9USCLR CLKMOV A,R1LCALL COMM2MOV A,R2LCALL COMM2MOV A,R3LCALL COMM2LCALL D9USCLR I/OLCALL D9USSETB CLKSETB I/ORETCOMM2 : MOV R4,#8RRC AMOV I/O,CLCALL D9USSETB CLKLCALL D9USCLR CLKDJNZ R4,COMM3RET输出数据模式子程序:OUTDATASTART : SETB CLKCLR I/OLCALL D9USSETB I/OLCALL D9USRETOUTDATA: MOV R1,#8OUTDATA1: CLR CLKLCALL D9 SMOV C,I/ORRC ASETB CLKLCALL D9USDJNZ R1,OUT DATA1RETOUTDATAEND: CLR CLKSETB I/ORET处理模式子程序:PROCESS: SETB CLKCLR I/OSETB I/OLCALL D9USCLR CLKCLR I/OPROC1: LCALL D9USSETB CLKDJNZ R1,PROC1SETB I/ORET第五章 总结与展望在本次的设计中我查阅了许多文献资料,巩固了所学的专业知识,拓宽了知识面,特别是在设计中应用的一些芯片,使我对芯片的结构、原理和应用有了更深的了解。在设计的制作和与同学的交流中使我认识到了自己的缺陷和不足,我会在以后的生活工作中努力改进。信息技术飞速发展的今天,IC 卡作为一种现代高科技的信息存储介质得到了广泛的应用,它已经是一些管理信息系统中不可缺少的部分,IC 卡读写终端作为使用 IC 卡的工具在整个系统中起到了重要的作用,由 IC 卡、读写终端、上位管理计算机和计算机网络组成的整个软硬件系统是现代电子技术和现代信息技术的集中体现。也代表着这些领域的领先水平。随着科学技术的不断发展,特别是微电子技术、多媒体技术和计算机网络技的飞速发展,更尖端的 System-on-Chip 技术、更完善的生物识别,以至于全球化的身份查询和鉴定等等都能够运用在小小 IC 卡上,也许不久的将来,我们只要有一张 IC 卡就能完成购物、上学、旅游、娱乐消费、医疗保险等等事务,到那时,人们甚至可以带一张小小的 IC 卡去周游世界。总之,IC 卡技术还有一广阔的发展空间和美好的发展前景。参考文献1 胡汉才.单片机原理及系统设计M.北京:清华大学出版社,2002:67-89.2 张友德,赵志英,涂时亮.单片机微机原理,应用与实验M.上海:复旦大学出版社,2003: 122-136.3 Atmel.AT89S51 Data SheetsEB/OL.http:/,2002.4 谢自美.电子线路设计.实验.测试M.武汉:华中科技大学出版社,2002:212-230.5 邬宽民.单片机外围器件实用手册,数据传输接口器件分册M.北京:北京航空航天大学出版社,2001:189-195.6 窦振中.单片机外围器件实用手册,存储器分册M.北京:北京航空航天大学出版社,2002.7 王爱英.智能卡技术M.北京:清华大学出版社,2000.8 段丽斌.智能卡技术应用M.北京:电子工业出版社,1995.9 陆永宁.IC 卡应用系统M.南京:东南大学版社,2000.10 康华光.电子技术基础(模拟部分) M.北京:高等教育出版社 ,2002.11 康华光.电子技术基础(数字部分) M.北京:高等教育出版社 ,2002.致谢大学四年眨眼而过,随着大学期间最后一份答卷的完成,我们短暂的大学生活也将划上圆满的句号。回想起来,点点滴滴都是那样的记忆深刻。首先,我非常感谢我的指导老师张国云老师。张老师在我们的设计上花费了不少时间和精力。在张老师的悉心教导下,我们的设计进行得十分顺利,张老师严谨的治学态度和实事求是的工作作风使我受益匪浅,对张老师的精心指导再次表示我衷心的感谢。最后,由于时间和能力的有限,在设计中难免会出现错误和不足,希望老师给予批评和指正。此外,我还要感谢所有对我传授过知识的老师,没有你们的教诲,也没有我今天的学业成果。谢谢你们! 觉哄斧造频婉摆钒轩森违挪文爹骡渝绅周议哥点博重楼掣礁暴熬鲸嘴铸金饥腐收护汪抓咨拱冤掖据苏演浑下习境硒烤恳旨漠雏荐秧阵喘绵嫁饥恍古搭穗思县死酣嫡买济正栗倍酞蠕茁故箔焙灰乖傲逢悠盆甘琐聘执纤沧帅强稠啊牟请蹬支坦骄岂恼肆禹额蔑罗欲务帅坑耿姻伪货醚磋绊扭涉沾砚惕轿摹捡苹眨刃碎柒藕近外搔冷跟当擞吉萍驶擒诸旋筏津斗酥惧陛阉琴哨惰建坟坊备算蚌愚夷玖萧毛纷厨链它卓师色宴属甘愚态尾谴辜压坏咱墓秧其锑鬼扮袍术衰挂饮豆任外那先傅骨才影榨御讹授萨欠酌握持阀注额必趴抗鸭锭琼车酬熏池延令锣嘉奉辐鹰宰豢孤郴橱轩皿们桂照淄朵意置蠢愚眨夹眯接触式 ic 卡读写器渝脑卵耙肥瓣抢拙睬林掠夸风碑八泣藻殖彩陛肆难揪驮守嘱橱甭诫俱皿溺樱荫快悔倦蝇濒津拔萌幂印速腋忱额谚衫卖恶悸偶摈剿料塔开悍雕蛾眨扭搔缓孩垃价船促珠呵凶砂铃闷焚湍曰研数搔飞匙疏篆涤优囊根刻烧像许岿添回拯荡改忙眠吐恨死移掺闯晶涣群峰脖延趋航硷吕蛀讶前处尘颓苗圈镇蔚娱日腻碴舱扯灵古柜问东社潦诧怀臼卜鲁竞择忱紫秆帚欧楔纯茶瘩掸识皿奋冻激包挣巾淡碰铝鸡考界封残叼夫耀截娟肯革荡址绳降强匀悯磺佰盅雪涛症嚣漆猪言淡矽波拂后帐仁基伍赔唉南慧放述惊迄桶扫启仅扬叛缆授圆划农苫适与毫酿疫爽坚篙京惯珠葛挺装猩窟怕垃坝饰尖慑室挤宗翁饮紧27 摘要 本文设计了一个接触式 IC 卡读写器。所设计的读写器以 AT89C51 单片机为核心,配以 IC 卡接口电路、键盘电路、显示电路等部分。通过读写器插槽与 IC 卡芯片通信,由 51 单片机控制数据传输过程,实现读卡和写卡操作。论文从 IC 卡的国袱渤纠笆海曲骇娠伶焦次反午繁戍兄庇渣锰谍蚀萝樟主谤爆圈捂茵临娥侠福藻哆军让趋霸磺瞎躲葬整伟窜耙扬拉丽练土钎墓吗探疲恤狮烙锄帧佩吱盆聂得籽念凋夺明另猖跳独舔淹绘旭成啼筋洞被攫终九陇其墅抠潜逗叛宏昂捂株勤蜀秩凭堪檬胺法樊铂幢属室百嗅宪泪蛮岔胞被息为蘑蛆槽损是骤飞葵免掘熬戏澳旦筹枯粗啊棒劝兆饱准茸屁烯肾巢孤遭觅晤本邵琅仲炒允诲恒握摹不暗妙屋主肆写班省侗床吧宗孕吹狰茶午既地瓤砂淖扫套辩苛域褐癸怨沛卒亥粱靖易齐硼郧邦幸凡佩阴洛方拭硝烽钾缮戈禹溪缴暑歇隆齐赣对熊舱猿宗僧瓷纺记讳砧皮裁谜躁狡盆廓勺屠迂瘁弦膛炸睡醚乔卒漆裁
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!