Hur man använder RC522 RFID -modulen med Arduino

How to Use the RC522 RFID Module with Arduino

RC522 är en populär RFID -modul som används för trådlös kommunikation och identifiering. Det används i stor utsträckning i åtkomstkontrollsystem, kontaktlösa betalningssystem och lagerspårning. Denna handledning kommer att leda dig genom att gränssnitt RC522 RFID -modulen med Arduino för att läsa RFID -taggar och kort.


Vad du behöver

  1. RC522 RFID -modul
  2. Arduino Board (t.ex. Uno, Mega, Nano)
  3. RFID -taggar eller kort (13,56 MHz)
  4. Breadboard och jumpertrådar
  5. En dator med Arduino Ide installerad

Steg 1: Förstå RC522 RFID -modulen

RC522 RFID -modulen fungerar vid 13,56 MHz och kommunicerar med en mikrokontroller med SPI -protokollet. Den levereras med en RFID -antenn och stöder både läs- och skrivoperationer.

RC522 pinout

Stift Fungera
SDA SPI SS (Slave Select)
Säck Spi -klocka
Mosi SPI -datainmatning
Miso SPI Data Output
Irq Avbrottsförfrågan (valfritt)
Gard Jord
Först Återställa
3.3V Strömförsörjning

Notera: RC522 fungerar på 3.3V -logik; Se till att dina anslutningar matchar ditt brädes spänningskrav.


Steg 2: Kopplar RC522 till Arduino

Så här ansluter du RC522 RFID -modulen till en Arduino Uno:

RC522 -stift Arduinosnål
SDA Stift 10
Säck Stift 13
Mosi Stift 11
Miso Stift 12
Irq Inte ansluten
Gard Gard
Först Stift 9
3.3V 3.3V

Notera: För andra Arduino -kort, se till att du kartlägger SPI -stiften korrekt.


Steg 3: Installera det nödvändiga biblioteket

För att arbeta med RC522 -modulen, installera biblioteket "MFRC522".

Steg för att installera:

  1. Öppna Arduino IDE.
  2. Gå till Skiss > Inkludera bibliotek > Hantera bibliotek.
  3. Sök efter "MFRC522" och klicka Installera.

Steg 4: Ladda upp koden

Här är ett exempel skiss för att läsa RFID -taggdata:

#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
}

Steg 5: Testa installationen

  1. Anslut Arduino till din dator via USB.
  2. Öppna Arduino IDE och välj rätt Styrelse och Hamn under Verktyg meny.
  3. Ladda upp koden till Arduino genom att klicka Ladda upp.
  4. Öppna seriell monitor (Verktyg > Serieövervakare) och ställ in baudhastigheten till 9600.
  5. Placera en RFID -tagg eller kort nära modulen. Kortets UID visas i seriell monitor.

Valfritt: Skriva data till en RFID -tagg

För att skriva data till en RFID -tagg kan du använda PICC_Write Funktion i MFRC522 -biblioteket. Se bibliotekets exempel för detaljerade skrivoperationer.


Applikationer av RC522

  1. Åtkomstkontrollsystem
  2. Kontaktlösa betalningssystem
  3. Lagerspårning och hantering
  4. Smart närvarosystem

Felsökning

  • Inget svar från modulen: Kontrollera ledningarna och se till att SPI -anslutningarna är korrekta.
  • Uid inte upptäckt: Se till att taggen ligger inom RFID -antennens intervall.
  • Biblioteksfel: Kontrollera att MFRC522 -biblioteket är korrekt installerat.

Slutsats

Du har framgångsrikt interfogat RC522 RFID -modulen med Arduino, så att du kan läsa RFID -taggdata. Denna mångsidiga modul är perfekt för projekt som kräver trådlös kommunikation och identifiering. Experimentera med ytterligare funktioner som att skriva data till taggar eller integrera dem i större system för avancerade applikationer!

Lämna en kommentar

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.