Подключение RFID RC522 к Arduino Nano
Простое подключение RFID RC522
Модуль RFID RC522 – это популярное решение для создания систем идентификации на Arduino. Он работает на частоте 13.56 МГц и подключается через SPI-интерфейс. В этой статье мы подробно разберём, как подключить RC522 к различным платам Arduino (Nano, Uno, Mega, Pro Mini) и настроить его для чтения меток. Сборка займёт 20–30 минут без пайки!
Скачать datasheet RFID RC522
Используйте детали для проекта
Для работы с RFID RC522 подготовьте:
- Плата Arduino (Nano, Uno, Mega или Pro Mini)
- Модуль RFID RC522
- RFID-метки (карта и брелок из комплекта)
- Провода джамперы
- Макетная плата (опционально)
Характеристики RFID RC522
- Микросхема: MFRC522 (NXP)
- Напряжение питания: 3.3 В
- Потребляемый ток: 13–26 мА
- Рабочая частота: 13.56 МГц
- Дальность считывания: 0–60 мм
- Интерфейс: SPI (скорость до 10 Мбит/с)
- Размеры: 40×60 мм
- Поддерживаемые карты: MIFARE S50, S70, UltraLight, Pro, DESfire
Назначение выводов RC522
- VCC: Питание 3.3 В
- GND: Земля
- SDA: Выбор ведомого (SPI)
- SCK: Сигнал синхронизации (SPI)
- MOSI: Передача от master к slave (SPI)
- MISO: Передача от slave к master (SPI)
- RST: Сброс (LOW – режим сна, HIGH – активен)
- IRQ: Прерывание (не используется в базовых примерах)
Важно: RC522 работает от 3.3 В. Подключение к 5 В может повредить модуль!
Подключение к Arduino Nano и Uno
Подключение для Nano и Uno идентично:
- RST: D9
- SDA: D10
- MOSI: D11
- MISO: D12
- SCK: D13
- VCC: 3.3V
- GND: GND
Подключение к Arduino Mega
Для Arduino Mega используйте следующие пины:
- RST: D5
- SDA: D53
- MOSI: D51
- MISO: D50
- SCK: D52
- VCC: 3.3V
- GND: GND
Подключение к Arduino Pro Mini
Для Pro Mini подключение аналогично Nano, но проверьте пины SPI на вашей версии платы (зависят от модели):
- RST: Любой цифровой пин (например, D9)
- SDA: D10
- MOSI: D11
- MISO: D12
- SCK: D13
- VCC: 3.3V
- GND: GND
Пример кода: Считывание RFID-метки
Скетч для чтения UID метки с использованием библиотеки MFRC522:
#include <SPI.h>
#include <MFRC522.h>
#define RST_PIN 9
#define SS_PIN 10
MFRC522 rfid(SS_PIN, RST_PIN);
void setup() {
Serial.begin(9600);
SPI.begin();
rfid.PCD_Init();
Serial.println("Поднесите RFID-метку...");
}
void loop() {
if (rfid.PICC_IsNewCardPresent() && rfid.PICC_ReadCardSerial()) {
String uid = "";
for (byte i = 0; i < rfid.uid.size; i++) {
uid += String(rfid.uid.uidByte[i] < 0x10 ? "0" : "");
uid += String(rfid.uid.uidByte[i], HEX);
}
Serial.print("UID метки: ");
Serial.println(uid);
rfid.PICC_HaltA();
}
}
ожидает поднесения RFID-метки.
считывает UID метки побайтно.
выводит UID в шестнадцатеричном виде в Serial Monitor.
Как работает код
SPI.begin: Инициализирует SPI-интерфейс.
rfid.PCD_Init: Запускает модуль RC522.
rfid.PICC_IsNewCardPresent: Проверяет наличие метки.
rfid.uid: Считывает UID метки.
Скачайте библиотеку MFRC522, подключите модуль и откройте Serial Monitor, чтобы увидеть UID метки.
5 примеров использования RFID RC522
Модуль RC522 подходит для множества задач:
- Электронный замок: Открывайте двери с помощью RFID-карты.
- Система доступа: Проверяйте «свой/чужой» для входа.
- Учёт посещаемости: Регистрируйте сотрудников или студентов.
- Умный дом: Управляйте устройствами через метки.
- Логистика: Отслеживайте товары с RFID-метками.
Дополнительные видеоуроки
Посмотрите наши видео для более наглядного изучения RFID RC522:
FAQ — Часто задаваемые вопросы о RFID RC522
Можно ли подключить RFID RC522 к Arduino 5V?
Модуль RC522 работает от 3.3 В. Подключение к 5 В напрямую может повредить микросхему. Для использования с Arduino 5V применяйте преобразователь уровня или убедитесь, что пины Arduino безопасно выводят 3.3 В.
Какие платы Arduino поддерживаются?
RFID RC522 совместим с Arduino Nano, Uno, Mega и Pro Mini. Подключение различается только по номерам пинов SPI и RST/SS, которые указаны в инструкции.
Что такое SPI и зачем он нужен для RC522?
SPI — это интерфейс последовательной передачи данных. Он позволяет Arduino быстро обмениваться информацией с RC522. Пины MOSI, MISO, SCK и SS/RST используются для синхронизации и передачи данных между платой и модулем.
Как считать UID RFID-метки?
Используйте библиотеку MFRC522. После инициализации модуля вызовите функции PICC_IsNewCardPresent() и PICC_ReadCardSerial(). UID метки доступен через массив rfid.uid.uidByte. Скетч выводит его в Serial Monitor.
Какие типы карт поддерживает RC522?
Модуль работает с картами MIFARE S50, S70, UltraLight, Pro и DESfire. В комплекте обычно поставляется карта и брелок. Любая поддерживаемая карта может быть считана и использована в проектах.
Можно ли использовать RC522 для электронного замка?
Да, RC522 идеально подходит для создания электронного замка или системы доступа. С помощью UID меток можно открывать двери, проверять права доступа и управлять различными устройствами в умном доме.
Заключение: RFID RC522 для ваших проектов
Модуль RFID RC522 – это простое и эффективное решение для создания систем идентификации и управления доступом на Arduino. Его подключение к Nano, Uno, Mega или Pro Mini не требует сложных навыков, а библиотека MFRC522 упрощает работу. Начните создавать свои проекты с RC522, используя примеры и видеоуроки на нашем сайте.