52梯控论坛
标题: RC522 的读卡器,在 Arduino 上读取和写入不同类型的射频识别 (RFID) 卡 [打印本页]
作者: admin 时间: 2026-6-13 17:22
标题: RC522 的读卡器,在 Arduino 上读取和写入不同类型的射频识别 (RFID) 卡
MFRC522




适用于 MFRC522 和其他基于 RFID RC522 的模块的 Arduino 库。
使用基于 RC522 的读卡器,通过串行外设接口 (SPI) 连接,在 Arduino 上读取和写入不同类型的射频识别 (RFID) 卡。
发展
业主 miguelbalboa 的开发项目已经结束。
功能状态:完全冻结;无任何功能或 API 更改。
代码状态:部分冻结;仅修复/修正拼写错误或更新文档;不扩展其他开发板;不添加新示例。
维护状态:偶尔。
为什么停止进一步开发? 这个库历史悠久,被许多项目使用。这些项目通常没有记录它们使用的版本。提交更改可能会破坏这些旧项目,导致糟糕的用户体验(尤其是对于新手而言)和大量的技术支持请求。因此,该库目前处于冻结状态。您仍然可以提交拼写错误修正、文档注释或错误修复。
购买前
请注意,有很多卖家(例如 eBay、速卖通等)出售 MFRC522 开发板。这些开发板的质量参差不齐。有些开发板使用了错误/劣质的电容,或者使用了假冒/有缺陷的 MFRC522 芯片。
请考虑从不同的供应商处购买多台设备。这样可以提高获得可用设备的几率。
如果您拿到一块有问题的电路板,并且能够告诉我们如何检测这些电路板(丝印、芯片描述等),请分享您的知识。
哪些方法有效,哪些无效?
- 作品
- 使用 MIFARE Classic(1k、4k、Mini)进行通信(Crypto1)。
- 与 MIFARE Classic 兼容的 PICC 进行通信(Crypto1)。
- MFRC522固件自检。
- 设置 UID,写入扇区 0,修复中国 UID 可更改的 MIFARE 卡。
- 管理SPI片选引脚(又称SS、SDA)
- 部分有效
- 与MIFARE Ultralight通信。
- 其他PICC(Ntag216)。
- 超过 2 个模块,需要多路复用器#191。
- 不起作用
- 软件不支持 MIFARE DESFire、MIFARE DESFire EV1/EV2。
- 软件不支持与 3DES 或 AES 进行通信。
- 点对点(ISO/IEC 18092),硬件不支持。
- 与智能手机通信,但硬件不支持。
- 硬件不支持卡模拟。
- 使用IRQ引脚。但这里有一个概念验证示例。
- 对于 Intel Galileo(第二代),请参阅#310,软件不支持。
- 功率降低模式#269,软件不支持。
- 使用 I2C 而不是 SPI #240,软件不支持。
- UART 而非 SPI #281,软件不支持。
- 还需要更多吗?
- 如果是软件:编写代码并提交 pull request。
- 如果是硬件:购买更贵的 PN532(支持 NFC 等多种功能,但价格约为 15 美元,并且与此库不兼容)。
兼容的集成开发环境
该库适用于 Arduino IDE 1.6,不支持旧版本,旧版本会导致编译器错误。支持内置库管理器。
如果你使用自己的编译器,则必须启用c++11-support。
兼容板
!!!仅限高级用户!!!
如果您使用 Arduino IDE 的开发板插件,此库与 Teensy 和 ESP8266 兼容。并非所有示例都适用于所有开发板。您还需要更改引脚。请参阅引脚布局。 一些用户为其他主板制作了一些补丁/建议/移植版本:
请注意,该库的主要目标/支持平台仍然是 Arduino。
支持/问题
代码风格
请使用stdint.hfixed integers中的stdint 头文件。为什么?因为该库兼容采用不同架构(16 位和 32 位)的各种开发板。未固定大小的变量在不同的环境中大小不同,可能会导致不可预测的行为。int 引脚布局
下表显示了常用的引脚布局:
PCDArduino
MFRC522Uno / 101兆Nano v3莱昂纳多/微型专业麦克风云[4]到期的
信号别针别针别针别针别针别针别针别针
RST/重置RST9 [1]5 [1]D9复位/ICSP-5RST引脚922 [1]
SPI SSSDA [3]10 [2]53 [2]D101010引脚1023 [2]
SPI MOSI莫西11 / ICSP-451D11ICSP-416ICSP4SPI-4
SPI MISO味噌12 / ICSP-150D12ICSP-114ICSP1SPI-1
SPI SCK斯克13 / ICSP-352D13ICSP-315ICSP3SPI-3 ESP8266Teensy8F328P-U
Wemos D1 mini2.0++ 2.03.1阿尔法
信号别针别针别针别针引脚[5]
RST/重置D3749D9# [1]
SPI SSD802010D10# [2]
SPI MOSID722211MOSI / D11#
SPI MISOD632312MISO / D12#
SPI SCKD512113斯克| [1] | (1、2、3、4)可配置,通常在*olor=rgb(9, 105, 218)]/程序中定义为 RST_PIN 。 |
| [2] | (1、2、3、4)可配置,通常在*olor=rgb(9, 105, 218)]/程序中定义为 SS_PIN 。 |
[table=98%]
[tr][td][3][/td][td]在某些/较
| 欢迎光临 52梯控论坛 (https://52tikong.com/) |
Powered by Discuz! X3.4 |