该函数库网上找来的,经过本人整理测试,是可以用的,下载地址见文章结尾!
下面我就介绍下该库的使用,有兴趣研究射频识别的朋友,可以参考下,希望对你们有帮助~
RFID::Rfid(int chipSelectPin, int NRSTPD)
参数:chipSelectPin -- CS片选引脚,连接到Arduino D10
NRSTPD -- NRSTPD复位引脚,连接到Arduino D5
Rfid: MFRC522Request(unsigned char reqMode, unsigned char *TagType)
参数:reqMode -- 寻卡方式
PICC_REQIDL 0x26 //搜寻天线区域内未进入休眠状态的卡片
PICC_REQALL 0x52 //搜寻天线区域内所有卡片
TagType -- 返回卡片类型
0x4400 = Mifare_UltraLight
0x0400 = Mifare_One(S50)
0x0200 = Mifare_One(S70)
0x0800 = Mifare_Pro(X)
0x4403 = Mifare_DESFire
成功返回MI_OK
Rfid: anticoll(unsigned char *serNum)
参数:serNum -- 4字节卡序列号,第5字节为校验字节
返回值:成功返回MI_OK
Rfid: init()
Rfid: reset()
Rfid: auth(unsigned char authMode, unsigned char BlockAddr, unsigned char *Sectorkey, unsigned char *serNum)
参数:authMode -- 密码验证模式
PICC_AUTHENT1A 0x60 验证A密钥BlockAddr -- 块地址
Sectorkey -- 扇区密码
serNum -- 4字节卡片序列号,
返回值:成功返回MI_OK
Rfid: read(unsigned char blockAddr, unsigned char *recvData)
参数:blockAddr -- 块地址
recvData -- 读出的块数据
返回值:成功返回MI_OK
Rfid: write(unsigned char blockAddr, unsigned char *writeData)
参数:blockAddr -- 块地址
writeData -- 向块写16字节数据
返回值:成功返回MI_OK
Rfid: selectTag(unsigned char *serNum)
参数:
serNum--4字节卡序列号
返回值:成功返回卡容量
Rfid: halt()
欢迎光临 YFROBOT创客社区 (http://yfrobot.com.cn/) | Powered by Discuz! X3.1 |