Dansk
Tid: 2026-08-26
Gennemse: 2,427
RC522
![]()
RC522
NXP
RC522 NXP
In Stock: 11386 pcs
RFID modulet er en 13,56 MHz kontaktløs læser og skriver, der ofte bruges med Arduino, ESP32 og andre mikrokontrollere. Navnet RC522 henviser normalt til et breakout-board bygget omkring NXP's MFRC522 læser IC. Antennejustering, interface-konfiguration og komponentkvalitet kan variere mellem modulproducenter. Det skaber et radiobølgefelt, der strømforsyner et kompatibelt passivt kort eller tag, læser taggets UID og tilgår gemt hukommelse, når den korrekte autentifikationsnøgle er tilgængelig. Denne artikel forklarer RC522 pinout, specifikationer, understøttede tags, læse/skrive process, Arduino og ESP32 forbindelser, eksempel kode, målt rækkevidde, almindelige problemer og moderne NFC alternativer.

Figur 1. RC522
![]()
RC522
NXP
RC522 NXP
In Stock: 11386 pcs
RFID Modul

Figur 2. RC522
![]()
RC522
NXP
RC522 NXP
In Stock: 11386 pcs
Pinout
| Stift |
Navn |
Funktion |
| 1 |
VCC |
Forsyner strøm til modulet. Tilslut det til en reguleret 3,3 V forsyning. Tilslut det ikke direkte til 5 V. |
| 2 |
RST |
Nulstiller og aktiverer modulet. Tilslut det til en digital GPIO-pin på mikrokontrolleren. |
| 3 |
GND |
Forsyner jorden forbindelse. Tilslut det til mikrokontrollerens GND-pin. |
| 4 |
IRQ |
Sender et interrupt signal, når en konfigureret RFID hændelse opstår. Det bruges normalt ikke i grundlæggende projekter. |
| 5 |
MISO/SCL/TX |
Sender data fra RC522 til mikrokontrolleren i SPI-tilstand. Det kan også fungere som SCL for I²C eller TX for UART. |
| 6 |
MOSI |
Sender kommandoer og data fra mikrokontrolleren til RC522 i SPI-tilstand. |
| 7 |
SCK |
Forsyner kloksignal, der bruges til at synkronisere SPI kommunikation. |
| 8 |
SS/SDA/RX |
Vælger RC522 under SPI kommunikation. Det kan også fungere som SDA for I²C eller RX for UART. |
De fleste blå RC522 breakout boards er konfigureret til SPI. MFRC522 IC understøtter også I²C og UART, men brug af disse interfaces kan kræve board-specifikke lodde-jumper eller remskift. Tjek modul-skematikken, før du forsøger en I²C eller UART forbindelse.
| Specifikation |
Værdi |
| Læser IC |
NXP MFRC522 |
| Driftsfrekvens |
13,56 MHz |
| Understøttet kontaktløs standard |
ISO/IEC 14443 A, MIFARE, og NTAG |
| MFRC522 driftsforsyning |
2,5–3,3 V |
| Maksimal VDDA, VDDD og TVDD forsyning |
3.6 V |
| Vært interfaces |
SPI, I²C-bus og seriell UART |
| Maksimal SPI datahastighed |
10 Mbit/s |
| Maksimal I²C datahastighed |
400 kBd i hurtig tilstand; 3400 kBd i højhastighedstilstand |
| Maksimal seriell UART datahastighed |
1228.8 kBd |
| Maksimal kontaktløs overførselshastighed |
848 kBd |
| Typisk drift afstand |
Op til 50 mm i læse/skrive tilstand, afhængig af antennestørrelse og tuning |
| FIFO buffer |
64 bytes til sendende og modtagende data |
| Hard power-down strøm |
5 µA maksimum |
| Soft power-down strøm |
10 µA maksimum med RF-niveau detektor aktiveret |
| CRC behandling |
Integreret CRC co-processor |
| Timer |
Programmerbar intern timer |
| Interrupts |
Fleksible interrupt tilstande |
| Selvtest |
Integreret intern selvtest |
| Ekstern krystal frekvens |
27.12 MHz |
| Modul antenne |
Typisk en integreret PCB antenne; board-specifik snarere end en MFRC522 IC specifikation |
Bemærk: NXP angiver MFRC52202HN1 som udgået og anbefaler CLRC663 plus til nye læserdesigns.
Reference: NXP Semiconductors, MFRC522 - Standard ydeevne MIFARE og NTAG frontend, produktdatablad, rev. 3.9, 27. april 2016, dokumentnummer 112139.
RC522
![]()
RC522
NXP
RC522 NXP
In Stock: 11386 pcs
læser og skriver 13.56 MHz ISO/IEC 14443 Type A kort og tags. Det fungerer bedst med MIFARE Classic Mini, 1K og 4K produkter. MFRC522 understøtter disse produkter på RF-niveau, men tilgængelige læse-, skrive- og beskyttelsesfunktioner afhænger af tagget og softwarebiblioteket.
Den kan ikke læse 125 kHz tags, ISO/IEC 14443 Type B, FeliCa, ISO/IEC 15693 eller UHF tags. Beskyttede kort kan tillade UID-detektion, men blokere adgang til deres gemte data. RC522 understøtter heller ikke normal kommunikation med NFC-smartphones.
Processen begynder, når mikrocontrolleren beder RC522
![]()
RC522
NXP
RC522 NXP
In Stock: 11386 pcs
om at scanne efter et tag. Efter at et kompatibelt passivt tag reagerer, udfører læseren antikollision for at adskille flere svar, opnår taggets UID og vælger et tag til kommunikation.

