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
- RC522 Modul RFID
- Arduino Board (de exemplu, Uno, Mega, Nano)
- Etichete sau cărți RFID (13,56 MHz)
- Tablă de pâine și jumper
- 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:
- Deschideți IDE Arduino.
- Du -te la Schiţa > Include biblioteca > Gestionați bibliotecile.
- 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
- Conectați Arduino la computer prin USB.
- Deschideți IDE Arduino și selectați corect Bord şi Port sub Instrumente meniu.
- Încărcați codul la Arduino făcând clic pe Încărcați.
- Deschideți monitorul în serie (Instrumente > Monitor în serie) și setați rata de transfer la
9600
. - 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
- Sisteme de control de acces
- Sisteme de plată fără contact
- Urmărirea și gestionarea stocurilor
- 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!