首页 > 新闻资讯 > 新闻详情

RC522 RFID模块引脚说明及电路原理图

IC先生 IC先生 15185 2023-07-03 16:20:19

RC522是一款适用于Arduino和微控制器的多通信RFID(射频识别技术)模块,由于其NFX半导体微控制器而被称为MFRC-522。该模块允许开发人员将其与任何其它基于SPI、I2C和UART的微控制器连接。

RC522模块工作频率为13.56 MHz,可以充当UID/RFID卡的读写器。由于互感技术,RFID卡通过射频与模块进行短距离通信。在大多数安全和商业产品中,该模块非常有效,因为它可以检测到RFID标签的错误和问题所在。

RC522

引脚配置

在这个模块中,只有两种引脚。因此,第一个是电源,第二个是通信引脚。因此,该设备本身可能有微控制器芯片,但它只能起到RFID的作用。板载微控制器不会使该模块成为独立设备。

引脚配置

电源/复位引脚

PIN 功能描述
引脚1 VCC 电源引脚为VCC,在某些版本的RC522中,该引脚在模块上表示为3V3,而不是VCC。
引脚2 RST 这是模块的复位引脚,因此当设备没有给出任何响应时,它用于在发生错误时重置设备。
引脚3 GND 接地有助于与每个外部设备(例如电源、微控制器或 Arduino)建立公共接地。
SPI和UART通信引脚

PIN 功能描述
引脚4 IRQ 设备可以进入睡眠模式以节省电量。因此,IRQ有助于唤醒它。
引脚5 MISO SCL

TX

该引脚与Arduino/微控制器连接以进行SPI通信。但是,它将数据从模块传输到Arduino。

MISO引脚还可用于除SPI之外的其它功能。它还可以与I2C接口以获取时钟脉冲,并与UART串行接口以从模块传输数据。

引脚6 MOSI MOSI为SPI通信中RFID模块的数据输入引脚
引脚7 SCK SCK引脚有助于在SPI通信中发送时钟脉冲。
引脚8 SS SDA

RX

SS引脚是SPI通信中的芯片使能引脚。因此,当Master(Arduino)必须进行SPI通信时,它会接收到信号。

RFID中的SS引脚可用作I2C通信的第二个引脚 (SDA)。它还在UART通信期间接收数据。

能特

  • RFID RC522使用互感应来激活卡并使用13.56MHz进行数据传输。
  • RFID卡可在模块两侧最大5厘米处使用。
  • 只需3.3V即可激活该器件。
  • 其自动睡眠模式使其模块功耗更少。
  • 该模块具有三种通信方式(UART、SPI、I2C)。因此,它几乎可用于市场上的所有微控制器或设备。
  • RFID卡和读卡器 (RC522) 的数据传输速度高达 10Mb/s。

等效和替代方案包括:PN532、SM130、RFID RDM630模块。

通信协议步骤

RC522是一种13.56MHz射频识别模块,常用于近场通信(NFC)和射频识别(RFID)应用。RC522模块的通信协议主要基于SPI(串行外围接口)协议。以下是RC522模块的主要通信协议步骤:

  1. 初始化:

    • 将RC522模块的复位引脚(RST)拉低一段时间,然后释放。
    • 初始化SPI接口,设置通信参数如时钟频率和数据传输格式。
    • 对RC522进行初始化,配置寄存器和模式设置。
  2. 寻卡:

    • 发送寻卡命令给RC522模块。
    • RC522模块开始搜索附近的卡片,发送射频场以激活卡片。
    • 如果检测到卡片,RC522模块将返回卡片类型和序列号等信息。
  3. 防冲突和选择卡片:

    • 如果存在多张卡片,RC522模块会执行防冲突算法,以确定每张卡片的唯一性。
    • 根据卡片的唯一序列号,选择要与之通信的特定卡片。
  4. 验证和通信:

    • 对选定的卡片执行身份验证操作,通常需要提供密钥和扇区号等参数。
    • 如果验证成功,可以与卡片进行读写操作,读取或写入数据到卡片的存储区域。
  5. 结束通信:

    • 通信结束后,关闭RC522模块或将其置于空闲状态。