Figur 3. RC522 Tag Detektion, Godkendelse og Data Læs/Skrive Proces
Før der fås adgang til beskyttet hukommelse, godkender læseren ved hjælp af den korrekte sektor nøgle. En læseoperation overfører data fra den valgte blok til mikrocontrolleren, mens en skriveoperation sender nye data til blokken og kontrollerer, om tagget accepterede det. RC522 rapporterer derefter, om operationen lykkedes eller fejlede.
Arduino Uno og ESP32 kommunikerer med RC522
![]()
RC522
NXP
RC522 NXP
In Stock: 11386 pcs
gennem SPI, men de bruger forskellige pins og logikniveauer. Installer MFRC522-biblioteket gennem Arduino Library Manager, inden du uploader UID-læsemappen i sektion 5.3.
Biblioteket er frosset og modtager kun sporadisk vedligeholdelse. Det understøtter MIFARE Classic kort, men NTAG og MIFARE Ultralight støtte er delvis. Det understøtter ikke I²C, UART, MIFARE DESFire godkendelse, smartphone kommunikation eller kort emulering.
Arduino Uno kommunikerer med RC522 gennem SPI. Forse modulet med 3.3 V og tilslut begge enheder til en fælles jord. Fordi Uno producerer 5 V GPIO-udgange, skal SDA/SS, SCK, MOSI og RST gå gennem en 5 V-tolerant logikbuffer drevet fra 3.3 V. På almindelige RC522 boards fungerer SDA-pinnen som SS eller chipvalg i SPI-tilstand.

Figur 4. Arduino Uno og RC522 SPI Wiring
| RC522 Pin |
Arduino Uno-forbindelse |
Funktion |
| SDA/SS |
D10 gennem logikbuffer |
Chip valg |
| SCK |
D13 gennem logikbuffer |
SPI klok |
| MOSI |
D11 gennem logikbuffer |
Data sendt til RC522 |
| MISO |
D12 direkte |
Data returneret til Arduino |
| RST |
D9 gennem logikbuffer |
Læser nulstilling |
| GND |
GND direkte |
Fælles jord |
| 3.3 V |
3.3 V direkte |
Modul strøm |
| IRQ |
Ikke tilsluttet |
Polling bruges |
En direkte MISO-forbindelse fungerer typisk, men en opadgående niveau skifter giver strengere worst-case-kompatibilitet. Unos 3.3 V-pin er begrænset til 50 mA. Hvis modulet bliver ustabilt, skal du bruge en ekstern reguleret 3.3 V-strømforsyning med dens jord forbundet til Arduino-jorden.
ESP32 og RC522 bruger 3,3 V logik, så en niveauomformer er normalt unødvendig. RST er tilsluttet GPIO 22, hvilket undgår GPIO 0, da GPIO 0 påvirker ESP32 boot-tilstand. Disse forbindelser gælder for den klassiske ESP32 DevKit; andre ESP32-varianter kan bruge forskellige SPI-pins.

