Inhalt in diesem Artikel behandelt:
1: Einführung in den RC522 -Sensor
Der MFRC522 ist ein rFID -basiertes kontaktloses IC, das Daten mit einer Häufigkeit von 13 lesen und schreiben kann.56 MHz. Es ist für eine einfache Integration in eine Vielzahl von Anwendungen ausgelegt, einschließlich Zugriffskontrollsystemen, Zahlungsanschlüssen und anderen Systemen, für die sichere drahtlose Kommunikation erfordern.
Der Sensor verfügt über ein Design mit geringem Stromverbrauch und entspricht dem ISO/IEC 14443 A/MIFARE -Standard, mit dem er mit einer Vielzahl kontaktloser Karten und Tags kommunizieren kann.
Darüber hinaus verfügt das MFRC522 über eine eingebaute Antenne, die es zu einer bequemen und kompakten Lösung zum Hinzufügen von kontaktlosen Kommunikationsfunktionen zu einem Projekt macht.
2: RC522 -Sensor -Pinout
Der Sensor verfügt über insgesamt 8 Stifte, die ihn mit einem Mikrocontroller oder einem anderen Steuergerät verkürzen. Die Pinout des MFRC522 -Sensors lautet wie folgt:
Der SDA, Sck, Mosi, Und Miso Stifte werden verwendet, um den MFRC522.
Der Irq PIN kann verwendet werden, um einen Interrupt zu generieren, wenn bestimmte Ereignisse auftreten, z.
Der GND Pin verbindet sich mit dem Boden des Stromkreises und der RST Pin wird zum Zurücksetzen des Sensors verwendet.
Endlich, das 3.3v Pin wird verwendet, um dem Sensor Strom zu liefern.
Es ist wichtig zu beachten, dass diese PIN -Namen je nach spezifischem Modul geringfügig variieren können. Daher ist es immer am besten, das Datenblatt des Herstellers für die richtigen Pinout -Informationen zu konsultieren.
3: Schnittstellen von RC522 RFID -Sensor mit Arduino uno
Schnittstellen des MFRC522 -Sensors mit einem Arduino -Mikrocontroller ist ein einfacher Prozess, der mit der MFRC522 -Bibliothek durchgeführt werden kann, die frei zum Download zur Verfügung steht. Diese Bibliothek bietet eine benutzerfreundliche Funktion für den Zugriff auf die Funktionalität des Sensors, einschließlich Funktionen zum Lesen und Schreiben von Daten in kontaktlose Karten und Tags.
Sobald die Bibliothek installiert ist. In der Skizze ist es wichtig, die korrekten Pin -Verbindungen zwischen Arduino und dem MFRC522 -Sensor wie den SPI.
Mit der richtigen Verkabelung und der ordnungsgemäßen Bibliothek kann der Arduino mit dem MFRC522 -Sensor kommunizieren und die gewünschten Aktionen wie Lesen und Schreiben auf Karten und Tags ausführen.
3.1: Schema
RC522 Schematisches Bild mit Arduino Uno ist unten gezeigt:
3.2: Installation der erforderlichen Bibliotheken
Die MFRC522 -Bibliothek ist zum Lesen der RFID -Karte und den Tags erforderlich Uid. Öffnen Sie die IDE, gehen Sie zum Bibliotheksmanager und suchen Sie nach der MFRC522 -Bibliothek. Installieren Sie die Bibliothek in Arduino IDE:
Nach der Installation der MFRC522 -Bibliothek lesen wir die UID für RFID -Tags und Karten.
3.3: Die UID für RFID -Karte/Tag erhalten
Öffne das DumpInfo Beispiel für MFRC522 -Sensor. Gehe zu: Datei> Beispiele> MFRC522> DUPPINFO:
Der folgende Code wird in einem neuen IDE -Fenster geöffnet. Laden Sie den Code in Arduino Uno hoch. Denken Sie daran, den Rücksetz- und Slave -Auswahl -PIN gemäß Ihrem Arduino -Board festzulegen. Jeder der digitalen Arduino -Stifte kann als festgelegt werden RST Und Ss:
Nach dem Hochladen von Code auf Arduino Uno. Berühren und halten Sie die RFID -Karte/das Tag mit MFRC522 -Sensor:
Der Sensor liest die im RFID -Tag gespeicherten Daten und zeigt sie auf dem seriellen Monitor an. Hier können wir das sehen Uid Für RFID -Tag mit Angabe 02 DC B4 C3.
Insgesamt 16 (0-15) Sektoren, in denen Rfid Karten-/Tag -1K -Speicher sind organisiert. In jedem dieser 16 Sektoren sind vier (0-3) Blöcke enthalten. Jeder Block verfügt über die Fähigkeit, 16 (0-15) Datenbytes zu speichern.
Diese Daten stellt das dar:
16 Sektoren x 4 Blöcke x 16 Bytes von Daten = 1024 Bytes = 1k Speicher
Der serielle Monitor von Arduino IDE zeigt uns die Verteilung von 1K -Speicher des RFID -Tags. Diese Verteilung enthält auch die Sektoren, Blöcke und Dateninformationen in Zeilen und Spalten der Ausgabedaten:
Sie können auch die eindeutige ID lesen (Uid) für die Karte am Ende der Ausgabe:
4: Lesen eines RFID -Tags mit Arduino Uno
Jetzt haben wir die eindeutige ID (UID) für RFID -Tag gelesen. Wir schreiben einen Arduino -Code, der diese Karteninformationen speichert und dem Benutzer Zugriff gewährt, wenn das RFID -Tag mit demselben UID mit dem MFRC522.
4.1: Code
Öffnen Sie die IDE, wählen Sie UNO -Board und laden Sie den angegebenen Code hoch:
/*Der Code begann mit der SPI- und MFRC522 -Bibliothek. Als nächstes haben wir den Reset- und Slave Select Pin für den Sensor definiert. Eine LED am Pin D8 wird als Ausgang initialisiert.
Die RFID -Karte, die wir lesen möchten, wird durch Definieren der UID initialisiert. Dies ist die gleiche UID, die wir mit dem erhalten haben DumpInfo Beispielcode.
Ein WENN Der Zustand überprüft die UID auf die Karte, die mit dem Sensor abgebildet ist. Wenn die UID mit der in der Code -LED übereinstimmenden und autorisierten Zugriffsnachricht übereinstimmt, bleibt die LED ausgeschaltet und der Zugriff verweigert wird angezeigt, wenn eine andere Karte abgebildet ist.
4.2: Ausgabe
In der Ausgabe können wir sehen, dass das RFID -Tag nicht mit dem MFRC522 -Sensor abgebildet ist, sodass keine LED eingeschaltet ist:
Berühren Sie oder bringen Sie die RFID -Karte/das nach der Ausgabe in die Nähe des Sensors mit. Auf dem seriellen Monitor werden die Karten -UID angezeigt:
LED wird eingeschaltet, wenn der Zugang gewährt wird und UID mit dem, den wir im Code definiert haben, übereinstimmen.
Wir haben die Schnittstelle des RFID -Tags mit dem RC522 -Sensor mit Arduino Uno Board und IDE abgeschlossen.
Abschluss
Arduino ist eine Kompaktplatte mit einer Reihe von GPIO -Stiften, die Schnittstellensensoren und Hardware. Arduino hat eine integrierte Unterstützung für UART-, SPI- und I2C-Protokoll, die die Verwendung von Sensoren mit diesen Arduino-Kommunikationsprotokollen ermöglicht. Dieser Artikel deckt die Arduino uno -Schnittstelle mit RC522 -Sensor und Code ab, das zum Lesen einer RFID -Karte/des Tags erforderlich ist.