Описание
Модуль MFRC-522 позволяет считывать и записывать rfid метки, будь то ключи от домофона или карточка проезда в метро.
Характеристики модуля MFRC-522
- Рабочее напряжение: DC 3.3V
- Рабочий ток: 13-26mA
- Ток холостого хода: 10-13mA
- Ток в спящем режиме: <80uA
- Пиковый ток: <30mA
- Рабочая частота: 13.56MHz
- Поддерживаемые типы карт: S50, S70, UltraLight, Pro, Desfire
- Размер модуля: 40mm × 60mm
- Рабочая температура: -20 °C — 80 °C
- Допустимая влажность: 5% — 95%
- Максимальная скорость передачи данных: 10Mbit/s
Комплектность модуля:
- Модуль RFID-RC522 — 1шт
- Чистая карта Standard S50
- Брелок синий S50
- Прямой штыревой равзъем
- Изогнутый штыревой равзъем
Подключение MFRC-522 к Arduino
Схема подключения модуля к Arduino UNO:
Скетч, который будет считывать с RFID-метки UID (уникальный идентификационный номер) и выводить в последовательный порт Arduino будет иметь следующий вид:
// Подключение библиотек #include <SPI.h> #include <MFRC522.h> // константы подключения контактов SS и RST #define RST_PIN 9 #define SS_PIN 10 // Инициализация MFRC522 MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance. void setup() { Serial.begin(9600); // инициализация последовательного порта SPI.begin(); // инициализация SPI mfrc522.PCD_Init(); // инициализация MFRC522 } void loop() { if ( ! mfrc522.PICC_IsNewCardPresent()) return; // чтение карты if ( ! mfrc522.PICC_ReadCardSerial()) return; // показать результат чтения UID и тип метки Serial.print(F("Card UID:")); dump_byte_array(mfrc522.uid.uidByte, mfrc522.uid.size); Serial.println(); Serial.print(F("PICC type: ")); byte piccType = mfrc522.PICC_GetType(mfrc522.uid.sak); Serial.println(mfrc522.PICC_GetTypeName(piccType)); delay(2000); } // Вывод результата чтения данных в HEX-виде void dump_byte_array(byte *buffer, byte bufferSize) { for (byte i = 0; i < bufferSize; i++) { Serial.print(buffer[i] < 0x10 ? " 0" : " "); Serial.print(buffer[i], HEX); } }
При поднесении карты к считывателю в последовательный порт будет выводиться информация о метке: