- 8
- 0
- 约3.17千字
- 约 7页
- 2018-08-27 发布于福建
- 举报
基于ArduinoMiFare射频卡读写机制研究
基于ArduinoMiFare射频卡读写机制研究
摘要: 本文阐述了在Arduino UNO上对MiFare One卡射频识别卡进行读写的软件实现,并重点描述了阅读器与卡片之间的通信过程。
Abstract: This paper expounds the software of implementing MiFare One radio frequency identification card based on Arduino UNO, and mainly introduces the communication process between the reader and the card.
关键词: 射频识别;Arduino;MFRC522;MiFare One;读/写
Key words: radio frequency identification;Arduino;MFRC522;MiFare One;read/ write
中图分类号:TP368.1 文献标识码:A 文章编号:1006-4311(2015)07-0071-02
1 MiFare One卡片的特性与结构
MiFare One卡片内部包括一块微型芯片和一个天线。在工作时,卡片与阅读器之间通过13.56MHz频段进行通信。每张卡片具有唯一的序列号,具有防冲突机制,同时对卡内存储的数据通过密码进行读写保护。
卡片的微型芯片内建了EEPROM存储器,以MiFare One S50为例,存储器容量为8Kbit。整个存储空间被划分为16个扇区,记为扇区0-15,每个扇区有4个数据块,记为数据块0、1、2、3,每个数据块16个字节,对卡片的读写以数据块为单位进行,如图1所示。
其中第0扇区第0数据块为厂商标志块,用于存储厂商信息与卡号。另外每一个扇区的最后一个数据块用于存储本扇区的读写密码。
2 Arduino与MFRC522的通信
2.1 Arduino与MFRC522的连接 Arduino通过SPI① 与MFRC522进行连接,连接方式如表1所示。
2.2 Arduino对MFRC522的控制 Arduino对MFRC522的控制是通过对MFRC522的寄存器进行读写来实现的。MFRC522寄存器有Command and Status、Command、CFG、TestRegister共计64个寄存器,所有寄存器与其地址之间在预处理中建立绑定关系,例如:
#define CommandReg 0x01
读写MFRC522的寄存器时需要使用Arduino的SPI库中的transfer()函数,所以在程序的setup()函数中要调用SPI.begin()对SPI总线等进行初始化。使用SPI.transfer()函数时要按照先传送读写地址,再读取或写入数据的方式来完成。在传送地址时,需要同时告知此次操作是读还是写,地址格式如表2所示。
以写函数为例,地址格式要求为:0XXXXXX0,函数实现如下:
/* addr:寄存器地址;val:写入值;*/
void Write_MFRC522(uchar addr, uchar val)
{
digitalWrite(chipSelectPin, LOW);
SPI.transfer((addr1)0x7E);
SPI.transfer(val);
digitalWrite(chipSelectPin, HIGH);
}
3 读/写卡片时的数据传输过程
在向卡片写入数据时,首先要将写命令字和进行写操作的数据块号输入MFRC522的FIFO缓冲区 ,然后启动阅读器与卡之间的数据传输。在卡收到命令字与块号之后,再将要写入的数据输入MFRC522的FIFO缓冲区,再次启动数据传输,一次写操作完成。写数据函数的函数原型如下:
uchar MFRC522_Write(uchar blockAddr, uchar *writeData);
在MFRC522_Write0中需要调用一个启动MFRC522与卡片之间真正进行数据传输的函数:
uchar MFRC522_Comm(uchar command, uchar *sendData, uchar sendLen, uchar *backData, uint *backLen);
在此函数原型中,command表示命令字;sendData表示想卡片发送数据的地址;sendLen表示发送数据长度,单位为字节;backData表示MFRC522接收数据的地址;backLen表示接收数据长度值所在的地址。
MFR
您可能关注的文档
- 基于Android高级程序设计语言移动学习平台设计与实现.doc
- 基于Android高校课程学习系统设计与实现.doc
- 基于ANFIS新闻工作者媒体素养评估预测.doc
- 基于ANFIS实验教学质量评价研究.doc
- 基于AngularJS健康大数据用户接口设计与实现.doc
- 基于AngⅡApoE表达探讨补肾中药复方首参颗粒对颈动脉粥样硬化患者影响.doc
- 基于ANP―Fuzzy―TOPSIS企业精益化水平评价研究.doc
- 基于ANN电力工程造价预测模型建立与实现.doc
- 基于ANP供应链合作伙伴选择综合评价.doc
- 基于ANP公路工程造价风险控制与管理.doc
- 良肢位摆放在骨科康复中的应用.ppt
- 2026精选人教版一年级上册数学期末考试试卷(3套含答案解析).docx
- 2026新版人教版三年级上册语文期末考试试卷(3套含答案解析).pdf
- 2026精选人教版四年级上册英语期末考试试卷(3套含答案解析).pdf
- 2026新版人教版三年级上册数学期末考试试卷(3套含答案解析).pdf
- 2026新版人教版三年级下册数学期末考试试卷(3套含答案解析).docx
- 2026精选人教版四年级上册英语期末考试试卷(3套含答案解析).docx
- 2026新版人教版三年级上册语文期末考试试卷(3套含答案解析).docx
- 良肢位摆放与康复训练的结合.ppt
- 良肢位摆放在儿童康复中的应用.ppt
最近下载
- 2025年华侨港澳台生入学考试高考数学试卷真题.pdf VIP
- 2023年06月国家国防科技工业局核技术支持中心社会招考聘用笔试历年难、易错考点试题含答案解析.docx
- 统编版选择性必修下背诵篇目汇总.doc VIP
- 第十单元 课题2 酸和碱的中和反应(二)酸碱度 pH(学生版)-九年级化学下册同步讲义(人教版).docx VIP
- HPB300热轧光圆钢筋盘条的控轧控冷工艺优化.pdf VIP
- 产品碳足迹核算与评价课件:区域层级碳足迹.pptx VIP
- 产品碳足迹核算与评价课件:供应链碳足迹的概念与政策.pptx VIP
- 产品碳足迹核算与评价课件:数据管理计划的制定.pptx VIP
- 2024年初中化学同步讲义(人教版)第10单元 课题2 酸和碱的中和反应(一)(学生版).pdf VIP
- 产品碳足迹核算与评价课件:分配原则及方法.pptx VIP
原创力文档

文档评论(0)