非接触ID卡在自动识别系统中的应用
发布时间:2008/5/27 0:00:00 访问次数:701
     王国荣 石油大学机电学院 双 凯
     来源:《单片机与嵌入式系统应用》
     摘要:非接触id卡具有数据读数速度快、抗干扰能力强、价格低等特点,在自动识别系统中有良好的应用前景。本文分析非接触id卡的数据读取及数据校验的操作,并给出相应的源程序。
    
    
     关键词:非接触id卡
     自动识别 数据读取及校验
     随着半导体芯片技术的不断发展,自动识别系统(如巡更系统、门禁系统、考勤系统、仓储管理系统、流水线生产自动化管理系统等)所采用的id标识也在不断地更新,从条形码、磁卡到智能ic卡、非接触id卡,都有各自的特点及适用场合,表1列出了几种id标识的特性与区别。在实践应用过程中,用户可根据不同的使用环境及功能要求选择不同的id标识。
     非接触id卡的数据读取具有非常接触的特性,即根据不同的硬件电路设计,可以在距离非接触id卡4~10cm处读取其数据。因此,读取非接触id卡数据无需机械接触即可完成,避免了接触式数据读取而产生的卡损伤,从而大大提高了卡的使用寿命。此外,非接触id卡还可以按不同的应用采用异型封装,如硬币型、柱型等,并可将其预埋于设备的混凝土基础中,使其不容易受到外力破坏。
    
     1 非接触id卡主要特性
     目前市场上非接触id卡主要有台湾凌航科技的gk4001卡和瑞士swatch集团的h4001卡。它们都采用125khz的典型工作频率,有64位激光可编程rom,调制方式为曼彻斯***(manchester)调制,位数据传送周期为512μs,其64位数据结构如图1所示。
     连续9位“1”作为头数据,是读取数据时的同步标识;d00~d93位是用户定义数据位;p0~p9是行奇校验位,pc0~pc3是列奇校验位,最后位“0”是结束标志。非接触id卡的这种数据结构非常有利于判断读出数据的正确性。
     由于temic u2270b射频基站的典型工作频率为125khz,因此,可采用以u2270b作为射频基站模块构成的电路(参见本刊2001年第3期《temic
     rf卡读写器的设计》)来实现对非接触id卡的数据读取。在工作状态下,只要射频基站电路不断电,非接触id卡循环发送64位数据。
    
     2 非接触id卡数据读取及校验
     根据曼彻斯***的编码原则(参见本刊2001年第一期《一种采用曼码调制的非接触ic卡读写程序编制》),非接触id卡采用上升沿对应着位数据“0”,下降沿对应着位数据“1”,微控制器通过检测u2270b输出数据位的跳变来实现对曼彻斯***的译码。在现实工作中,数据信号会受到调制、解调、噪声各种效应的影响,其上升沿和下降沿存在抖动,可采用键盘消抖的办法来消除抖动的影响。根据非接触id卡64位数据循环发送以及其数据绪构特点,即数据流中第64位为“0”,第1位至第9位为“1”。据此,将“0111111111”作为读数据的起始标识,如图2所示。在确定了数据起始标识后,采用延时大于0.5t采样数据位的方法,如图3所示,来避开曼彻斯***编码中的空跳对数据译码造成的影响,简化了译码程序。
     通过实验得到:480μs≤1t≤520μs,220μs≤0.5t≤280μs,由此取tnext=300μs。为了便于对读出数据进行奇校验,读出数据每5位作为一个字节。因此确定起始标识和读取数据对时钟有严格要求,所以寻找起始标识和读取数据部分程序采用汇编语言编写。数据读以后,根据前面所提到的非接触id卡的数据结构,通过比较奇校验算法与读出数据中的奇校验位来验证出数据的正确性。非接触id卡的数据读取程序如下:
     ;------------------------------------------
     ;读出数据程序
     ;晶振11.059 2mhz
     ;lable define
     ;-----------------------------------------
     tll equ
     王国荣 石油大学机电学院 双 凯
     来源:《单片机与嵌入式系统应用》
     摘要:非接触id卡具有数据读数速度快、抗干扰能力强、价格低等特点,在自动识别系统中有良好的应用前景。本文分析非接触id卡的数据读取及数据校验的操作,并给出相应的源程序。
    
    
     关键词:非接触id卡
     自动识别 数据读取及校验
     随着半导体芯片技术的不断发展,自动识别系统(如巡更系统、门禁系统、考勤系统、仓储管理系统、流水线生产自动化管理系统等)所采用的id标识也在不断地更新,从条形码、磁卡到智能ic卡、非接触id卡,都有各自的特点及适用场合,表1列出了几种id标识的特性与区别。在实践应用过程中,用户可根据不同的使用环境及功能要求选择不同的id标识。
     非接触id卡的数据读取具有非常接触的特性,即根据不同的硬件电路设计,可以在距离非接触id卡4~10cm处读取其数据。因此,读取非接触id卡数据无需机械接触即可完成,避免了接触式数据读取而产生的卡损伤,从而大大提高了卡的使用寿命。此外,非接触id卡还可以按不同的应用采用异型封装,如硬币型、柱型等,并可将其预埋于设备的混凝土基础中,使其不容易受到外力破坏。
    
     1 非接触id卡主要特性
     目前市场上非接触id卡主要有台湾凌航科技的gk4001卡和瑞士swatch集团的h4001卡。它们都采用125khz的典型工作频率,有64位激光可编程rom,调制方式为曼彻斯***(manchester)调制,位数据传送周期为512μs,其64位数据结构如图1所示。
     连续9位“1”作为头数据,是读取数据时的同步标识;d00~d93位是用户定义数据位;p0~p9是行奇校验位,pc0~pc3是列奇校验位,最后位“0”是结束标志。非接触id卡的这种数据结构非常有利于判断读出数据的正确性。
     由于temic u2270b射频基站的典型工作频率为125khz,因此,可采用以u2270b作为射频基站模块构成的电路(参见本刊2001年第3期《temic
     rf卡读写器的设计》)来实现对非接触id卡的数据读取。在工作状态下,只要射频基站电路不断电,非接触id卡循环发送64位数据。
    
     2 非接触id卡数据读取及校验
     根据曼彻斯***的编码原则(参见本刊2001年第一期《一种采用曼码调制的非接触ic卡读写程序编制》),非接触id卡采用上升沿对应着位数据“0”,下降沿对应着位数据“1”,微控制器通过检测u2270b输出数据位的跳变来实现对曼彻斯***的译码。在现实工作中,数据信号会受到调制、解调、噪声各种效应的影响,其上升沿和下降沿存在抖动,可采用键盘消抖的办法来消除抖动的影响。根据非接触id卡64位数据循环发送以及其数据绪构特点,即数据流中第64位为“0”,第1位至第9位为“1”。据此,将“0111111111”作为读数据的起始标识,如图2所示。在确定了数据起始标识后,采用延时大于0.5t采样数据位的方法,如图3所示,来避开曼彻斯***编码中的空跳对数据译码造成的影响,简化了译码程序。
     通过实验得到:480μs≤1t≤520μs,220μs≤0.5t≤280μs,由此取tnext=300μs。为了便于对读出数据进行奇校验,读出数据每5位作为一个字节。因此确定起始标识和读取数据对时钟有严格要求,所以寻找起始标识和读取数据部分程序采用汇编语言编写。数据读以后,根据前面所提到的非接触id卡的数据结构,通过比较奇校验算法与读出数据中的奇校验位来验证出数据的正确性。非接触id卡的数据读取程序如下:
     ;------------------------------------------
     ;读出数据程序
     ;晶振11.059 2mhz
     ;lable define
     ;-----------------------------------------
     tll equ