View Categories

Считыватель RFID RC522

RFID – технология бесконтактного чтения и записи меток. Помимо комплектных меток, данный модуль читает и некоторые другие бесконтактные карты (банковские, проездные, пропускные и т.д.), их тоже можно использовать в своих проектах для организации доступа (замок, система хранения как в спортзалах, система охраны) или создания игровых устройств.

В наборе GyverKIT START IOT EXTRA
RFID набор

Подключение к Arduino #

Модуль подключается по шине SPI, а также требует два дополнительных цифровых пина на управление SDA (выполняет роль CS) и RST:

  • SDA – любой пин
  • SCK – (SCLK) D13
  • MOSI – (MOSI) D11
  • MISO – (MISO) D12
  • GND – GND
  • RST – любой пин
  • 3.3V – 3V3

Библиотеки #

Для работы с этим модулем используется библиотека MFRC522, можно установить/обновить из встроенного менеджера библиотек Arduino по названию MFRC522. Краткая документация находится по ссылке выше, базовые примеры есть в самой библиотеке.

MFRC522 #

Библиотека довольно сложна в использовании, особенно для чтения и записи хранящейся на метке информации. Но все метки имеют свой уникальный ID – идентификационный номер (4-10 байт), у большинства меток он жёстко задан и его нельзя изменить, что и можно использовать для идентификации. Простой пример чтения ID метки как 4-байтного числа:

#include <MFRC522.h>
MFRC522 rfid(10, 9); // SDA, RST

void setup() {
  Serial.begin(115200);
  SPI.begin();      // запуск шины
  rfid.PCD_Init();  // инициализация модуля
}

void loop() {
  // если поднесена метка
  if (rfid.PICC_IsNewCardPresent() && rfid.PICC_ReadCardSerial()) {
    // запишем метку в 4 байта
    uint32_t ID;
    for (byte i = 0; i < 4; i++) {
      ID <<= 8;
      ID |= rfid.uid.uidByte[i];
    }

    // выведем
    Serial.println(ID, HEX);
    delay(500);
  }
}

В таком виде ID метки удобно хранить и сравнивать, но большинство карт имеют ID большего размера (до 10 байт), для работы с полной длиной нужно оперировать массивом rfid.uid.uidByte. Реальный размер прочитанного ID кстати можно узнать из rfid.uid.size.

Полезные страницы #

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Прокрутить вверх