学号11780215天津城建大学电子系统综合设计设计说明书IC卡读写系统设计起止日期:2014年12月29日至2015年1月23日学生姓名罗智健班级信科2班成绩指导教师(签字)计算机与信息工程学院2014年1月23日天津城建大学课程设计任务书2014—2015学年第一学期计算机与信息工程系电子信息科学与技术专业信科2班班级课程设计名称:电子系统综合设计设计题目:IC卡读写系统设计完成期限:自2014年12月29日至2015年1月23日共4周设计依据、要求及主要内容(可另加附页):一、课程设计的目的在我们的日常生活中,IC卡无处不在——智能门锁、考勤机、交通卡、银行卡……IC卡应用非常广泛。通过对课程设计任务的完成,使学生掌握IC卡读写的工作原理,并且能够熟悉单片机的开发流程和基本的编程方法,既巩固所学的基础理论知识,又为学生日后从事开发设计奠定基础。二、课程设计的内容及要求选择合适的器件,了解元器件的工作原理,进行IC卡读写系统设计,完成1、单片机最小系统设计。2、单片机与IC卡读写器接口电路设计。3、编写IC卡读写控制程序,并有显示功能。4、书写设计说明书。三、参考资料:1、何立民.MCS-51单片机应用系统设计.[M]北京航天航空大学出版社2、张开如.自动控制原理.[M]北京大学出版社.3、赵新民.智能仪器设计基础[M]哈尔滨工业大学出版社指导教师(签字):系主任(签字):批准日期:2015年12月18日目录第1章绪论...................................................................11.1IC卡的发展和应用使用情况.............................................11.2IC卡应用技术..........................................................11.3课题中IC卡的设计目标..................................................1第2章IC卡芯片的介绍.........................................................32.1SLE4442IC卡...........................................................32.1.1芯片特点.........................................................32.1.2芯片的引脚配置...................................................32.1.3芯片功能.........................................................42.1.4芯片传送协议.....................................................5第3章硬件电路设计...........................................................73.1单片机系统电路.........................................................73.2接触式IC卡的接口电路..................................................83.2串行通信电路..........................................................113.3键盘电路..............................................................113.4显示电路..............................................................12第4章软件系统设计..........................................................144.1主程序................................................................144.2键盘扫描子程序........................................................154.3显示子程序............................................................17总结.........................................................................19参考文献.....................................................................20总程序图.....................................................................21附录.........................................................................221第1章绪论本章介绍了IC卡的发展历史和应用情况,说明了现代IC卡技术的基础知识,最后分析了目前常见的IC卡读写器终端,并提出了本课题中IC卡读写器的设计目标。1.1IC卡的发展和应用使用情况卡片是作为个人身份识别的手段而引进的,而作为交易凭证的卡片则早在19世纪80年代就萌芽于英国了,1950年,美国商人设计了第一张现代的塑料信用卡,1951年美国富兰克林银行作为金融机构率先发行了信用卡,到60年代中期,人们在塑料金融交易卡的背面贴上磁条,发展成为能够自动读取信息进行在线处理的磁卡,磁卡因为结构简单,价格低廉,得到迅速推广。IC卡是近年从欧洲开始出现的,IC卡具有突出的3S特点,即Standard(国际标准化)、Smart(灵巧智能化)、和Security(安全性)。因而发展迅速,在金融、通讯、交通等众多领域中后来居上,即使那些磁卡已经普及应用的范围也将被取而代之。IC卡不仅改变了现有多种卡的使用方法和功能作用,还不断开创出新的应用领域。将IC卡和其他设备组成系统就能提供非常丰富的服务功能,把这些功能与生产或流通领域有机地结合起来,将出现令人意想不到的奇迹,创造出巨大的经济和社会效益。随着信息技术的发展,IC卡作为一种先进的信息存储介质,它的应用己经渗透到各国的经济、社会生活、军事等各个方面,将来更有着广阔的发展空间。1.2IC卡应用技术IC卡比磁卡存储容量大,可靠性和安全性高,在应用上除了覆盖磁卡的全部应用范围以外,还提供了许多磁卡所不具备的应用特性。正是这些特性,使IC卡在脱机业务处理和联网数据一致性等方面表现出前所未有的优势。IC卡虽然有很强的功能,但仅当IC卡加入到应用系统中,构成发行商、应用系统和持卡人之间的数据传输媒介时,才能有效地发挥其优势。一个好的IC卡应用系统,应具备良好的应用特性和性能价格比,还要有好的安全特性。1.3课题中IC卡的设计目标读写器是IC卡应用系统的终端设备,只有通过读写设备才能和IC卡建立联系,读写IC卡中的数据;读写器一般还要求和信息网络中的上位机进行通讯,把IC卡中的数据融入到上层数据库。设计选择读写器是建立IC卡应用系统的关键。本文是就设计IC卡读写器展开的,课题的设计目标是一种通用的接触式IC卡读写终端,要求读写器能够单独工作。预期目标:实现用户信息的存储通过键盘显示电路实现人机交互2实现卡的插入与退出识别实现伪卡的识别3第2章IC卡芯片的介绍2.1SLE4442IC卡IC卡是集成电路卡(IntegratedCircuitCard)的简称,有些国家和地区称之为微芯片卡(Microchipcard)或微电路卡(MicrocircuitCard)。IC卡的大小和磁卡相同,它把集成电路镶在塑料卡片上,芯片一般是不易挥发性存储器(ROM,EPROM.EPROM),保护逻辑电路,甚至于CPU。本节介绍IC卡的一些基本知识,使读者对IC卡有一个大概的了解。由于本设计所采用的IC卡为接触型逻辑加密卡(SLE4442),所以本节的内容重点介绍此卡。SLE4442是由德国西门子公司设计的逻辑加密存储卡。它具有2K位的存储容量和完全独立的可编程加密代码存储器。内部电压提升电路保证了芯片能够以单5V电压供电,较大的存储器容量能够满足应用领域的各种要求。是目前国内应用较多的一种IC卡芯片。2.1.1芯片特点面向字节寻址;采用多存储器结构:主存储器、保护型存储器、加密存储器;线连接协议,触点和串行接口满足ISO7816同步传送协议;芯片采用NMOS工艺技术,每字节的擦除/写入编程时间为2.5ms;复位响应(ATR)符合ISO/IEC7816-3协议;存储器采用至少10000次的擦除/写入周期,数据保持时间至少为10年;额外特性:数据仅能在正确输入24位可编程安全码(安全存储器)之后才能改变。2.1.2芯片的引脚配置芯片的引脚与国际标准兼容,下表3-1是引脚的定义和功能说明:表2-1SLE4442引脚功能引脚卡触点符号功能12345678C1C2C3C4C5C6C7C8VCCRSTCLKNCGNDNCI/ONC操作电压5V复位时钟未用地未用双向数据线(漏极开路)未用42.1.3芯片功能SLE4442IC卡芯片主要包括三个存储器:256×8位EEPROM型主存储器、32×1位PROM型保护存储器和4×8位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)保护存储器是一个32×1位的一次性可编程只读存储器(PROM)。它是按字位方式寻址和写入。保护存储器从0~32的每一位对应着主存储器地址从0到31的字节。因此可以理解为每个字节单元的控制熔丝。从出厂到被初始化之前,保护存储器的状态为全“1”。从控制方面来说,保