物联传媒 旗下网站
登录 注册
RFID世界网 >  技术文章  >  其他  >  正文

维根及ABA磁卡编码产生器原理和实现方法

作者:许丹 徐平
来源:中国一卡通网
日期:2008-01-16 18:13:55
摘要:“一卡通”要求在整个系统中使用同一张卡完成所有功能,但由于组成“一卡通”系统的多个不同类型的子系统往往具有不同的读卡器接口,给系统集成带来困难。本文介绍的这种编码产生器可以将RS232/RS485接口的读卡器输出转换成标准的维根和ABA磁卡编码输出,为“一卡通”系统的组建带来方便, 同时还可以利用该编码产生器输出特殊编码,供系统调试使用。文中介绍了这种编码产生器的工作原理和实现方法,并给出了硬件原理框图和软件流程图。

一、引言

    随着社会的发展, 人民的生活水半不断提高, 对生活质量以及工作和生活环境的安伞性要求也越来越高。为满足人们的这种需求, 各种相关电r了产品应运而生, 而作为人机数据交换的主要工具, 各种类型的卡已经进入生活各个领域。但由于不同领域使用的卡和读卡器尚未形成统一规范, 持卡者需要使用小同的卡实现不同的功能, 给使用带来了很大的不便。为了解决这一矛盾, 人们希望建立“一卡通” 系统。 “一卡通” 要求在整个系统中使用同一张卡完成所有功能, 但由于组成“一卡通” 系统的多个不同类型的子系统往往具有不同的读卡器接口, 给系统集成带来困难。

    通过对目前市场上常见读卡器和控制器进行调查分析, 发现在停车场和消费领域使用较多的是RS232/RS485接口方式,门禁等出入口控制领域的主流是维根接口,而银行系统的信用卡则一般使用ABA磁卡接口。针对这种状况, 我们研制了这种维根及ABA磁卡编码产生器。利用这种编码产生器可以将RS2 32/RS48 5接口的读卡器输出转换成标准的维根和ABA磁卡编码输出。这样在组建“一卡通” 系统即只选用带RS232/RS48 5接口的读卡器, 保证系统中使用的读卡器类型统一, 同时也确保了使用同 张卡完成所有功能。当存某些了系统斗I必须使用带维根或磁卡接口的控制器时, 可以使用木文介绍的编码产生器完成数据交换, 为“一卡通” 系统的组建带来方便。另外还可以利用该编码产生器输出特殊编码, 供系统调试使用。

二、维根编码接口

    维根编码协议包括26位,34位,42位等不同的格式。以26位格式为例, 共由26位二进制数组成, 第0位和第25位是校验位, 中间24位是数据位。第0位是第1位到第12位数据的偶校验位, 第25位是第13位到第24 数据的奇校验位。其它格式与26位类似, 只是数据的位数不同。

    带维根编码输出的读卡器通过两条数据线DATA0和DATA1输出编码信号。如图1所示, 在正常情况下,DATA 0和DATA 1均为高电平, 而在有数据输出时产生 隔为2m s, 宽度5O uS的低电平脉冲, 输出卡号。DATA O和DATA 1分别输出卡号二进制编码的O和1。

图1 wiegand协议时序图

