校园一卡通系统中Mifare卡读写器设计 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

校园一卡通系统中Mifare卡读写器设计

来源:中国一卡通网  作者:南邮吴江学院 庄乾成  发布时间:2008-07-30 10:32:52  字体:[ ]

关键字:读写器  读卡器  mifare  校园一卡通  

摘   要:设计在校园一卡通系统中应用的Mifare RC5O0射频识别卡读写器,以实现发卡、终端消费、自动挂失等功能 的终端机。该读写器具有安全、实用、方便、快捷、可靠性高的特点,解决了校园消费一卡通收费管理问题。


    (1)主程序流程:主程序主要完成系统变量的初始化,检测操作IC卡,通过串口接收键值,与服务器建立通信,从服务器下载与卡号相关的信息并参与运算和显示等,具体流程如图2所示。

消费终端机程序监控流程

图2 消费终端机程序监控流程

    (2)键盘扫描流程:键盘扫描程序可以采用扫描法和反转法两种方式,本系统键盘扫描功能模块是采用反转法实现的。这个方法实现起来比较方便,先置列线为低电平,对行线进行扫描,查看是否有低电平出现。如果有就是有健按下,再反转置行线为低电平,对列线进行扫描,查看是否有键按下。如果列线中有低电平出现,就表示有键按下;否则,就是无键按下。利用这种方法可以得到按键的扫描码,再根据扫描码查找键码表来确定按键的键码值,然后将键值通过串口发送到主控制器。键盘扫描程序的流程如图3所示。 

键盘扫描流程

图3 键盘扫描流程

    (3)显示程序说明:根据图1,在显示电路中,用P1口的3根I/O 口线(P1.0、P1.1、P1.2)分别提供时钟信号(CI K)、串行数据(DA)和使能信号(EN)。MC14499每一次可接收20位串行输人数据,前4位用于控制数码管的小数点显示,后16位是4个数码管的BCD码输人数据。在每帧数据传送之前,必须将EN置0,然后传送20位数据。数据传送完后,再将EN置1。

    (4)对Mifare卡的操作流程:本系统采用中断(INT1)工作模式,即MCU利用MifareRC500提供中断信息对其进行控制。另外,根据系统的需要,可以采用查询方式对MifareRCS00进行操作。整个系统的工作由对Mifare卡操作和系统后台处理两大部分组成。由于篇幅有限,本文只介绍对Mifare卡操作流程。Mifare卡的操作可以分为以下几个步骤: 

    ① 复位请求。当一张Mifare卡片处在卡片读写器天线的工作范围之内时,程序员控制读写器向卡片发出“REQUEST all”(或“REQUEST std”)命令。卡片的ATR将启动,将卡片Block 0 中的卡片类型(TagType)号共2字节传送给读写器,建立卡片与读写器的第一步通信联络。如果不进行得位请求操作,读写器对卡片的其他操作将不会进行。
    ② 反碰撞操作。如果有多张Mifare卡片处在卡片读写器天线的工作范围之内时,读卡芯片将首先与每一张卡片进行通信,取得每一张卡片的系列号。由于每一张Mifare卡片都具有其唯一的序列号,决不会相同,因此读卡芯片根据卡片的序列号来保证一次只对一张卡操作。该操作得到的返回值为卡的序列号。
    ③ 卡选择操作。完成了上述2个步骤之后,读卡芯片必须对卡片进行选择操作。执行操作后,返回卡上的SIZE字节。
    ④ 认证操作。经过上述3个步骤,在确认已经选择了一张卡片时,读卡芯片在对卡进行读/写操作之前,必须对卡片上已经设置的密码进行认证。如果匹配,才允许进一步的读/写操作。
    ⑤ 读/写操作。对卡的最后操作是读、写、增值、减值、存储和传送等操作。相关代码如下:


    每调用一个函数,函数执行完毕都返回一个相应的状态代码(status)。如果成功调用,返回值为0;如果返回值不为0,说明该函数未成功执行从而转到其他操作。 

结 语 

    本文介绍了校园一卡通系统中非接触IC卡读写器的设计。在此读写器的基础上,只要稍加修改就能开发出不同的射频识别应用系统,如考勤系统门禁系统、公交车收费系统等。这些都是笔者在学习和实践中得来的,相信能对相关工作人员有一定启发.

参考文献
[1]王卓人,邓晋军,刘宗祥.Ic卡的技术与应用[M].北京:电子工业出版社,1999.
[2]王宏军,赵冬艳.智能Ic卡全书[M].北京:电子工业出版社,1996.
[3]朱兆优,王耀南,林刚勇.非接触IC卡应用系统设计[J].计算机自动测量与控制,2001,9(5).

更多

新闻投稿合作邮箱:yktchina-admin@163.com    字体[ ] [收藏] [进入论坛]

推荐文章

论坛热帖