毕业论文--非接触式ic卡读卡器_第1页
毕业论文--非接触式ic卡读卡器_第2页
毕业论文--非接触式ic卡读卡器_第3页
毕业论文--非接触式ic卡读卡器_第4页
毕业论文--非接触式ic卡读卡器_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录1引言111课题背景112设计的目的和意义22IC卡简介321“卡”的发展历程4211光电(检测)卡4212磁卡5213IC卡522IC卡的分类6221根据卡内集成电路划分6222根据应用领域划分6223根据数据交换界面划分7224根据数据传输方式划分923非接触式IC卡12231非接触式IC卡具有的优良特性15232非接触式IC卡的分类16233非接触式IC卡的工作方式1624IC卡的国际标准18241接触式IC卡的国际标准18242非接触式IC卡的国际标准193系统的总休设计2031射频卡部分2032系统的主控模块2133系统的读写模块2334系统的通信模块234系统电路设计2441电源电路2542复位电路2643系统时钟电路44蜂鸣器电路45射频卡读写电路46串行通信电路5系统软件设计51通信协议设计511数据帧格式512CRC校验算法52数据表达方式53系统工作的流程531复位532状态初始化533流程图6测试报告7结论致谢参考文献THEDESIGNOFCONTACTLESSICCARDREADER附录1系统整体电路图附录2程序源代码1引言11课题背景当今世界微电子技术和IT技术的发展日新月异,信息技术已广泛地渗透到社会生活的各个领域,在经济和社会发展中发挥着越来越重要的作用。作为信息技术领域发展的分支智能卡即IC(INTEGRATEDCIRCUIT)卡的出现,就以其超小的体积、先进的集成电路芯片技术以及特殊的保密措施和无法被破译及仿造的特点,颇受人们的青睐,这种将微电子技术和计算机技术结合在一起的精灵,提高了人们生活和工作的现代程度。早期的IC卡都是有触点的,目前IC卡正向非接触,智能化方向发展,已出现了无触点的IC卡即非接触IC卡。一个非接触IC卡内部结构示意图如图11所示。图11非接触式IC卡内部结构图非接触式智能IC卡是一种射频卡,是近几年发展起来的一项新技术。它没有接触式IC卡的电气触点,而是通过无线电波进行数据传输,相对于传统的接触式IC卡,非接触式IC卡与读写器之间无机械接触,避免了由于接触读写而产生的各种故障。此外,非接触式卡表面无裸露的芯片,无须担心芯片脱落、静电击穿、弯曲损坏等问题,既便于卡片的印刷,又提高了卡片的使用可靠性因而正以惊人的速度得到推广。它的迅猛发展大有替代各种磁卡和接触式IC卡这势。毫无疑问,集众家之优的非接触式IC卡将在身份识别、金融、证券、电子货币、公共交通、铁路、电信、医疗、商业、工商管理、技术监督、企业管理、智能楼宇、小区物业、社会保障、教育管理、仓储运输等诸多领域独住房领风骚。12设计的目的和意义现在我国已经开始在很多城市的公共交通、考勤系统、第二代身份证、校园一卡通等方面都大量使用非接触式IC卡,因此各种的IC卡读写器也随之涌现,不同的读卡器之间的性能和价格都不同。在现阶段国内使用的读卡器的核心射频电路读写芯片基本上都是使用PHILIPS、TI、ATMEL等国外公司的专用集成电路芯片,特别是用PHILIPS公司所生产的RC500或RC531芯片制作的读卡器占有较大市场份额。这些射频芯片外围电路简单,设计方便,但由于该类芯片价格较贵,因此限制了一些对成本要求比较苛刻的场合使用而未得到较好的推广。本设计是以ATMEL公司的AT89C52单片机和该公司TEMIC系列射频卡的读写基站芯片U2270B为核心而设计的一款实用型IC卡读写器。本非接触式IC卡读写器系统的硬件由单片机、非接触式IC卡读写部件、接收和发送线圈、电源、复位和蜂鸣器电路及与上位机(PC机)的通信接口等构成。加上通过周密的程序控制完成对非接触式IC卡片的读写。并可通过串行通信接口与PC机的异步通信口进行通信。本设计以实用为出发点,以迅速、简捷、方便、可靠、稳定对非接触式IC卡的数据进行读写操作为目的,并作为对非接触式IC卡应用的桥梁,使非接触式IC卡的应用领域进一步扩展。2IC卡简介21“卡”的发展历程随着科学技术的不断进步,“卡”的类型及相关的设备也在不断的发展、变化、更新,应用范围也随之更加广泛。从信息的载体上来看,主要有光电(检测)卡、磁卡、IC卡等。211光电(检测)卡常用光电(检测)卡有两种,一种是打孔光电卡,即在专用的PVC塑料片上加工出特定的密码通孔,用专门的光电读卡器来读出这些密码孔所代表的信息。由于光电信息外露,易于伪造,使用中难于再次写入信息,且易于折断,所以应用范围很窄,逐渐为其它产品所替代;另一种是条形码卡,把条码制在专门的卡片上,即是条形码卡,目前主要用作ID卡,即作为身份识别用,它成本低,技术成熟,制作简单,但信息外露、保密性极差,故而被磁卡和IC卡所代替。212磁卡磁卡是利用贴在卡上的磁条来记录持卡人的帐户、姓名等信息的。磁条表面涂有磁性材料,当读卡设备的磁头掠过磁条时,就可以对磁卡进行读写操作。由于出现得较早,且容易生产和推广,目前世界范围内磁卡的发行量已超过数十亿张。磁卡的阅读器很便宜,但读写器较贵,由于一般的应用中,磁卡只记录个人帐号等只读信息,使用时并不往卡中写信息,所以磁卡在金融领域用得比较广泛。但磁卡仍有其不足之处首先,磁卡保密性差,虽然比光电卡的保密性好,但磁条上的信息还是比较容易读出,非法修改磁条上的内容也较容易,所以大多情况下磁卡都是作为静态数据输入使用。虽然第3磁道可读写,并且有金额字段,也只是用于小金额的应用领域,例如电话卡。另外,磁卡应用方式比较单一、受限制,磁卡的方便应用需要有可靠的计算机系统和中央数据库的支持,在金融行业,作为金融交易卡的磁卡,一般配合强大、可靠的计算机网络系统使用,金额、交易记录等信息,均保存在金融机构计算机的数据库中,用户所持的卡片只是提供用户的主帐号等索引信息,便于在数据库中迅速找到用户数据。但由于其应用方式是集中式的,这给用户在异地使用磁卡带来了很大的不便。213IC卡IC卡是集成电路卡INTEGRATEDCIRCUITCARD的简称,也叫做灵巧卡SMARTCARD或智能卡INTELLIGENTCARD的。它诞生于1970年,法国人罗兰德莫瑞诺(ROLANDMORENO)第一次将可进行编程设置的IC卡芯片放于卡片中,使卡片具有多种功能而形成了世界第一张IC卡,并将这项技术应用到金融、交通、医疗、身份证明等多个行业,它将微电子技术和计算机技术结合在一起,提高了人们生活和工作的现代化程度。此后的时间里,随着大规模集成电路技术的成熟,IC卡技术也日趋成熟,各种各样的IC卡也不断涌现。22IC卡的分类从IC卡诞生至今的三十多年里,随着超大规模集成电路技术、计算机技术以及信息安全技术等的发展,IC卡种类更加丰富,技术也更趋成熟,已在国内外得到了广泛的应用。以下将从不同的角度对IC卡进行详细分类和简单分析。221根据卡中所镶嵌的集成电路的不同可划分非加密存储器卡(MEMORYCARD)卡内的集成电路芯片主要是EEPROM,具有数据存储功能,为了能把它封装在076MM的塑料卡基中,特制在03MM的薄型结构。存储卡属于被动型卡,通常采用同步通信方式。这类卡信息存储方便,使用简单,价格便宜,很多场合可替代磁卡,但由于其本身不具有数据处理功能和硬件加密功能,因此,只能用于保密性要求不高的应用场合。例如医疗上用的急救卡、餐饮业用的客户菜单卡。常见的存储卡有ATMEL公司的AT24C16、AT24C64等。逻辑加密存储器卡(SECURITYCARD)在非加密存储器卡的基础上增加了加密逻辑电路,加密逻辑电路通过校验密码方式来保护卡内的数据对于外部访问是否开放,采用同步方式进行通信,且该类卡片储量相对较小,价格相对便宜,但只是低层次的安全保护,无法防范恶意性的攻击。适用于有一定保密要求的场合,如食堂就餐卡、电话卡、公共事业收费卡。常见的逻辑加密卡有SIEMENS公司的SLE4442、SLE4428,ATMEL公司的AT88SC1608等。CPU卡也称智能卡,卡内的集成电路中带有微处理器CPU、存储单元(包括随机存储器RAM、程序存储器ROM(FLASH)、用户数据存储器EEPROM)以及芯片操作系统COS。装有COS的CPU卡相当于一台微型计算机,不仅具有数据存储功能,同时具有命令处理和数据安全保护等功能。CPU卡的容量有大有小,价格比逻辑加密卡要高。但CPU卡的良好处理能国和上佳的保密性能,使其成为IC卡发展的主要方向。CPU卡适用于何密性要求特别高的场合,如金融卡、军事密令传递卡等。国际上比较著名的CPU卡提供商有GEMPLUS、G非接触IC卡内部电路即为应答器。读卡器与非接触式IC卡的信息交换是通过射频方式完成的,对于卡内而言,由射频接口电路完成。一种通用非接触式IC卡读写系统框图如图21所示。图21典型非接触IC卡系统框图图21所示的非接触IC卡系统由上位机、读写器、无源非接触IC卡组成,中心工作频率为而1356MHZ,信号传输频宽约为1MHZ以半双工方式在读写器与IC卡之间双向传递数据。该非接触IC卡系统的工作过程为上位机向读写器发送命令,读写器接到该命令后分析执行,将上位机的命令信号编码后加载在频率为1356MHZ的载波信号上经天线向外发送,如无源非接触IC卡进入读写器工作区域则可接收到此脉冲信号,此时卡内芯片中的射频接口模块由此信号获得电源电压后产生复位信号建立时钟信号同时卡内芯片中的有关电路对此信号进行调制、解码、解密,然后由内部管理程序对命令请求、密码、权限等进行判断,如果命令请求、密码、权限正确,由IC卡内部控制逻辑电路执行相应功能,并向读写器返回处理结果信息,若经判断其对应的密码和权限不符,则返回出错信息。读写器将非接触IC卡的返回信息传给上位机。如接收不到IC卡返回信息,则向上位机返回无卡信息。24IC卡的国际标准IC卡的国际标准分为接触式IC卡的国际标准和非接触式IC卡的国际标准两种,由于接触式IC卡应用较早,其国际标准比较完善,非接触式IC卡近年来才开始推广使用,其国际标准有些已经通过,有些正在制定与计论之中。241接触式IC卡的国际标准ISO/IEC7816是ISO/IEC(国际标准化组织/国际电子技术委员会)推出的接触式IC卡遵循的主要国际标准,包括10个部分,对IC卡的物理特怕、卡上触点尺寸与位置、电信号与传输协议、行业交换命令、数据无以及IC卡注册管理办法等作出了详细的规定。242非接触式IC卡的国际标准非接触式IC卡表面无触点,因此接口投备与非接触式卡的通信方式与接触式卡不同,提供电源的方式也不同,为此ISO/IEC根据接口设备与IC卡作用距离的不同而定义了三个国际标准,如表21所示表21非接触式IC卡的国际标准其中ISO/IEC14443又分为TYPEA和TYPEB两个标准。其中TYPEA采用ASKAMPLITUDESHIFTKEYING100调幅方式,在RF场子中产生一个“空隙”(PAUSE)来传送二进制数据。而TYPEB则采用ASK10调幅方式,3系统总体设计本系统采用E5550/U2270B的非接触卡读写系统示意图非接触IC卡是一种接口电路。它通过卡上配置的发射机应答器振荡线圈与基站振荡线圈的耦合取得能量,通过必要的通信软件配合,保证卡与基站间实现双向数据交换其系统示意图如图31所示图31非接触IC卡读写系统示意图31射频卡部分本设计的射频卡采ATMEL公司的TEMIC系列的E5550非接触式IC卡和H4001非接触式ID卡。TEMIC系列射频卡内有264BIT的EEPROM,被分成8块,每块为33BIT,其中BIT0是LOCK位,此位一旦写“1”后,该块数据就不能再作任何修改。8个BLOCK中,BLOCK0是控制块,用业控制卡的各种操作特性,如同步信号、编码方式、波特率、数据流长度、加密和口令唤醒等功能的启用关闭等;BLOCK1BLOCK6是用户块,用来存放用户数据和信息;BLOCK7是密码块,若加密功能不被启用,也可以作为用户块使用。TEMIC系列射频卡特点为(1)低功耗、低电压的CMOS结构;(2)无线电源供给,无线数据传输;(3)射频频率为100150KHZ;(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个行奇校验位“P0P9”,4个列奇校验位“PC0PC3”,40位数据位“D00D93”和一个停止位“0”。9个引导位是出厂就掩膜到晶片内的,其值为111111111。当它输出数据流时,首先是输出9个引导位,然后是10组由4个数据位和1个行奇校验位组成的数据串,之后是1组由4个列奇校验位组成的数据串,最后是停止位“0”。“D00D13”是一个8位的晶片版本号或ID识别码。“D20D93”是4组32位的晶片信息,即卡号。当射频卡得电初始化后,便依次将这64位数据反复输出,直到卡片离开基站读写器失电为止。32系统的主控模块本系统选用ATMEL公司的AT89C52单片机为主控模块,AT89C52是一种内含8KBYTEROM且有256单元RAM,并与MCS51系列的指令系统和管脚完全兼容的低电压、高性能COMS8位微控制器,同时片内具有WATCHDOG功能,当程序由于某种干扰而死机时,系统可以可靠复位,保证系统的正常运行。其引脚图如图32所示AT89C52的主要特性与MCS51产品指令和引脚完全兼容高性能、低功耗的CMOS8位单片机先进的RISC结构131条指令32个8位通用工作寄存器全静态工作工作于16MHZ时性能高达16MIPS只需两个时钟周期的硬件乘法器非易失性程序和数据存储器4K字节的系统内可编程FLASH擦写寿命1,000次图32AT89C52引脚图具有独立锁定位的可选BOOT代码区通过片上BOOT程序实现系统内编程真正的同时读写操作1024字节的EEPROM擦写寿命100,000次2K字节片内SRAM可以对锁定位进行编程以实现用户程序的加密JTAG接口与IEEE11491标准兼容符合JTAG标准的边界扫描功能支持扩展的片内调试功能通过JTAG接口实现对FLASH、EEPROM、熔丝位和锁定位的编程外设特点3个16位定时/计数器具有独立振荡器的实时计数器RTC8个单端通道2个具有可编程增益(1X,10X,或200X)的差分通道面向字节的两线接口可编程的串行USART可工作于主机/从机模式的SPI串行接口具有独立片内振荡器的可编程看门狗定时器片内模拟比较器特殊的处理器特点上电复位以及可编程的掉电检测片内经过标定的RC振荡器片内/片外中断源2种睡眠模式空闲模式、掉电模式、I/O和封装32个I/O口40引脚PDIP封装,44引脚TQFP封装,与44引脚PLCC封装AT89C52内核具有丰富的指令集和32个通用工作寄存器。所有的寄存器都直接与算逻单元ALU相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的CISC微控制器最高至10倍的数据吞吐率。33系统的读写模块本系统的读写模块采用ATMEL公司TEMIC系列射频卡的读写基站芯片U2270B为核心,其引脚图如图33所示U2270B是德国TEMIC公司生产的射频卡基站读写专用芯片,U2270B基站读写器的基本性能如下1载波频率FOSC范围为100150KHZ。2FOSC为125KHZ时,典型的数据传送率为5KB/S。3适用的调制方式为曼彻斯特码(简称曼码)和双相位码。4可由5V的稳压电源或汽车蓄电池供电。5调谐能力。6与微控制器有兼容的接口。7处于备用工作方式时,其功耗甚低。8有一向微控制器供电的输出端。U2270B不同的引脚有不同的功能,其引脚说明如表31所列表31U2270B引脚说明引脚符号引脚说明引脚符号引脚说明1GND地9COIL1天线驱动端12OUTPUT数据输出端10VEXT外部电源输出端3OE数据输出使能11DVS天线驱动电源输入4INPUT数据输入12VBATT电池电源输入5MS共模/差分模式选择13STANDBY空闲模式6CFE射频载波使能14VS工作电源输入(5V7DGND数字地15RF射频频率调整端图33U2270B引脚图8COIL2天线驱动端216HIPASS直流去耦34系统通信模块在本非接触式IC卡读写系统中,一般都以标准计算机平台PC个人计算机、MACINTOSH计算机或工作站为核心,采用串行通信接口与被测或被控设备连接,通过软件来实现对这些设备的访问。串行通信接口结构简单,能系统正常而又可靠的工作。在读卡机应用系统中利用串行接口实现主机与读卡器连接,并按通信协议编制好通信软件实现主机对读卡器的控制。由主机和读写器组成一个具体应用系统时,其采用的通信方式示意图如图34所示图34系统通信方式示意图从图34中我们可以看到非接触IC卡和读写器之间按通讯协议用无线方式进行通讯联络,而主机控制器对读写器下命令以及接收读写器返回执行结果均采用有线方式。在计算机控制系统中,一般都以标准计算机平台为核心,采用合适的接口连接方式实现计算机与被测或被控设备连接,通过软件来实现对这些设备的访问。以下就主机控制器与读写器之间实现正确通讯的连接方式和实现可靠数据传送中的若干问题进行讨论。然而要使系统正常而又可靠的工作,选用合适的串行接口,编制好通信协议软件,是至关重要的一环,尽管串行接口有多种型号,但它们的基本任务都相同。1进行串、并转换。串行传送数据是一位一位依次顺序传送的,而计算机处理数据是并行的。所以,当数据由计算机传送至测控终端时,首先把并行数据转换成串行数据再传送而在计算机接收由测控终端送来的数据时,要先把串行数据转换成并行数据才能送入计算机处理。2实现数据格式化。从CPU来的并行数据转换成串行数据后,接口电路要能实现不同通信方式下的数据格式化。异步通信方式下,发送时自动生成和接收时自动去掉启停位。面向字符的同步通信方式下,接口所做的数据格式化主要是在传送的数据块前面加同步字符。3可靠性检验。在发送时,接口电路自动生成奇偶校验位在接收时接口电路检查字符的奇偶校验位或其它校验码,以确定是否发生传送错误。4实施接口与DEC数据通信设备DATACOMMUNICATIONEQUIPMENT之间的联络控制。在计算机及测控应用设备中采的串行接口有RS232,RS423,RS422,RS485。表32列出了这四种基本接口的硬件标准和电气性能。表32四种基本串行接口的硬件标准和电气性能其中RS232和RS485是目前用得比较多的串行接口,两种串行接口各有各的特点,以下进行比较RS232标准RS232标准是IBMPC计算机及兼容机常用的串行接口,它是目前用得最多的一种串行接口,在计算机上它可以分别连接多种外部设备,如鼠标、调制解调器、以及各类测量仪器。随着芯片和线路技术的改进,实际应用性能往往大大超出标准规定的距离和速度。RS232接口的特点是成本低,实现容易,通信协议简单。但它存在有局限性,一是仅能用于计算机与被测控设备之间点对点的连接二是由于RS232使用以地作为基准的非平衡方式传输信号,抗干扰能力较差,所以不宜用于环境噪声电平干扰较强的场合。RS485标准RS一485串行通讯总线标准及接口技术用于点对点、点对多点通讯、广泛用于工业集散分布系统、工业控制自动化、道路交通控制自动化、闭路监控、安防系统、智能卡、考勤门禁、售饭和停车场等系统。RS485协议的技术指标工作方式有异步工作、点对点或多点、2线半双工,传输速率最大为10MBITS;最大距离为1200M;高阻抗抗噪声的差分有补偿线传送;最高为32个节点;单组双绞线电缆上的双向主从通信;并行连接的节点、多工通信。由于本系统对数据的传输速率和距离要求不高,对于要求成本低、实现容易,故采用RS232标准的串口通信。因此采用MAX232A芯片来作为ATMAGE32的串行通信接口的TTL电平和计算机串口的RS232电平之间的转换。MAX232芯片简介MAX232芯片是MAXIM公司生产的、包含两路接收器和驱动器的IC芯片,适应于各种EIA232C和V28/V24的通信接口。其引脚电路如图35所示MAX232的主要特点1、单5V电源工作2、LINBICMOSTM工艺技术3、两个驱动器及两个接收器4、30V输入电平5、低电源电流典型值是8MA6、符合甚至优于ANSI标准EIA/TIA232E及ITU推荐标准V287、ESD保护大于MILSTD883标准的2000VMAX232芯片内部有一个电源电压变换器,可以把输入的5V电源电压变换为RS232C输出电平所需的10V电压,所以,采用此芯片接口的串行通信系统只需单一的5V电源就可以了。对于没有12V电源的场合,其适应性更强。加之其价格适中,硬件接口简单,所以被广泛采用。4系统电路设计本系统的总体电路由电源电路、复位电路、系统时钟电路、蜂鸣器电路、射频卡写电路和PC通讯电路组成,其总体硬件框图如图41所示图35MAX232引脚图IC卡读写模块U2270B驱动芯片AT89C52单片机蜂鸣器电路系统复位电路与PC串行通信的电路图41非接触式IC卡读写器硬件框图天线41电源电路本读卡器内所有芯片的工作电压均为5V,供给AT89C52的I/O口和其它电路,由50V直流电源供电。5V电压从POWERIN端输入,经过电容C1对开关进行削抖,电容C2对电源进行滤波,以保证电源的纯正,经过稳压稳压二极管对电源进行稳压,以防出现尖峰压等突然性高电压破坏电路的器件。电源电路如图42所示。GNDVCCC1VCCR1D1D1N4148POWERINSW1SWDPSTC2图42电源电路42复位电路89系列的单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如RST引脚上有一个高电平并维持2个机器周期,则CPU就可以响应并将系统复位。AT89C52已经内置了上电复位设计。并且在熔丝位里,可以控制复位时的额外时间,故AT89C52外部的复位线路在上电时,可以设计得很简单直接拉一只10K的电阻到VCC即可R2。为了可靠,再加上一只01UF的电容C3以消除干扰、杂波。其电路图如图43所示D21N4148的作用有两个作用一是将复位输入的最高电压钳在VCC05V左右,另一作用是系统断电时,将R210K电阻短路,让C3快速放电,让下一次来电时,能产生有效的复位。当AT89C52在工作时,按下S2开关时,复位脚变成低电平,触发AT89C52芯片复位。43系统时钟电路AT89C52已经内置RC振荡线路,可以产生1M、2M、4M、8M的振荡频率。不过,内置的毕竟是RC振荡,在一些要求较高的场合,比如要与RS232通信需要比较精确的波特率时,建议使用外部的晶振线路。其接线图如图44所示早期的51系列,晶振两端均需要接22PF左右的电容。89系列实际使用时,这两只小电容不接也能正常工作。不过为了线路的规范化,仍还是接上。44蜂鸣器电路当读取卡片数据时,系统会发出短促“B”声,以提示用户本次读取成功。在发生错误的时候,系统会发出较长的“B”声,以引起用户注意。“B”声长短是由系统控制,通过蜂鸣器发出的,电路如图所示。通过控制PORT脚电平的高低,使三极管Q1处于截止或导通的状态,从而控制蜂鸣器的响灭。由于蜂鸣器是一个感性负载,故在其两端并上电容以削减其工作时产生的尖峰电压。其接线图如图45所示45射频卡读写电路图43复位电路图44系统时钟电路图45蜂鸣器电路ATMEL公司的TEMIC系列的E5550非接触式IC卡和H4001非接触式ID卡的天线与其读卡器的天线之间构成空间耦合“变压器”,读卡器天线作为“变压器”初级线圈向空间发射125KHZ的交变电磁场,进入该电磁场的射频卡卡通过其天线“变压器”的次级线圈获取能量,为其内部各功能部件提供工作电压。由于射频卡为只读型RFID,读卡器无须向射频卡发送任何数据或指令,一旦射频卡进入读卡器有效的工作区域内,其内部功能部件就开始工作,时序发生器部件控制存储器阵列和数据编码单元将其内部的64位信息调制后按顺序发送给读卡器,射频卡采用RSK相移键控调制方式。其信息如表41所列表41射频卡曼彻斯特编码表111111111D00D01D02D03P0D10D11D12D13P18位版本信息D20D21D22D23P2D30D31D32D33P3D40D41D42D43P4D50D51D52D53P5D60D61D62D63P6D70D71D72D73P7D80D81D82D83P8D90D91D92D93P932位识别码PC0PC1PC2PC30U2270B是射频卡读取部分的核心是U2270B适用的调制方式为曼彻斯特码和双相位码,可由5V的稳压电源供电,有与微控制器兼容的接口。U2270B与电源的接口包括这样几组信号VEXT数字电路正电源端(5V)DGND数字电路接地端(0V)VBATT电池电源输入端(通电工作时为5V;不通电工作时为3V)MS共模/差分模式选择端因为要用到共模模式,所以接到5V端STANDBY空闲模式的选择端(接0V)DVSRF电路正电源端(5V)GNDRF电路接地端(0V)对于两个天线接口COIL1和COIL2,经两组二级管(IN4148)再接上阻值相近的电阻,组成公共端,4个二极管的方向不能有误,否则会造成天线不能正常发出射频信号。而与单片机相连接的OUTPUT口和CFE口,要通过上拉电阻接到VCC,这样才能使得通信电平符合AT89C52输入/输出端口的接口要求。HIPASS要经过电容再接地。因此,射频卡的读写电路如图46所示图46射频读写电路基站天线采用铜制漆包线绕制,天线回路的直径D远大于漆包线的直径D一般在1000倍以上,此时可以采用下面公式来进行天线参数的设计LN2U0RLN2R/D其中L为天线回路的电感量。N为天线线圈的匝数。U0为磁场常数,其值为1257106VS/AM。R为天线回路的半径。D是漆包线的直径。L13MH,R5CM,D021MM,则所需绕制的天线匝数为116匝。将U2270B的天线驱动端COIL1、COIL2与电阻、天线和电容构成的串联谐振回路相连,可以在天线已经确定的前提下,通过下式来选择适当的电容C,以使得谐振频率与基站的工作频率相同。F01/2LC1/2其中L为天线线圈的电感量。C是与天线串联的电容。F0为谐振频率。当L取为135MH,F0为125KHZ时,电容C应为12NF。46串行通信电路当系统从非接触式IC卡中读取了数据后,数据通过串口传输到上位机,而接口则使用RS232标准。而RS232标准的传输线连接方式有以下两种,第一种为RS232最简单的传输线连接方式,只需要连接2、3、5三根线即可,如图47所示;第二种为RS232标准信号连接方式,要将9根线全部连上,其接线如图48所示图47RS232最简单的传输线连接方式图48RS232标准信号连接方式RS232C规定的逻辑电平与一般微处理器、单片机的逻辑电平是不一致的。因此,在实际应用时,必须把微处理器的信号电平(TTL电平)转换为RS232C电平,或者对两者进行逆转换。这两种转换是由MAX232芯片实现的。VCC必须对地加去耦电容C16其值为01UF。电容C12,C13,C14,C15取同样数值的钽电解电容10UF/16V,用以提高抗干扰能力,在连接时必须尽量靠近器件。MAX232芯片的T1OUT和R1IN引脚分别接到串口通信线的3、2端,而T1IN和R1OUT引脚则分别与AT89C52的TXD与RXD引脚相连接。其电路连接图如图49所示图49MAX232接口电路5系统软件设计在进行数据通信的软件设计时必须解决好两个方面的问题,一是可靠性,二是速度,而这两方面的问题可靠性是第一位的,速度只能是在可靠的基础上的,速度可靠快速转输的实现需要上、下位机软件以及通信协议等各个环节的可靠和其间的相互配合51通信协议的设计在设计PC,MCU通信协议时需说明一点,在本系统的实际通信中PC机永远是主控者,单片机只是被动接收者,因此通信L议较双方互为控者时简单。本通信协议的设计思想是基于帧传输方式,即在向RS232串口发送命令信号应答信号及数据信号时是一帧一帧地发送的,为了使数据快速可靠地传输将每一帧数据唯一对应一命令帧,此时转输数据即执行命令具体如下1在PC读数据时,遵循“读命令一等数据一报告”,即PC卜达一命令,等待接收数据,再据所接收数据的正误向应用程序报告此命令的执行情况。2在PC写数据时,遵循“写命令一等回应一报告”,即PC下达一写命令此时所要写的数据含于此命令中,等待单片机发来的“已正确接收”的回应信号,并向应用程序报告此命令执行完毕。3如果在转输过程中其间PC或MCU所接收任何一帧信号出现错误时,均会向对方发送重发此帧信号的请求,如果连续三次转输失败则退出通信并向应用程序报告。511数据帧格式通信协议包括传输方式和数据帧格式两个方面。传输方式在前面已经提到,这里采用异步传输方式9600BPS,8位数据位,1位停止位,无校验。这是由硬件实现的。而数据帧格式是指对数据的打包和解包,是由软件实现的。我们考虑如图51所示的数据帧格式图51通信传输协议的数据帧格式“帧头”HEAD和“帧尾”TAIL长度各为1BYTE,即一个字符。可用在数据信息中不会出现的特殊字符来表示,如“而接收方则对收到的信息串用同样的方法生成一个CRC值,若与收到的CRC值一致,则可认为信息传送正确。CRC法的指导思想是增加冗余位,但它的冗余位是通过将传送的数据流多项式除以CRC多项式得到的,在实际应用中CRC多项式预先给定,数据1和0就是被除多项式的系数,除法用模2减无借位实现,而且余数作为冗余位。使用CRC不能保证100检测到错误,但它不需花费试图获得完善检测的巨大开销,事实上,用CRC校验技术可极大地增加发现错误的机会。所以,CRC校验是一种倍受青睐的检错算法。1CRC码的多项式表示及其基本运算A多项式表示循环码是一种典型的二元分组码。为便于了解码的结构和编译码算法的研究,通常用多项式来表示循环码。循环码是一个长度为N的码字,可以用一个次数为N1的多项式表示,多项式的系数取自码的字母表中的符号。而码字可用式51表示CXC0C1XC2X2CN1XN151其中CO,C1,CN1,分别为0或1若以K表示信息码元的位数,以RNK表示校验码位数,则有CXP1P2XPRXR1I1XRIKXN152其中1是信息码元P是校验码元。码字多项式CX可由53式得到CXXRIXMODGXXRIX53其中IX是表示K位信息码元的多项式GX是最高次数为R的生成多项式。B基本运算生成码字时所用的基本运算是模2运算。模2运算的加减法都采用异或运算,没有进位或借位。加法000,011,101,110减法000,011,101,1102)CRC码的生成算法查表算法是CRC码生成算法的比较常用的一仲算法,查表算法的思路是先离线构造一个单字节信息的余式编码表,根据此编码表进行查表及异或运算即可求得多字节信息的余式。因单字节信息共8个二进制码元,总共256种不同组合。事实上,人们己经找到了许多周期足够大的标准生成多项式,如CRC9X9X6X5X4X31,CRC12X12X11X4X2X1CRC16X16X15X21,CRCCCITTX16X12X51CRC32X32X26X24X22X16X12X11X10X8X7X5X4X2XI以应用最广的CCITT建议的生成多项式GXX16X12X51为例,每种组合经生成多项式GX除,就产生两个字节的校验值,所以单字节余式编码表共占512个字节8位信息码元的CRC码可由特定生成多项式生成。设生成多项式为GXX16X12X51,其8位信息码元的CRC码表即表51。表中数据采用十六进制表示,OX是前缀。我们以10011101为例说明码表的用法。将10011101倒序得10111001,换算成十六进制为B9,以B9为序号查表得OXB2CL将OXB2CL转换成二进制后,再倒序得CRC码为1000101101001101。表51生成多项式GXX16X12X51的CRC码表52数据表达方式TEMIC系列射频卡和U2270B匹配使用时,根据两者的基本特性,其调制方式只可能在曼码和双相位码中择一。不失一般性,选择曼码调制。采用曼码调制的数据表达方式由图52可知,位数据的传送周期(1P)规定了每传送1位数据的时间是固定的,它由RF/N决定。其物理实质是微控制器通过基站与应答器中的存储器(EEPROM)进行数据的读写操作。若载波频率FOSC125KHZ,位数据传送率选RF/32,则每传送一位的时间(周期)为振荡周期的32分频,故位传送周期为1P1/125KHZ32256US图52采用曼码调制的数据表达方式根据本设计的器件,采用曼码调制的数据,位数据“1“对应着电平下跳,位数据“0“对应着电平上跳。在一串传送的数据序列中,两个相邻的位数据传送跳变时间间隔应为1P。若相邻的位数据极性相同,则在该两次位数据传送的电平跳变之间,有一次非数据传送的、预备性的(电平)“空跳“。电平上跳、电平下跳和两个相邻的同极性位数据之间的预备性空跳是确定位数据传送特征的判据。本判据被定义为判据一(位数据检测指标)。非接触IC卡在读操作时,另一须关注的问题是传送的位数据序列起始标志和结束标志。厂商并未提供有关的资料,通过摸索,已基本掌握了其特征,为便于说明,请参见图53。图53曼码调制的数据串起始/结束标志的时序图在曼码调制的数据串起始/结束标志的时序特征图53中,STEP_CNT为读操作步序,其确切含义见表2。表52参数STEP_CNT的含义含义置STEP_CNT尚未进入读操作0测到上跳后,经15P后又测到下跳1置STEP_CNT1后,经05P测到上跳2根据图的条件判据,已开始接收数据3收到第二个15P,前一个上跳存入的位指针BIT_PTR0,则为结束数据的接收4假定非接触IC卡的存储器内存放的位数据序列为一非空集,则在若干位数据的跳变后,检测到一电平上跳,经过15P发生电平下跳,再经过05P又发生电平的上跳,则该上跳即为起始标志。起始标志即为结束标志。这意味着非接触IC卡的存储器内存放的数据包括起始标志(即结束标志)和位数据序列。读操作时,是首尾相接、循环执行的。识别数据起始标志和数据结束标志,是通过参数STEPCNT进行的顺序化判别,故STEPCNT为读操作的判据二(首尾检测指标)。非接触IC卡在读操作时,第三个须要关注的问题是,如何确定15P、1P和05P三个特征判据E5550和U2270B的射频振荡频率范围在100150KHZ,当位传送率选择RF/32时,即FOSC经过32分频后,上述的三个参数在不同的FOSC时,处于什么样的范围内呢请见表53。表5315P、1P和05P三个特征判据所对应的以2US为单位的计数值FOSC/KHZ100110125140150TOSC1098766732分频后的位传送周期/US320288256224213时间间隔参数以US/2US为单位的计数值05P160/80144/72128/64112/56106/5310P320/160288/144256/128224/112213/10715P480/240432/216384/192336/168319/160由上可知,只要15P、1P和05P的间期是不重叠的。根据采用100150KHZ和110140KHZ两组数据的对比可见,使用后者更合适。另一个办法是通过试验,找到合适的间期指数,即可依此作为电平跃变的判别阈。这样,在确保识别能力的前提下,又从工艺上降低了对于振荡回路的频率精度要求。根据上述振荡频率的变化范围110140KHZ,将编码变化的不同间隔转化成相应的间期指数,具体如表54所列表54DELTA随频率变化的间期指数DELTADELTA的变化范围(2US为单位的计数值)间期指数PRD_CNT05P5615PR216或R563由表可知15P、1P和05P是识别数据起始标志、位数据序列和数据结束标志的间期特征值。53系统软件工作的流程531复位AT89C52单片机与其他微处理器一样,在启动时都需要复位,使CPU及系统各部件处于确定的初始状态,并从初态开始工作。复位的主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除PC之外,复位操作还对其他一些寄存器有影响,它们的复位状态如表55所列。表55各特殊功能寄存器的复位值即在SFR中,除了端口锁存器、堆栈指针SP和串行口的SBUF外,其余的寄存器全部清0,端口锁存器的复位值为0FFH,堆栈指针值为07H,SBUF内为不定值。内部RAM的状态不受复位的影响,在系统上电时,RAM的内容是不定的。除了进入系统的正常初始化之外,当由于程序运行出错或操作错识使系统处于死锁状态时,为摆脱困境,也须控复位键重新启动。532状态初始化对于系统复位之后,要进行计时器中的特殊功能寄存器和串口通行的特殊功能寄存器进行初始化。初始化的工作就是根据串行通信的波特率还有所用的通信方式对相关的特殊功能寄存器进行设置初始值。由于本非接触式IC卡读卡器与PC机进行的串口通信采用方式1的异步通信,且波特率为9600B/S。因此要对以下的几个特殊功能寄存器进行付值。SP0060HSCON0050HTMOD0000HTH100FCHTL100FCHPCON0000H通过修改这些特殊功能寄存器的值就可以对所要求的通信方式进行选择了。533流程图对于要编写程序来说,画流程图程序结构设计时的一重要方式,本系统软件部分的整体流程图如图54所示开始、复位状态初始化开中断有卡读卡读取完毕传送到PC传送完毕NONONOYESYESYES图54系统软件整体流程图图54只是表达程序的总体流程,但是其中的很多子程序和分支都没有表达出来,其中读卡子程序的流程图如图55所示检测数据起始标识找到数据起始位读取卡内数据存取数据读取正确RETNONOYESYES图55读卡子程序的流程图对于PC机与单片机进行串行通信,要想保证通信成功,通信双方必须有一系列的约定,即发送方在发送之前先发一联络信号,接收方接到联络信号后,回送一应答信号,发送方收到应答信号后再发送数据及校验,接收方在接收完后进行校验,如果没问题,就发回一个正确接收信号,如果数据有问题,则发回一个错误信号,要求重新发送数据。回此串口通信子程序流程图如图56所示发送联络信号收到应答发送字节按字符发送并计算累加和发送校验和收到错误信号RETNONOYESYES图56串口通信子程序流程图6测试报告测试步骤(1)将读卡器外围线接好,即接上电源和连上与PC的RS232口连接的串行通信线。(2)在PC机里打开串口通信调试程序,设置好端口(COM1)、波特率(9600B/S)、数据位(8位)。(3)分别将E5550非接触式IC卡和H4001非接触式ID卡靠近读卡器的读卡线圈,读取相应的数据。(4)记下串口通信调试程序中所读取到的数据加以分析。测试结果经过测试,该读卡器能够分别从E5550非接触式IC卡和H4001非接触式ID卡中读取卡内的数据,由读卡器读取的IC卡的数据为32位,ID卡的数据为128位。经过多次试验,发现并不是每次都能读到卡里的数据,且有时候会出现同一张卡读到不同数据的情况,而且如果是两张卡同时一起读就会发生错误。7总结本设计是以ATMEL公司的TEMIC系列的E5550非接触式IC卡和H4001非接触式ID卡为对象,以及以该公司的AT89C52单片机为主控芯片和TEMIC系列射频卡的读写基站芯片U2270B为核心,而设计的一款射频卡读卡器。该读卡器采用外接电源供电,具有蜂鸣器报警、和采用RS232接口同上位机通信的功能,能够较好地满足实际应用的需求。经过测试,该读卡器基本上能够很快的从非接触式IC卡和非接触式ID卡中读取数据,读卡距离大概为512MM,且操作简单方便,由于本读卡器的软件程序还没完善,因此本读卡器对于同时多张射频卡同时进入读卡区时会发生读卡错误,但这样对于本设计的所要求达到的性能方面没太大的影响。虽然本读卡器功能相对单一,但是由于采用的是低频射频卡及低频读卡芯片,所以对于高频卡的读卡器来说,本读卡器的价格便宜,并且性能也较为稳定,对于卡的操作也有一定的保密性,可以运用到一些对于有一定保密要求的场合,如食堂就餐打卡、公共事业收费打卡、智能门锁等。致谢参考文献李朝青1998单片机原理与接口技术北京北京航天大学出版社陈邦媛2002射频通信电路北京科学出版社谭浩强2003C程序设计北京清华大学出版社王爱英2000智能卡技术IC卡北京清华大学出版社王卓人,邓晋军,刘宗祥1999IC卡的技术与应用北京北京电子工业出版社罗繁,王焕磊,张保平2001TEMIC系列射频卡读写器的研制电子技术应用,2001(3)2224邢中柱2001一种采用曼码调制的非接触IC卡读写程序编制单片机与嵌入式系统应用,2001(8)4750THEDESIGNOFCONTACTLESSICCARDREADERWUZEHUANCOLLEGEOFENGINEERING,SOUTHCHINAAGRICULTURALUNIVERSITYGUANGZHOU510642,CHINAABSTRACTASTHEDEVELOPMENTOFTHEWORLDWIDECOMPUTERANDINFORMATIONTECHNOLOGY,THEGLOBALINFORMATIONERAHASCOMEEVERYCOUNTRYISTAKINGACTIONSFORITSDEVELOPMENTINHIGHTECHNOLOGYFIELDSCHINESEICCARDMARKETMAINTAINEDAMOMENTUMOFFASTGROWTH,ACHIEVINGASTEADYRISEINBOTHSALESVOLUMEANDSALESREVENUETHESIMCARDMARKERCONTINUEDTOGROWFASTASERIESOFPROJECTSLIKESECONDGENERATIONIDCARDANDALLINONECARDANDITAPPLICATIONSINTHEGOVERNMENTSECTORALSODROVEUPTHEGROWTHOFTHEICCARDMARKETTHETECHNOLOGYOFCONTACTLESSICCARDISATECHNOLOGYTHATCOMBINESTHERADIOFREQUENCYIDENTIFICATIONWITHTHEICCARDTECHNOLOGYANDCONTACTLESSICCARDSHAV

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论