Cum se utilizează modulul RC522 RFID cu Arduino

How to Use the RC522 RFID Module with Arduino

RC522 este un modul popular RFID utilizat pentru comunicarea și identificarea fără fir. Este utilizat pe scară largă în sistemele de control de acces, sistemele de plată fără contact și urmărirea stocurilor. Acest tutorial vă va ghida prin interfațarea modulului RC522 RFID cu Arduino pentru a citi etichete și carduri RFID.


Ce vei avea nevoie

  1. RC522 Modul RFID
  2. Arduino Board (de exemplu, Uno, Mega, Nano)
  3. Etichete sau cărți RFID (13,56 MHz)
  4. Tablă de pâine și jumper
  5. Un computer cu IDE Arduino instalat

Pasul 1: Înțelegerea modulului RC522 RFID

Modulul RC522 RFID funcționează la 13,56 MHz și comunică cu un microcontroler folosind protocolul SPI. Este livrat cu o antenă RFID și acceptă atât operațiuni de citire, cât și de scriere.

RC522 PINOUT

Ac Funcţie
SDA SPI SS (selecție sclavă)
SCK Ceas SPI
MOSI Intrare de date SPI
Miso Ieșire de date SPI
Irq Cerere de întrerupere (opțional)
GND Sol
RST Resetează
3.3V Alimentare electrică

Nota: RC522 funcționează pe logica 3.3V; Asigurați -vă că conexiunile dvs. se potrivesc cu cerințele de tensiune ale tabloului.


Pasul 2: Cablarea RC522 către Arduino

Iată cum să conectați modulul RC522 RFID la un Arduino Uno:

Pin RC522 Pinul Arduino
SDA Pinul 10
SCK Pinul 13
MOSI Pinul 11
Miso Pinul 12
Irq Nu este conectat
GND GND
RST Pinul 9
3.3V 3.3V

Nota: Pentru alte plăci Arduino, asigurați -vă că mapați corect pinii SPI.


Pasul 3: Instalați biblioteca necesară

Pentru a lucra cu modulul RC522, instalați biblioteca „MFRC522”.

Pași pentru instalare:

  1. Deschideți IDE Arduino.
  2. Du -te la Schiţa > Include biblioteca > Gestionați bibliotecile.
  3. Căutați „MFRC522” și faceți clic pe Instala.

Pasul 4: Încărcați codul

Iată un exemplu de schiță pentru a citi datele de etichetă RFID:

#include <SPI.h>
#include <MFRC522.h>

#define RST_PIN 9  // Reset pin
#define SS_PIN 10  // Slave select pin

MFRC522 rfid(SS_PIN, RST_PIN); // Create an instance of the MFRC522 library

void setup() {
  Serial.begin(9600);
  while (!Serial);

  SPI.begin();      // Initialize SPI bus
  rfid.PCD_Init();  // Initialize RFID reader

  Serial.println("RC522 RFID Reader Initialized");
}

void loop() {
  // Check for a new card
  if (!rfid.PICC_IsNewCardPresent() || !rfid.PICC_ReadCardSerial()) {
    return;
  }

  Serial.println("Card detected:");

  // Print the UID of the card
  Serial.print("UID: ");
  for (byte i = 0; i < rfid.uid.size; i++) {
    Serial.print(rfid.uid.uidByte[i] < 0x10 ? " 0" : " ");
    Serial.print(rfid.uid.uidByte[i], HEX);
  }
  Serial.println();

  rfid.PICC_HaltA(); // Halt the card
}

Pasul 5: Testați configurarea

  1. Conectați Arduino la computer prin USB.
  2. Deschideți IDE Arduino și selectați corect Bord şi Port sub Instrumente meniu.
  3. Încărcați codul la Arduino făcând clic pe Încărcați.
  4. Deschideți monitorul în serie (Instrumente > Monitor în serie) și setați rata de transfer la 9600.
  5. Puneți o etichetă RFID sau o carte în apropierea modulului. UID -ul cardului va fi afișat în monitorul serial.

Opțional: scrierea datelor către o etichetă RFID

Pentru a scrie date într -o etichetă RFID, puteți utiliza PICC_Write Funcție în biblioteca MFRC522. Consultați exemple de bibliotecă pentru operațiuni de scriere detaliate.


Aplicațiile RC522

  1. Sisteme de control de acces
  2. Sisteme de plată fără contact
  3. Urmărirea și gestionarea stocurilor
  4. Sisteme inteligente de prezență

Depanare

  • Fără răspuns din modul: Verificați cablarea și asigurați -vă că conexiunile SPI sunt corecte.
  • UID nu este detectat: Asigurați -vă că eticheta se află în intervalul antenei RFID.
  • Erori de bibliotecă: Verificați că biblioteca MFRC522 este instalată corect.

Concluzie

Ați interfațat cu succes modulul RC522 RFID cu Arduino, permițându -vă să citiți datele de etichete RFID. Acest modul versatil este perfect pentru proiectele care necesită comunicare și identificare wireless. Experimentați cu caracteristici suplimentare, cum ar fi scrierea de date pe etichete sau integrarea lor în sisteme mai mari pentru aplicații avansate!

Lasă un comentariu

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.