首页  新闻  企业大全  产品大全  供应求购  技术文章  解决方案  工程案例  下载  展会  招聘  论坛  博客                      免费注册  会员登录
       当前位置:中国一卡通网 >> 技术文章 >> 基于MF RC632的专用读卡器软件系统设计

基于MF RC632的专用读卡器软件系统设计


来源:中电网   作者:于兴晗 李正熙 李君 沈保锁   发布时间:2008-5-26 9:13:13   字体[]
关键词:mf rc632  读卡器软件  mifare one卡  射频读卡器  
摘  要:随着北京市政交通一卡通工程和门禁系统的普及,射频技术在消费电子、通信设备、工业控制等领域也取得了飞速的发展。因此在硬件设备大部分相同的情况下,软件系统就成了该设备性能好坏的关键。本文主要介绍一款专用射频读卡器的软件系统的设计及实现。

  引 言

  随着北京市政交通一卡通工程和门禁系统的普及,射频技术在消费电子、通信设备、工业控制等领域也取得了飞速的发展。因此在硬件设备大部分相同的情况下,软件系统就成了该设备性能好坏的关键。本文主要介绍一款专用射频读卡器的软件系统的设计及实现。

  1 系统概述

  本系统主要作为一种专用的训练器材。除具备通用的Mifare卡的读写器功能外,还可作为一种专用的训练评估工具。例如将该设备安装在跑道的周围,并将MifareOne卡安装在测试者的鞋上,每个训练者都有自己的ID号。当他从起跑线起跑时,安装在起跑线的专用读卡器就会将自己的设备ID号和当时的时间写入测试者的MifareOne卡中;当经过下一个基站时读卡器会将自己的设备ID和当时的时间写入测试者的Mirare One卡中,同时会将测试者的ID号、姓名等个人信息(包括经过上个测试基站时间)都读进设备中保存。由于Mifare One卡共有16个扇区,每个扇区又分为4块、每块又有16个字节。除了系统使用的外,用户还可以使用的有48×16字节。而通过Mifare One卡存储的数据均不大,只占用一块存储区。换句话说,Mifare One卡的数据存储区可以存储48次,当超过48次时就从前面覆盖数据。所以,在Mifare one卡中存储的永远是最近48个基站的信息。训练结束后,就可以通过主站将各个基站的数据收集起来以评估测试者的信息。而主站和基站之间通信可以采用的方式也是多样的。当主站和基站的距离比较近时,可以采用RS232、RS485,为提高通信质量也可以采用工业总线的方式,如CAN总线、I2C总线或One Wire总线等。当距离比较远时,也可采用无线通信的方式,如GSM等。除此之外,各个基站还可以通过打印机将数据输出。

  2 系统硬件框图及工作原理

  系统硬件框图如图1所示。主板上电后,读取存储器中的系统设置,然后根据其中的设置初始化整个系统,包括本设备的ID号、主站、从站、开机时间、关机时间、数据的存储方式等。 

基于MF RC632的专用读卡器软件系统硬件框图

  3 系统的软件结构及特点

  整个系统的软件结构框图如图2所示。 

基于MF RC632的专用读卡器软件系统框图

  整个系统主要是由核心控制单元P89LPC932、与Mifare One卡通信的MFRC632、与PC机通信的RS232、提供时间基准的实时时钟芯片PCF8563和存储系统设置数据的存储器AT45DB021等。因此针对本系统整个软件系统的开发也主要分为系统启动、硬件驱动、任务调度等。

  4 系统软件设计及实现

  4.1 启动代码

  在本系统中,主要指在系统刚一上电后先将所有的外围电路和CPU本身初始化成静止状态,然后根据系统的要求将所有的外围电路和CPU本身进行初始化设置。设置完毕后再将CPU的中断源打开。在本系统中,系统一上电首先执行Init_System()函数。部分代码如下: 


  程序执行完Init_System()函数后执行RcChipReady函数。此函数的功能是初始化MF RC630芯片。

  4.2 硬件驱动

  4.2.1 PCF8563驱动

  由于本芯片是一款标准的I2C总线设备,所以硬件驱动实际上就是标准的I2C总线控制。由于篇幅有限,这里就不介绍了。

  4.2.2 MF RC632驱动

  MF RC632是MF RC500芯片的升级产品,所以MFRC630的大部分寄存器与MF、RC500均相同,它们对Mifare One卡的操作流程也基本相同。下面介绍对Mifare One卡的操作流程。

  (1)Mifare One卡的操作流程

  整个系统的工作由对Mifare卡操作和系统后台处理两大部分组成。由于篇幅有限,本文只对Mifare卡的操作流程进行简单介绍。Mifare One卡的操作可以分为以下几项:

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

  (2)MF RC500软件开发包移植 

技术文章投稿、合作信箱:yktchina-admin@163.com        字体[] [进入博客] [进入论坛] [推荐给朋友
 
      【相关文章
·基于SkyeModule M8模块的UHF射频读卡器设计  2008-04-10
·基于FPGA的无线射频读卡器开发与设计  2008-03-19
·基于W78E516的射频读卡器实现  2007-12-13

      【图片文章
  推荐文章
  入网产品
产品分类:   智能卡 门禁 考勤 巡更 消费 水控 
停车场  读写器 二代证 制卡 证卡 监控 IC卡三表
  推荐方案
方案分类:  校园一卡通   城市一卡通      
企业一卡通   会员一卡通   小区一卡通  其它
  论坛热贴
网站简介 | 广告服务 | 客服中心 | 企业链接 | 法律声明
Tel:0755-86227112    Fax:0755-86227110    Email:yktchina@gmail.com    QQ: (销售) (客服)
客服电话:0755-86227155    一卡通QQ群: 64898936  44467041  38535626  36815359  42721781  42721639
Copyright © 2006-2007 All Rights Reserved 粤ICP备06079390号 中国一卡通网|智能卡|门禁|考勤|一卡通 版权所有