Считыватель карт RFID MFRC522

Шина SPI: общие SCK, MOSI и MISO плюс личные SS (D10) и RST (D9). Питание только 3,3 В. Карты подносят кнопкой в инспекторе модуля.

Программа

// Считыватель карт RFID MFRC522 по шине SPI.
//
// Проводов много, но делятся они на две группы:
//   общие для всей шины — SCK (D13), MOSI (D11), MISO (D12);
//   личные для этого модуля — SS (D10) и RST (D9), их номера вы задаёте сами.
// Питание ТОЛЬКО 3,3 В: от +5 В настоящий модуль выходит из строя.
//
// На схеме в инспекторе считывателя лежит список карт и кнопка «поднести».
#include <SPI.h>
#include <MFRC522.h>

MFRC522 mfrc522(10, 9);                // SS, RST

void setup() {
  Serial.begin(9600);
  SPI.begin();
  mfrc522.PCD_Init();
  Serial.println("поднесите карту");
}

void loop() {
  if (!mfrc522.PICC_IsNewCardPresent()) return;   // карты нет — уходим сразу
  if (!mfrc522.PICC_ReadCardSerial()) return;     // не прочиталась — тоже

  Serial.print("UID:");
  for (byte i = 0; i < mfrc522.uid.size; i++) {
    Serial.print(" ");
    Serial.print(mfrc522.uid.uidByte[i]);
  }
  Serial.println();

  mfrc522.PICC_HaltA();                // отпускаем карту, иначе она «залипнет»
}

Схема примера появится, когда загрузится страница: её собирает и считает движок цепей.

← Ко всем примерам