需要注意的是,具体的RC522模块通信协议和命令细节可以通过参考RC522模块的技术规格书、数据手册或供应商提供的相关文档来了解。这些文档将提供关于RC522模块通信协议的详细说明和使用指南,以帮助你正确地与RC522模块进行通信和控制。

工作示例原理

RC522的用法既简单又复杂,甚至它的库也太复杂而难以理解。首先,请了解库示例和文档,均适用于SPI,但同一库可用于其它UART和I2C串行通信。

Arduino接口示例

要将RC522与Arduino(该模块最流行的板)一起使用,需要遵循以下电路。所以,以下是电路图:

Arduino接口示例

几乎每个板都有用于SPI通信的特定引脚。在SPI引脚中,只有SS引脚可以更改,其它引脚需要根据设备进行更改。因此,在上面的电路图中,RFID通过其特定的SPI引脚与Arduino UNO连接。

RC522 RFID阅读器编程

设计好电路后,需要以下两个库:

#include <SPI.h> 
#include <MFRC522.h>

MFRC522库有助于对来自RFID模块的传入数据进行解码和编码,SPI有助于建立SPI通信,这两个库相互依赖。初始化库后,最重要的是通过以下命令描述复位和从选择(SS)引脚:

MFRC522 mfrc522(SS_PIN, RST_PIN);

在上面的命令中,使用从机选择更改SS_PIN,使用RFID的复位引脚更改RST_PIN。这样,执行完上述命令后,电路的初始化就完成了。现在开发人员必须描述 SPI 初始化和模块初始化,这需要通过以下两个对象来完成。

SPI.begin(); 
mfrc522.PCD_Init();

直到这两个对象,模块的通信和初始化就完成了,但是上面的部分对于一些开发人员来说有点复杂。RC522库提供了多个命令,但要使用这些命令/对象,每个开发人员都必须了解一些功能。

卡检测代码部分

在RC522中,RFID卡是可读的,但每当模块附近有新卡时,它都是可读的,除非RC522中不存在该卡。那么问题来了,卡片如何存储在模块中呢?每当模块读取卡时,它都会存储自身,除非默认数据为“FFFFFFFFFFFFh”。以下命令将为模块设置默认密钥。

MFRC522::MIFARE_Key key;
for (byte i = 0; i < 6; i++) key.keyByte[i] = 0xFF;

MIFARE_Key 将自动能够访问模块密钥,并且循环将帮助存储默认密钥。

读卡值

只要默认值是根据其出厂设置,卡的检测就简单易行。将值设置为默认值后,以下命令将能够检测新卡:

mfrc522.PICC_IsNewCardPresent() 
mfrc522.PICC_ReadCardSerial()

第一个命令用于卡检测,下一个命令是读取数据。有时,该卡可能存在于模块上,但没有数据。因此,第二个命令ReadCardSerial将有助于检测这一点。之后使用以下命令查看哑数据,以便可以解密:

mfrc522.PICC_DumpDetailsToSerial(&(mfrc522.uid)); 
mfrc522.PICC_DumpToSerial(&(mfrc522.uid));

第一个用于十进制,第二个用于十六进制。它有助于存储和读取数据代码。永远记住,设备一次可以读取和转储/解密单张卡的数据。因此,在转储期间设备将无法读取新卡。

RFID卡读取状态

在RC522中,RFID卡状态是可读的。如果由于某种原因卡的身份验证失败或无法读取,那么程序可以告诉微控制器,这样它就不会被卡住。因此,状态可能看起来不可靠,但在某些情况下,它使开发人员可以运行特定的指令来消除错误。因此,以下命令将有助于初始化状态:

MFRC522::StatusCode status //读取状态
mfrc522.PCD_Authenticate //获取身份验证
mfrc522.MIFARE_Read //读取卡

以上命令只是主要符号,其余命令将取决于数据。

停止RFID卡读取

在RC522中,一旦读卡命令发送到卡,它就永远不会停止,直到发送停止命令。即使要停止加密,也需要从微控制器发送命令。因此,这两个函数的停止命令将为:

mfrc522.PICC_HaltA(); // 停止读取
mfrc522.PCD_StopCrypto1(); // 停止PCD加密