三、ABA磁卡编码接口

    磁卡是利用贴在卡上的磁条来记录持卡人的帐户、姓名等信息的。磁条上记录的信息采用调频制编码技术,具有白同步能力, 保证磁卡以不同速度划过读卡器时都能输出正确的数据。磁卡上一般有三个磁道, 并且每个磁道存卡上的位置在同际标准IS07811/4 和IS078 11/5都有严格的定义。同时国际标准I SO78 11/2规定, 磁道1记录字母数据型数据,可以记录多达79个字符或数字, 每个字符由7个bit组成。磁道2记录数字型数据, 记录长度不超过40个数据。磁道1和磁道2两者都是只读磁道。磁道3记录数字型数据, 格式与磁道2相同, 但可以记录多达1 07个数据。磁道3是读写磁道。

    磁道2的数据标准制定最初是由美同银行家协会(ABA,Ameri Can Banker S A S SOCiat i On) 完成,它包含了一些最基本的相关信息, 如卡的惟一识别号码, 卡的有效期等。由于磁道2的数据包含卡的惟一识别号码,因此在许多身份识别系统如出入口控制等系统中, 控制器一般都使用第二磁道的数据, 本文也主要介绍该磁道的数掘编码, 其它磁道的数据可用类似的方法实现转换。

    IS078 13 定了第二磁道的标准结构。第二磁道的数据采用的是ANSI/I S0 BCD数据格式, 每个字符长度为5个b i t(含校验位) , 其信息最大长度为40个字符。使用的是16字符集, 前面4位是有效数据位,最后一位为奇校验位, 而且,发送卡信息时, 低位在前。 (如表1)

    SS: 起始标记。其编码为0BH。

    PAN: 主帐号。PAN由三部分组成:

    1)卡者标识号码: 它是标识主要行业和发卡者的号码。
    2)人帐户标识: 它是由发卡部门分配给独立单位或个人的号码, 用于标识一个独立的帐户。
    3)校验数字: 个人帐号,标识之后紧跟一数字,用以使PAN有效。它是根据PAN里除了校验数字外的所有数字计算得到的。其计算是采用计算模1 0“隔位倍加”校验数的方法。它是用来标识发行卡片的行业、卡片发行人以及带有一位校验位的客户标识号, 其最大长度不能超过1 9个数字。

    FS: 域分割符号, 其编码为0DH。 
    ADATA: 附加数据, 如失效日期、加密了的个人身份码等附加数据。
    ES: 结束标记, 其编码为0FH。
    LRC: 纵向冗余校验字符。不包括奇校验符,LRC7符的每一位使数据信息(包括起始标记、数据、分割标记、结束标记和LRC字符)对应位上的位编码为“1” 的总数是偶数。LRC字符本身也附加有校验位,同样是采用奇校验。

    不同的磁卡读卡器可以读取磁卡中的某个或某几个磁道的数据, 通过PRESENT引线输出发送开始和结束信号,CLOCK和DATA两条数据线输出同步时钟和数掂编码信号。ABA协议规定为负逻辑, 数据发送之前,PRSENT管脚变为低电平并日.一直维持到数据传送完毕,DATA管脚传送数据, 每当CLOCK有一个下降沿之后,DATA管脚就传送一个b i t的数据, 之前的
DATA值在CLOCK下降沿来临之前的1 0U silt持有效, 当前的DATA值在下一 个CLOCKT 降沿来临前1 0us有效。磁条的开头是一连串的“0” 比特数据流, 保证时钟得到同步而开始解码。

四、编码产生器工作原理

    编码产生器硬件原理框图如图2所示。系统以PHI LI PS的8 7 LPC7 64为控制核心, 包括看门狗电路、串口电半转换电路以及编码输出电路。

图2 处理转换电路

    87 LPC7 64是由Ph i l i P s生产的增强型5 1单片机,它在基本结构、汇编指令等方面与80C51系列兼容,它的时钟频率可高达20MHZ。图中DATA 1和DATA 0管脚输出Wi egand信号, 从PRESENT和CL0CK、DATA管脚输出ABA格式的信号,由于都采用负逻辑输出,空闲状态位高电半, 因此每一个输出管脚都接上拉电阻。当有信号输出时, 管脚上会出现低电半脉冲。开关 S 1用于选择输出模式, 当S 1闭合时输出wiegand信号,否则输出ABA格式的信号。

    看门狗和系统参数存储由x25043完成。该芯片内含电源监控、看门狗和可擦写非易失存储器, 保存通讯波特率、卡格式等参数。

五、编码产生器软件工作流程

程序的流程图3所示。

六、结论:

    目前, 该编码产生器作为RS48 5到维根输出的码转换器, 已经在某水电枢纽工程的车辆出入控制中得到应用:而作为从RS485到磁卡格式输出转换器, 则被成功地应用于交通银行某大楼的员工出入控制系统中。

作者简介:北京航空航天大学理学院 许丹 徐平

【参考文献】
[1]王爱英, 智能卡技术, 清华大学出版社,2 0 0 1;
[2]周航慈等,P H I L I P s 5 1 L Pc系列单片机原理及应用设计, 北京航空航天大学出版社,2 0 0 2;
[3]骆德民、耿鼎发、刘建刚、李言, “ 一卡通” 技术在建筑物和社区智能化中的地位“一卡通” 系统工程实践探讨
[4]张敏, 关于银行磁卡的研究及其数据处理的应用开发.金卡工程.2 0 0 1