Figur 5. ESP32 og RC522 SPI-forbindelser
| RC522 |
ESP32 |
| SDA/SS |
GPIO 5 |
| SCK |
GPIO 18 |
| MOSI |
GPIO 23 |
| MISO |
GPIO 19 |
| RST |
GPIO 22 |
| GND |
GND |
| 3.3 V |
3.3 V |
| IRQ |
Ikke tilsluttet |
ESP32-specifikke indstillinger brugt af den delte skitse er:
const byte SS_PIN = 5;
const byte RST_PIN = 22;
Serial.begin(115200);
SPI.begin(18, 19, 23, SS_PIN);
Den følgende skitse vælger automatisk pin-tilordningerne og SPI-initieringen for en Arduino Uno eller klassisk ESP32. Åbn Serial Monitor ved 9600 baud for Uno eller 115200 baud for ESP32.
#include
#include
#if defined(ARDUINO_ARCH_ESP32)
const byte SS_PIN = 5;
const byte RST_PIN = 22;
const unsigned long SERIAL_BAUD = 115200;
#else
const byte SS_PIN = 10;
const byte RST_PIN = 9;
const unsigned long SERIAL_BAUD = 9600;
#endif
MFRC522 reader(SS_PIN, RST_PIN);
void setup() {
Serial.begin(SERIAL_BAUD);
#if defined(ARDUINO_ARCH_ESP32)
SPI.begin(18, 19, 23, SS_PIN);
#else
SPI.begin();
#endif
reader.PCD_Init();
Serial.println("Placer et kompatibelt RFID-tag tæt på læseren.");
}
void loop() {
if (!reader.PICC_IsNewCardPresent() ||
!reader.PICC_ReadCardSerial()) {
return;
}
Serial.print("Kort UID:");
for (byte i = 0; i
Serial.print(reader.uid.uidByte[i]
Serial.print(reader.uid.uidByte[i], HEX);
}
Serial.println();
reader.PICC_HaltA();
delay(500);
}
RC522 er en læser, ikke et komplet sikkerhedssystem. Et tags UID identificerer tagget, men bør ikke betragtes som en hemmelig adgangskode, da kompatible enheder kan kopiere eller emulere det. Derfor er UID-ensystemer ikke egnede til betalinger, sikker adgangskontrol eller andre applikationer, hvor efterligning kan forårsage alvorlig skade.
Sikkerhed afhænger også af kortteknologien. MIFARE Classic bruger den forældede Crypto1-kryptering, som forskere har vist er sårbar over for praktiske nøglegendannelses- og hukommelsesadgangsangreb. Standardnøgler og nøgler, der er gemt uden beskyttelse i mikrocontrollerens firmware, skaber yderligere risici. RC522 er velegnet til læring og lavrisikoidentifikation, men følsomme systemer bør bruge en kompatibel læser og kort med moderne gensidig autentificering, AES-kryptering, sikker beskedudveksling og beskyttet nøgleopbevaring, såsom passende MIFARE DESFire eller MIFARE Plus-produkter.
NXP MFRC522 datasheet angiver en typisk læse/skrive afstand på op til 50 mm, afhængig af antennestørrelse og tuning. Dette er ikke en garanteret rækkevidde for hver RC522
![]()
RC522
NXP
RC522 NXP
In Stock: 11386 pcs
-modul. Tagdesign, antennejustering, forsyningsspænding, elektrisk støj og nærliggende metal kan påvirke den faktiske afstand.
Wijanarko et al. (2025) testede en ESP32-baseret adgangskontrolprototype ved brug af et RC522-modul og et MIFARE Classic 1K-kort.
| Test Detalje |
Oplysninger Rapporteret |
| Læser |
RC522 modul; PCB og MFRC522 chipversioner er ikke angivet |
| Tag |
MIFARE Classic 1K kort |
| Forsynings spænding |
Anført som 3,3 V, men spænding under test blev ikke målt eller dokumenteret |
| Antenne orientering |
Ikke rapporteret |
| Forsøg pr. afstand |
Ikke rapporteret |
| Succeshyppighed |
Ikke rapporteret som procentdel |
| Svar tid |
Beskrevet kvalitativt; ingen målte tider blev angivet |
| Afstand |
Studie-rapporteret resultat |
| 1 cm |
Succesfuld; beskrevet som meget hurtig |
| 2 cm |
Succesfuld; beskrevet som meget præcis |
| 3 cm |
Succesfuld; respons beskrevet som lidt langsommere |
| 4 cm |
Succesfuld; beskrevet som inden for det optimale område |
| 5 cm |
Succesfuld; rapporteret som den stabile afstandsgrænse |
| 6 cm |
Fejlet |
Prototypen registrerede kortet på afstande fra 1 til 5 cm og fejlede ved 6 cm. Studien rapporterede dog ikke om gentagne forsøg, numeriske succesrater, målte svartider eller antenneorientering. Derfor beskriver disse fund kun denne prototype og bør ikke præsenteres som en universel pålidelighedsvurdering af RC522.
Reference: Wijanarko, Y., Alfarizal, N., og Pratama, M. R. (2025). “Implementering af et RFID RC522 og IoT-baseret automatiseret dør-sikkerhedssystem i et elektrisk ingeniørlaboratorium.” Indonesisk Journal of Artificial Intelligence and Data Mining, 8(2), 478–488.
Tan et al. (2018) udviklede et universitets deltagelsessystem ved hjælp af en RFID-RC522
![]()
RC522
NXP
RC522 NXP
In Stock: 11386 pcs
-læser, NodeMCU-controller, Wi-Fi og kompatible 13,56 MHz campuskort. Studerende scannede deres kort ved klasseværelsesindgangen, og en mobilapplikation bekræftede, at cloud-databasen modtog hver deltagelsespost. I en klasseværelsestest rapporterede deltagelsesprocenten en stigning fra 85 % til 98 %.
Papiret angav ikke størrelsen på deltagelsesprøven, testens varighed, antallet af klasse sessioner, læseafstand, scannings tid eller kortfejlfrekvens. Det manglede også en kontrolgruppe og vurderede en bredere platform, der indeholdt mobil-, QR-kode- og klasseværelsesinteraktionsfunktioner. Derfor kan stigningen ikke tilskrives RC522 alene.
Reference: Tan, P., Wu, H., Li, P., og Xu, H. (2018). “Undervisningsledelsessystem med anvendelser af RFID og IoT-teknologi.” Uddannelsesvidenskaber, 8(1), Artikel 26. DOI: 10.3390/educsci8010026.
Dewanto et al. (2021) byggede en offline betalingsprototype ved hjælp af en Arduino Uno, MFRC522-læser, LCD og microSD-kort. Det opdaterede elektroniske pengebeholdninger og gemte køb, opladninger og refusioner lokalt.
En 30-taps test opnåede 100 % kortregistreringssucces ved 1–3 cm og 0 % ved 4 cm. Læserens svartid ved 1–3 cm var 0,1–0,2 sekunder. Komplette transaktioner tog 1,4–2,0 sekunder med tilstrækkelig saldo, 0,5 sekunder med utilstrækkelig saldo og 0,3 sekunder for ikke-registrerede kort.
Papiret forklarede ikke klart, hvordan tapperne var distribueret, hvor mange kort der blev brugt, eller variationen mellem målingerne. Dets resultater baseret på stopwatch gælder kun for prototypen. Kloning af kort, nøglegendannelse, replay-angreb, og modstandsdygtighed mod manipulering blev ikke testet, så systemet blev ikke valideret til produktionsbetalingsbrug.
Reference: Dewanto, S. A., Munir, M., Wulandari, B., og Alfian, K. (2021). “Implementering af MFRC522 RFID-teknologi til konventionelle forhandlere med kontantløs betalingssystem.” Journal of Physics: Conference Series, 1737(1), 012012. DOI: 10.1088/1742-6596/1737/1/012012.
| Problem |
Diagnostisk test |
Løsning |
| Modulet registreres ikke |
Tjek for 3.3 V og kør PCD_DumpVersionToSerial(). |
Korrigér strøm, jord, SPI, SS og RST forbindelser. |
| Tag genkendes ikke |
Test det inkluderede 13.56 MHz-kort tæt på antennen. |
Brug et ISO/IEC 14443A-kompatibelt kort. RC522
|
| Læsning er ustabil |
Hold kortet parallelt med antennen og fjern nærliggende metal. |
Brug korte ledninger, stabil 3.3 V strøm og korrekt tagjustering. |
| Godkendelse mislykkes |
Bekræft korttype, sektor, blok og Nøgle A eller Nøgle B. |
Brug den korrekte MIFARE Classic-sektornøgle. |
| Data kan ikke skrives |
Test en ubrugt datablok og læs den tilbage. |
Tjek adgangstilladelser og undgå blok 0 eller sektorreklamer. |
| Læser stopper efter et kort |
Fjern kortet og præsenter det igen. |
Afslut sessionen med PICC_HaltA() og PCD_StopCrypto1(). |
| Læser fejler når en motor aktiveres |
Afbryd motoren eller relæet og test igen. |
Brug separat strømfiltrering og flyback-beskyttelse. |
| Enhed |
NFC Tilstande |
Smartphone Support |
Vært Interface |
Understøttede Standarder |
Produkt Status |
Anbefalet Anvendelse |
| MFRC522 |
Læser/skriver kun |
Begrænset; ingen peer-to-peer eller kortemulerings tilstande, og det almindelige Arduino bibliotek understøtter ikke smartphone kommunikation |
SPI, I²C eller seriel UART |
ISO/IEC 14443A, MIFARE og NTAG |
Udsalg; NXP anbefaler CLRC663 Plus |
Eksisterende lavpris Arduino og ESP32 projekter, der bruger kompatible kort eller tags |
| PN532
|
Læser/skriver, kortemulering og NFCIP-1 peer-to-peer |
Ja, når det understøttes af smartphone operativsystemet og applikationen |
SPI, I²C eller højhastigheds UART |
ISO/IEC 14443A/B, MIFARE, FeliCa og ISO/IEC 18092 |
Ikke anbefalet til nye designs; NXP anbefaler PN7160 |
Vedligeholdelse af ældre NFC-projekter, der kræver flere NFC-tilstande |
| PN7160 |
Alle NFC Forum-tilstande: læser/skriver, kort emulering og aktiv eller passiv peer-to-peer |
Ja; understøtter læserinteraktion, kort emulering og peer-to-peer, selvom telefonens operativsystemer kan begrænse P2P |
I²C eller SPI ved brug af NCI 2.0 |
NFC Forum tagtyper 1–5, ISO/IEC 14443A/B, MIFARE Classic, FeliCa og ISO/IEC 15693 |
Aktiv |
Nye indlejrede og IoT-produkter, der kræver fuld NFC-understøttelse; ikke beregnet til EMVCo betalingsoverholdelse |
| CLRC663 Plus |
Multi-protokol læser/skriver og ISO/IEC 18092 passiv initiator |
Begrænset til kommunikation fra læsersiden med kompatible telefoners kort-emuleringsmåder; kræver en værts protokolstack |
SPI, I²C eller UART |
ISO/IEC 14443A/B, MIFARE, NTAG, FeliCa, ISO/IEC 15693 og ISO/IEC 18000-3 Mode 3 |
Aktiv; anbefalet MFRC522 erstatning |
Højtydende adgangskontrol-, industri-, spil- og multi-protokol læser designs |
PN532 anbefales ikke til nye designs. NXP anbefaler PN7160 som erstatning. PN7160 understøtter alle NFC Forum-tilstande, men tilgængeligheden af peer-to-peer afhænger stadig af softwarestacken og smartphone-operativsystemet.
Gem den sidste UID og scannings tid, og ignorer derefter gentagne scanninger inden for en valgt forsinkelse. For bedre kontrol skal kortet forlade RF-feltet, før det accepteres igen.
Opbevar UID-længden sammen med hver rå byte, fordi UIDs kan indeholde 4, 7 eller 10 bytes. Undgå at konvertere dem til et almindeligt heltal, da det kan fjerne førende nuller eller overskride den tilgængelige talstørrelse.
Kortet indeholder 1.024 bytes opdelt i 16 sektorer. Efter at have udelukket producentblokken og sektortrailere, er der cirka 752 bytes tilbage i normale datablocks.
Hardwaren kan kommunikere med kompatible NTAG-produkter, men NDEF-håndtering afhænger af softwarebiblioteket. Programmet skal forstå NFC Type 2-hukommelsesstrukturen, TLV-felter og NDEF-poster-formatet i stedet for at behandle tagget som almindelig rå hukommelse.
CAP CER 56PF 50V C0G/NP0 0805
DC DC CONVERTER 3.3V 1W
IC BATT FUEL GAUGE LI-ION 12SON
IC POWER MANAGEMENT
BD9275F-GE2 ROHM
AT91SAM7S128-AU ATMEL
MC13747BFR2 MOT
LMX339HAUD MAXIM
IC OPAMP DIFF 1 CIRCUIT 8MSOP
ST BGA
OKI QFP80P
MURATA New