以上命令只是RC522的简单读取命令,实际上RC522可以完成许多其它操作,具体可以查看其PDF数据文档。

主要应用

  • RFID的大部分用途是作为安全设备。
  • 在一些公司,RC522设备与购物物品一起使用。
  • 一些机场还开始使用RFID来识别和跟踪行李和其他物品。
  • 考勤或停车系统还使用RFID来保证系统安全。

封装设计参数

封装设计参数

MFRC522和RC522的区别

MFRC522和RC522都是13.56MHz射频识别(RFID)模块,常用于近场通信(NFC)和RFID应用,它们之间的主要区别在于厂商和一些细节功能。

  1. 厂商:MFRC522是NXP(前身为Philips)公司的产品,而RC522是深圳某厂家生产的模块,通常是基于MFRC522芯片的复刻版本。

  2. 兼容性:MFRC522是按照ISO/IEC 14443A标准设计的,并支持MIFARE Classic 1K、MIFARE Classic 4K和MIFARE Ultralight等类型的卡片。RC522通常也是兼容ISO/IEC 14443A标准的,并具有类似的兼容性。

  3. 芯片版本:MFRC522芯片有不同的版本,例如MFRC522-01、MFRC522-02等,它们可能在性能、功耗或功能方面有细微差异。而RC522是一个通用的名称,具体指的是哪个版本的MFRC522芯片并不明确。

  4. 供应链和技术支持:MFRC522作为NXP公司的产品,在供应链和技术支持方面通常更可靠。而RC522模块的供应和技术支持可能相对不稳定,因为它是由淘宝等平台上的厂家生产的。

所以,MFRC522是一款经过严格验证和认证的射频识别模块,具有较高的可靠性和兼容性,由NXP公司提供技术支持。而RC522通常是基于MFRC522芯片的复刻模块,供应链和技术支持相对不稳定。如果你对模块的性能和可靠性有更高的要求,建议选择MFRC522模块。

总结

RC522是一款13.56MHz射频识别(RFID)模块,常用于近场通信(NFC)和RFID应用。它由射频前端模块和集成了RFID读写器和接口电路的控制单元组成。RC522模块支持ISO/IEC 14443A/MIFARE卡片的读写操作,并提供了简单的SPI接口,方便与微控制器或其他外部设备进行通信。它具有以下应用功能:

以下是RC522模块的主要特点和功能:

  • 支持13.56MHz射频通信:工作在13.56MHz频率范围内,能够与符合ISO/IEC 14443A标准的射频卡片进行通信。
  • RFID读写功能:能够读取和写入与之兼容的RFID标签或卡片上的数据。它支持MIFARE Classic 1K、MIFARE Classic 4K和MIFARE Ultralight等类型的卡片。
  • 内置射频场发生器:内置射频场发生器,能够产生射频场以激活附近的射频卡片。
  • SPI接口:使用SPI(串行外围接口)协议与外部设备进行通信,包括读写数据、发送命令和接收响应等。
  • 高度集成化:内部集成了RFID读写器、射频前端模块和接口电路,简化了外部电路设计和布局。
  • 低功耗设计:R具有低功耗特性,可以在待机模式下降低功耗消耗。

RC522模块广泛应用于门禁系统、智能卡读写器、支付终端、智能家居等领域。它提供了一种方便、快速和安全的方式来实现RFID标签或卡片的读写操作,并与其他设备进行数据交互。使用RC522模块可以实现身份验证、数据存储、访问控制和物品跟踪等功能,为各种应用提供了一种可靠的RFID解决方案。

推荐商品
TMJ316BB7106KLHT
库存:0
¥ 0.55088
RT0201BRD0749R9L
库存:0
¥ 0.04238
0805B224K500NT
库存:0
¥ 0.04875
0805B473K500CT
库存:8000
¥ 0.0146
CC0603JRNPO9BN102
库存:0
¥ 0.01625
版权声明: 部分文章信息来源于网络以及网友投稿,本网站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性,如本站文章和转稿涉及版权等问题,请作者及时联系本站,我们会尽快处理。
标题:

RC522 RFID模块引脚说明及电路原理图


网址: https://www.mrchip.cn/newsDetail/3794
文章标签: 芯片
0 购物车
0 消息