以下是使用ESP32连接RC522 RFID读卡模块的Arduino基础示例代码:
1. 硬件连接
| RC522引脚 | ESP32引脚 |
|---|---|
| SDA | GPIO5 |
| SCK | GPIO18 |
| MOSI | GPIO23 |
| MISO | GPIO19 |
| IRQ | 不接 |
| GND | GND |
| RST | GPIO22 |
| 3.3V | 3.3V |
2. 安装库
在Arduino IDE中安装库:
- 顶部菜单 → 工具 → 管理库
- 搜索安装 MFRC522 by GithubCommunity
3. 示例代码
#include <SPI.h>
#include <MFRC522.h>
#define RST_PIN 22 // RC522复位引脚
#define SS_PIN 5 // SPI片选引脚
MFRC522 mfrc522(SS_PIN, RST_PIN); // 创建实例
void setup() {
Serial.begin(115200);
SPI.begin(); // 初始化SPI总线
mfrc522.PCD_Init(); // 初始化读卡器
delay(4);
Serial.println("等待射频卡接近...");
}
void loop() {
// 检测是否有新卡片
if (!mfrc522.PICC_IsNewCardPresent()) {
return;
}
// 选择一张卡片
if (!mfrc522.PICC_ReadCardSerial()) {
return;
}
// 显示卡片UID
Serial.print("UID:");
for (byte i = 0; i < mfrc522.uid.size; i++) {
Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
Serial.print(mfrc522.uid.uidByte[i], HEX);
}
Serial.println();
// 停止读卡
mfrc522.PICC_HaltA();
}
4. 使用说明
- 上传代码后打开串口监视器(波特率115200)
- 将RFID卡片或钥匙扣靠近读卡器
- 串口会输出检测到的卡片UID(十六进制格式)
扩展功能建议
- 添加白名单验证功能
- 将读取的UID与存储的授权列表对比
- 连接继电器实现门禁控制
- 使用NFC标签数据读写功能
如果遇到读取问题,请检查:
- 接线是否正确(尤其是SPI引脚)
- 是否安装了正确版本的库
- 读卡器与卡片的距离是否在5cm以内
完整项目示例可参考Github:https://github.com/miguelbalboa/rfid
基于Arduino Uno开发板与RFID-RC522模块的RFID读卡器设计
与RFID-RC522模块一起使用。 RFID-RC522模块是RFID读卡器,可以读取近距离的RFID标签。为了读取RFID标签,读取器和标签必须具有相同的频率。 RFID-RC522模块仅能读取13.56
2021-01-13 16:05:21
esp32和arduino的区别,esp32能否替代arduino
很多创客爱好者甚至有些技术工程师在理解esp32和arduino的时候总是问一句这两块板子哪个更好用?他们可能潜意识中就觉得arduino和esp32是竞品的关系,但实际是这样吗?今天我们就深入
2021-06-24 17:11:02
ESP32驱动MFRC522 RFID模块读写IC卡数据
本文将介绍ESP32开发板驱动MFRC522 RFID模块,读取RFID卡原始数据、获取RFID卡的UID,并将个人数据添加到RFID卡中。
2025-05-28 15:52:45
通过SPI协议在ESP32和RC522 rfid读卡器之间建立连接失败了的原因?
大家好,我正在尝试通过 SPI 协议在 ESP32 和 RC522 rfid 读卡器之间建立连接,但不幸的是我失败了。 这是我的代码,请告诉我哪里出错了? 我尝试将值 0x25 写入寄存器 0x
kingnet_520890
2023-04-26 06:38:46
LoRa模块SX1278与ESP32结合使用的方法-上
在本篇文章中,我们将学习如何将LoRa模块SX1278与ESP32结合使用。在这里,我们将使用两个LoRa模块-一个连接到ESP32,另一个连接到Arduino开发板。ESP32 LoRa设置将从
2023-01-21 11:30:00
rc522射频模块的工作原理
RC522射频模块是一种基于射频识别技术的读卡器模块,广泛应用于门禁系统、智能家居、智能卡类应用等领域。它具备快速、稳定、安全的特点,能够读取和写入射频卡上的信息。下面将详细介绍RC522射频模块
2023-12-28 16:27:53
如何在Arduino IDE中安装ESP32开发环境
要在Arduino IDE中使用ESP32开发板,您需要先安装相应的开发环境。以下是在Arduino IDE中安装ESP32开发环境的步骤。
2023-07-13 16:48:45
用Arduino代码对掌控板(ESP32)编程的教程
是基于 ESP32 芯片的,所以我们也可以用 Arduino 软件对其编程。所以,有时间的话,我准备给大家分享一系列用 Arduino 代码对掌控板(ESP32)编程的教程:用 Arduino 玩转 ESP32 与掌控板系列。用 Arduino 玩转 ESP32 与掌控板系列历史文章目录:ESP32 概述与 Ar.
京五环以外
2021-07-22 06:26:46
斑梨电子ESP32-C3开发板适用于Arduino Micropython 0.42寸LCD显示屏WiFi蓝牙低功耗
2023-03-27 14:12:55
如何在NodeMCU的LUA中实现Arduino RC522库?
为了好玩,我在 NodeMCU 的 LUA 中实现了 Arduino RC522 库。 Herllo Ben,我在 nodemcu v3 上遇到了一些关于该库的问题。 您可以查看 GitHub
我是卖报的小男孩
2023-04-27 07:26:00
如何使用Arduino IDE对ESP32进行无线编程
在本教程中,我们将使用Arduino IDE 中的 OTA Web Updater对 ESP32 进行无线 (OTA) 编程。
2022-08-11 15:42:31
SI522与恩智浦RC522读卡芯片区别开发资料
16mASi522 主要优势点:1. 直接PIN2PIN 兼容RC522,与FM17550/FM17520/RM522/ZS3801/WS18502. 完全替换RC522,接收功耗下降10mA,相比新增了自动寻卡
动能世纪12123
2022-03-11 13:49:43
基于Arduino IDE进行的ESP32编程方案
ESP模块因其Wi-Fi功能(如ESP8266、ESP-12E等)而广受欢迎。这些都是具有Wi-Fi功能的强大微控制器模块。还有一个ESP模块,它比以前的ESP模块更强大,更通用 - 其名
2021-01-09 11:25:14