基于MF RC500芯片的射频读写器设计和实现方案 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

基于MF RC500芯片的射频读写器设计和实现方案

来源:中国一卡通网  作者:中国一卡通收录  发布时间:2012-03-19 08:48:59  字体:[ ]

关键字:读写器  单片机  MCM  Mifare1卡  

摘   要: 本文提出了一种基于MF RC500的Mifare1卡读写器设计方案,该方案采用AT89S52单片机实现对MCM(Mifare Core Module)的控制。本文的设计方案具有硬件实现简单、易于软件二次开发等优点。同时,由于良好的电磁兼容性,该系统比较稳定,通信可靠性得到了保证。下面首先给出了系统的总体结构以及方案设计,然后从硬件设计及软件设计两个方面对系统进行了讨论和说明。


  (5) MF RC500与MCU的接口电路

  MF RC500支持与不同的微处理器直接接口,包括独立读写选通的MCU连接、公共读写选通的MCU连接以及具有公共读写选通和挂钩功能的MCU连接。在每次上电或硬件复位后,MF RC500也复位其并行微处理器接口模式并自动检测当前微处理器接口的类型。 


  本系统选用具有公共读写选通和挂钩功能的MCU连接方式,图6为MF RC500与MCU的接口原理。由图中可以看出,本系统采用中断(INT1)工作模式,即MCU利用MFRC500提供中断信息对其进行控制。另外,根据系统的需要,可以采用查询方式对MF RC500进行操作。

  4系统软件设计

  软件设计主要包括对MF RC500进行初始化、接收上位计算机的指令、控制MF RC500,并且把MF RC500的状态信息反馈给计算机。程序流程如图7所示。 


  (1) 初始化并行接口

  首先读Command 寄存器直到Command的6位值为00H,内部初始化阶段此时结束,MF RC500准备接收控制;将80H 写入Page寄存器以初始化微处理器接口;读Command寄存器,如果该值为00H则微处理器接口初始化成功;在接口初始化之后通过将0X00 写入页寄存器,激活线性地址模式。这个过程可以用以下代码表示:

  do{PReset=1; Delay(10);  PReset=0;} // 给复位脉冲
  while (ReadRC(RegPage) != 0x80);
  do{ WriteRC(RegPage,0x0);}
  while(ReadRC(RegCommand) != 0x00);
  if (ReadRC(RegCommand) != 0x00)
  status = MI_INTERFACEERR;//接口初始化错误
  else
  status = 0;        //接口初始化成功 

  (2) 对Mifare1卡的操作

  MCU对Mifare1卡操作的命令主要有空操作、装载密码、验证密码、读卡、写卡和关卡等。无论哪种操作都必须先把命令代码写入到Command寄存器,比如执行验证密码则需要执行WriteRC(RegCommand,0x0c)命令。

  从操作流程上,可以把Mifare1卡的操作分为以下几项:

  复位请求:当一张Mifare1卡处在读写器天线的工作范围之内时,读写器向卡发出REQUEST all(或REQUEST std)命令。卡的ATR将启动,将卡Block 0中的卡类型(TagType)号共2个字节传送给读写器,建立卡片与读写器的第一步通信联络。如果不进行复位请求操作,读写器对卡的其它操作将不会进行。

  反碰撞操作:如果有多张Mifar1e卡处在读写器天线的工作范围之内时,读写器首先与每一张卡进行通信,取得每一张卡的ID号。由于每一张Mifare1卡都具有唯一的ID号,因此读写器根据卡的ID号来保证一次只对一张卡操作。

  卡选择操作:完成了上述二个步骤之后,读写器必须对卡进行选择操作。执行操作后,返回卡上的SIZE字节。

  认证操作:经过上述三个步骤,在确认已经选择了一张卡片时,读写器必须对卡上已经设置的密码进行认证。如果匹配,才允许进一步的读写操作。

  读写操作:对卡的读、写、增值、减值、存储和传送等操作。

  5结论

  本文的创新工作:基于PHILIPS公司生产的MF RC500芯片,提出了一种结合单片机AT89S52的通用射频卡读写器的设计与实现方案。系统实现了对Mifare1卡读写操作的同时,具有以下优点:
  (1) 由于接口方式比较多,对IO口操作简单,可以方便地对MF RC500进行控制并获取相应信息;
  (2) 由于该系统在天线设计合理的情况下可靠性比较高,有效距离可达10cm;
  (3) 计算机只需通过一定的方式发送命令,即可对卡操作,在此基础上可以根据不同的需要开发出相应的软件产品,具有很大的实用价值。

更多

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

推荐文章

论坛热帖